Most portfolios drift. You build a 50/50 equity-debt split. Six months later, equities have outperformed and your portfolio is 60/40. A year in, it's 65/35. You never rebalanced, so you're systematically more exposed to equities than your risk model allowed. The question isn't whether to rebalance | it's how to rebalance efficiently without giving all your alpha to fees.
Why rebalancing matters more than stock selection
Drift sounds academic. It's not. Return attribution studies from Vanguard and Morningstar show rebalancing adds 0.5 to 1.5% annually to risk-adjusted returns | not because rebalancing is magic, but because it forces you to buy cheap (underperforming assets) and sell expensive (outperforming assets). It's the systematic enforcement of "buy low, sell high."
For systematic strategies, rebalancing isn't optional. You coded a model that says "hold 8% in INFY, 6% in TCS, 4% in Axis Bank." After 6 weeks of trading, those positions have drifted to 9.2%, 5.1%, and 2.8%. Your rebalance is the only mechanism that enforces the model's original intent. Without it, you're just running yesterday's signals.
Types of rebalancing:
- Calendar-based: Rebalance on a fixed schedule | monthly, quarterly, or annually. Simple, predictable costs. You know exactly when trades execute.
- Threshold-based: Rebalance when any position drifts beyond a tolerance (e.g., a 20% target position growing to 24% triggers a rebalance). Responds to actual drift but unpredictable timing.
- Hybrid: Quarterly check-in date + threshold. Only rebalance if drift exceeds tolerance on your check date. Best balance of cost control and responsiveness.
Example | a 20-stock equal-weight portfolio: Each stock should be 5% (1/20). After 12 weeks without rebalancing, winner stocks might be 6.8%, loser stocks might be 3.2%. The portfolio hasn't drifted to a catastrophic allocation, but you've lost the "equal weight" discipline. The winners are now overweight; losers, underweight. Rebalancing forces you to trim winners, buy losers.
Calendar vs threshold vs hybrid | which works best?
Calendar-based (monthly): High frequency means tight drift control. You never let positions drift more than 1 month's worth. Cost: ~12 rebalance events per year. On a ₹50L portfolio with 0.35% cost per rebalance, you're spending ₹21k per year in trading friction. Return impact: substantial if expected alpha is only 2 to 3%.
Calendar-based (quarterly): Four rebalance events per year. Drift tolerance: positions can drift up to 3 months. Cost: ~₹7k per year (same ₹50L portfolio). This is the sweet spot for most retail systematic traders. Responsive enough to prevent major drift, cheap enough not to destroy alpha.
Calendar-based (annual): Lowest cost. One rebalance day per year. But over 12 months, drift can compound significantly. Your 5% target position can drift to 7 to 8% uncontrolled. Most aggressive strategies can't tolerate this.
Threshold-based (5% drift trigger): Rebalance whenever any position drifts 5% from target. Responsive. Cost varies wildly depending on volatility. High volatility = many rebalances = high costs. Low volatility = few rebalances = savings. Problem: you can't budget rebalancing costs accurately, which breaks position sizing math.
Hybrid (quarterly check + 7% drift): Check your portfolio every quarter. If any position has drifted more than 7% from target, rebalance. Otherwise, hold. This is what RupeeCase uses internally. It catches major drift (preventing risk creep) while staying cost-efficient.
Research: Vanguard and Morningstar studies show quarterly rebalancing outperforms monthly and annual on risk-adjusted basis, primarily because it reduces over-trading while staying responsive.
The rebalancing cost budget
Every rebalance costs money. Three sources:
- Transaction costs: STT (0.1% for equities), exchange charges (~₹0.01 per order), SEBI fees (~₹10), brokerage (typically 0.01 to 0.05%). Combined: roughly 0.15 to 0.3% depending on broker and order size.
- Impact cost: Your large rebalance order moves the market. You exhaust top-of-book and execute at worse prices. Typically 0.1 to 0.5% depending on portfolio size and stock liquidity.
- Tax on realized gains: If you sell winners, you realize capital gains. Short-term (within 1 year) taxed as income. Long-term (>1 year) get indexation or 20% rate depending on asset. This can exceed trading costs.
Cost budget rule: If rebalancing costs exceed 0.3% of AUM per event, your strategy's alpha margin is shrinking. On a ₹50L portfolio rebalancing quarterly:
- 0.3% × ₹50L = ₹15k cost target per rebalance
- 4 rebalances per year = ₹60k annual cost
- If your expected alpha is 6%, that's ₹30k annually. Half your alpha goes to fees.
Tax-aware rebalancing: Sell losers first (harvesting tax loss). Defer selling winners if they're near the 12-month mark (holding for long-term capital gains status). This is TLH (Tax Loss Harvesting) | covered in depth in Module 11.3. For now: rebalancing order matters. Systematic traders often sequence sells to minimize tax drag.
What to monitor between rebalances
The hardest part of managing a systematic portfolio is restraint. You don't check it daily. Here's what to actually track:
- Daily: Nothing. Avoid the urge. You're systematic, not reactive.
- Weekly: Heat check. Is any single position now >15% of portfolio? This signals either huge gains (good) or a position that's drifted dangerously large (bad). Flag it.
- Monthly: Factor exposure review (if your strategy is factor-based | e.g., value, momentum, low-volatility). Are you exposed to the factors you intended? Sector concentration: is one sector now >30% of portfolio?
- Exception triggers: Corporate action (merger, delisting, bonus). Circuit limit hit (stock halted from trading). SEBI regulatory change (allocation rules change, leverage limits cut). Handle these immediately | don't wait for rebalance day.
Alerts to set:
- Any position down >20% from entry | investigate what happened
- Portfolio drawdown >maximum historical drawdown from backtest | STOP. Investigate whether market regime has changed
- Sector concentration >30% | rebalance early if threshold-based, or flag for next calendar rebalance
Personal practice: I check my systematic portfolio exactly 4 times per year. On rebalance day. That's it. I set alerts for the exception triggers above, but I don't look at it in between. The math works if you trust the model. If you don't trust it, fix the model | don't second-guess it via daily monitoring.
Execution mechanics on rebalance day
Morning (pre-market): Generate rebalance orders from your model. Calculate target weights, current weights, required trades (buys/sells).
Sequence: Sell orders first. Free up capital for buys. Under T+1 settlement, sold cash isn't available until next day morning, so order sequencing matters.
Order type & timing: Use limit orders, not market orders. Set limits at +0.5% for large-cap (±0.5% buffer from current price), +1% for mid-cap, +1.5% for small-cap. This accounts for normal intra-day spreads without being too tight. Avoid first 15 minutes of trading (opening volatility) and last 10 minutes (closing auction). 9:30 AM to 3:15 PM is your window.
If an order doesn't fill: Leave it for Day 2. Don't chase with market orders. If it's still not filled by Day 2 close, re-evaluate whether the position size is realistic for your portfolio.
For large portfolios (>₹1Cr AUM): Spread rebalance over 2 to 3 days. Execute top-3 trades on Day 1, next 3 on Day 2, etc. Reduces impact cost. Coordination: handle corporate actions (ex-date adjustments, bonus splits) before generating rebalance orders | you don't want to rebalance around ex-dates.
RupeeCase Terminal: Automated rebalance execution with these rules built in. You approve the rebalance, terminal executes sequenced limit orders across multiple sessions as needed.
Execution checklist: (1) Generate orders from model. (2) Sell first, buys second. (3) Limit orders only. (4) Avoid first 15 min, last 10 min. (5) 2-3 day spread for large portfolios. (6) Leave unfilled orders for Day 2 | don't chase.
Tracking performance: the right metrics
How do you know if your rebalancing strategy is working? Most traders track the wrong metrics. Here's what matters:
- XIRR (not absolute return): If your portfolio has multiple deposits/withdrawals (SIPs mixed with lumpsum), XIRR accounts for timing. Money-weighted return is the true measure of strategy performance.
- Time-weighted return: If you want to compare your strategy to a benchmark (Nifty), use TWR to remove the effect of your own cash flows. This shows pure strategy alpha.
- Sharpe ratio: Return per unit of volatility. Minimum 0.5 for a systematic strategy to be worth running (your time + effort + costs must justify the risk). Ideal: >1.0.
- Maximum drawdown: If live portfolio Max DD exceeds backtest Max DD by >50%, your assumptions are breaking. Example: backtest Max DD was 12%, live portfolio hit 19% | stop. Investigate.
- Turnover: What % of your portfolio did you trade in a year? High turnover (>150%) suggests you're overtrading. Low turnover (<30%) on a systematic strategy might mean your signals are too slow.
- Tracking error vs benchmark: If your strategy is supposed to beat Nifty by 2%, and actual tracking error is 5%, you're either taking extra risk or the strategy is broken.
Monthly scorecard to build:
- Portfolio NAV
- XIRR (month-to-date, YTD, since-inception)
- Sharpe ratio (annualized)
- Max drawdown (from portfolio high)
- Turnover (% traded this month)
- Rebalancing cost (INR) + % of AUM
- Deviation from benchmark (if applicable)
Review this scorecard after every rebalance. The scorecard forces you to see patterns. "I rebalanced 4 times, each cost ₹25k, but XIRR is 5% | this strategy isn't worth it." Or: "Rebalance costs look high, but Sharpe is 1.2 | this is working."
Why I wrote this module
Sources & further reading
Quick check, Module 10.5
Drift Threshold Trigger
Threshold rebalancing fires when a position drifts past a band, not on a fixed calendar. Useful for low-turnover, tax-aware portfolios.