The rules
Buy a sector ETF when it closes below its lower Bollinger Band (20-day SMA minus 2 standard deviations); sell when it closes back above the 20-day SMA.
- Universe
- XLB, XLE, XLF, XLI, XLK, XLP, XLU, XLV and XLY
- Bars
- daily
- Position size
- Equal weight across holders, max 25% each
- On Orbital
- 25% of equity per ETF, up to four
- Rebalance
- daily
Results
| Measure | Orbital re-test | Published | SPY, same days |
|---|---|---|---|
| Window | Oct 31, 2016 to Oct 30, 2026 | 2000-2025 | Oct 31, 2016 to Oct 30, 2026 |
| Total return | +109.89% | +486.52% | +316.62% |
| CAGR | +7.70% | +7.04% | +15.35% |
| Sharpe | 0.29 | 0.42 | 0.65 |
| Discounted Sharpe | −0.71 | — | — |
| Max drawdown | −39.9% | −35.2% | −33.7% |
| Win rate | 74.5% | 59.8% | — |
| Profit factor | 2.11 | 1.96 | — |
| Trades | 310 | — | — |
Hypothetical: a backtest with modeled costs, not traded with real money.
Hypothetical growth of $10,000
W21 Bollinger Reversion · +109.9% vs SPY +316.6%
$10k$20k$40k20172019202120232025SPY
Rebuild it in Orbital
Paste this into Orbital Chat. The Strategy Developer builds the workflow and asks before it runs any backtest.
Trade the sector ETFs XLB, XLE, XLF, XLI, XLK, XLP, XLU, XLV and XLY on daily bars. Buy an ETF with 25% of equity when it closes below its lower Bollinger Band (20-day SMA minus 2 standard deviations), furthest below first, and sell it when it closes above the 20-day SMA. Long only; uninvested capital stays in cash. Backtest the last 10 years with $100,000.
Is it real?
- Strategies tested together
- 22
- Beta to SPY
- 0.60
- Alpha vs SPY
- −2.8% a year
- Costs paid
- $10,608, 9% of the gain before costs
- Data
- Daily bars, 2,514 sessions
- Fills
- Next open at market, sized at the fill
Read this before you trust it
Each position is 25% of equity, the original cap. When more than four sectors close below their lower band, the four furthest below are bought, where the original split the account among all of them. No rebalancing between trades.
Sources