The thesis
bollinger-reversion runs one of the oldest ideas in technical trading: buy when price closes below the lower Bollinger band, sell when it pushes above the upper band. It bets that extreme moves away from a rolling mean tend to snap back. The strategy trades a 24-name large-cap universe spanning tech (AAPL, MSFT, NVDA), financials (JPM, V, MA), staples (PG, KO, WMT, COST) and healthcare (JNJ, UNH), so it is diversified across sectors rather than concentrated in a single regime.
Backtest performance
On paper, the numbers look inviting. Over 451 days the strategy returned 17.55% (a 9.46% CAGR), turned $10,000 into $11,755, and won 63.89% of its 76 trades. The catch is the risk profile: a 20.57% maximum drawdown against a Sharpe of 0.66 means investors sat through a fifth-of-capital decline for returns that only modestly beat the volatility taken on. Turnover of 1,721% is high for a strategy holding these positions, though fees stayed negligible ($76 total, no FX cost).
Validation: the warning sign
This is where enthusiasm should cool. The walk-forward validation failed. At first glance the four folds all posted positive returns — a clean sweep — but the trend inside them is the real story:
| Fold | Return | Sharpe | Max DD |
|---|---|---|---|
| 1 | 7.67% | 1.78 | 7.06% |
| 2 | 1.42% | 0.25 | 20.56% |
| 3 | 0.77% | 0.20 | 6.66% |
| 4 | 0.40% | 0.14 | 11.19% |
The edge decays monotonically. The most recent out-of-sample window returned just 0.40% at a Sharpe of 0.14 — statistically indistinguishable from noise. The deflated Sharpe ratio of 0.342, which discounts for the 6 trials run, sits well below any confidence threshold even though the raw probabilistic Sharpe (0.814) looks healthier. In plain terms: the full-sample 17.55% was largely earned early, and the strategy has not reproduced that edge on unseen data.
Live activity: quietly stalled
The live account echoes the concern. The last executed trades were on 7 August 2026 (a CAT buy, a DIS rotation). Since then, six consecutive scheduled runs — 3 through 10 September — each report 0 executed, 2 rejected, with $2,752.28 sitting idle in cash. Portfolio value has drifted down over that window, from $9,740 to $9,570, keeping the account below its $10,000 starting line. The rejections suggest the strategy is finding candidate signals but failing risk or sizing checks, so it is neither deploying capital nor exiting cleanly.
Verdict
bollinger-reversion is a coherent, well-diversified implementation of a classic idea, and its win rate confirms the mean-reversion instinct has some merit. But the evidence points to an edge that was strongest in the 2024–25 fold and has thinned toward zero since. With validation failed, a 20% drawdown tolerance, and a live book that is stalled and slightly underwater, this strategy warrants close monitoring rather than added capital. The next question worth answering: are those recurring rejections a sizing bug worth fixing, or the risk layer correctly refusing a signal that no longer works?