Rebalancing is the process of bringing a portfolio back toward its intended weights after prices drift. If equities rally, a 60/40 stock-bond mix might become 70/30 without new decisions. Rebalancing sells winners and buys laggards (or the underweight sleeve) to match the plan.
Systematic strategies rebalance on a schedule or when thresholds are breached.
Why rebalance at all
- Risk control - Prevent one asset class from dominating exposure.
- Discipline - Enforces "buy low, sell high" relative to your policy, not emotions.
- Signal refresh - For ranked portfolios (momentum), rebalance is when new leaders enter.
Calendar vs threshold
| Method | How it works | Tradeoffs |
|---|---|---|
| Calendar | Trade monthly, quarterly, annually | Simple; may trade when drift is tiny |
| Threshold | Trade when weight drifts X% from target | Fewer trades; needs monitoring |
| Hybrid | Check monthly, trade only if drift > band | Common compromise |
More frequent rebalancing usually means higher turnover and costs.
How often is "right"?
There is no universal answer. Depends on:
- Volatility of holdings
- Transaction costs and spreads
- Tax status (taxable accounts may prefer less churn)
- Signal half-life (fast signals may need faster rebalance)
Research habit: compare annual, quarterly, and monthly in backtest with realistic costs rather than assuming daily is best.
Rebalancing and backtests
A backtest must specify:
- Rebalance dates (calendar or rule-based).
- Execution assumption (close vs intraday).
- Costs per trade.
Changing rebalance frequency alone can flip Sharpe rankings between two strategies.
Automation
Rules-based platforms execute rebalance logic on a clock. Operational checks:
- Were orders placed at the intended session time?
- Did partial fills leave weights off target?
- Are illiquid names skipped?
Paper trading helps validate scheduling before live capital.
Summary
Rebalancing is how static targets survive dynamic markets. Choose frequency and bands to match costs, taxes, and how fast your signal decays - then test those choices explicitly in backtests.
