Variations

Before you trust any backtest — including ours — look at this. We took the four most famous strategies, ran them with 9,393 different settings across 101 stocks, then scored every single one on years of market data the search had never seen.

Beat buy & hold on unseen data 21.3%

Only 86 of 404 best-in-class settings stayed ahead of simply buying and holding the stock. That low number is the finding — pick the winner out of a big search and you're usually picking an accident.

9,393settings tested
404best-of finalists
86still won on unseen data
101stocks
4,392days of history

Bollinger bands

Trade the band: buy the lower band, exit at the middle or upper.

26 of 101 beat buy & hold 25.7%

Donchian breakout

Buy an N-day high, sell an N-day low — the classic turtle breakout.

15 of 101 beat buy & hold 14.9%

Moving-average cross

Buy when the fast average crosses above the slow one, sell when it crosses back.

19 of 101 beat buy & hold 18.8%

RSI mean-reversion

Buy when RSI says oversold, sell when it says overbought.

26 of 101 beat buy & hold 25.7%
🏆 Winners only All finalists Bollinger bands Donchian breakout Moving-average cross RSI mean-reversion
StockStrategy & settings Strategy returnBuy & hold DifferenceSharpeWorst drop
MU Moving-average cross
fast 50 · slow 100
1,295% 1,082% +214 pts 1.38 -43% beat
META Moving-average cross
fast 10 · slow 75
244% 168% +76 pts 1.16 -27% beat
V RSI mean-reversion
period 5 · oversold 20 · overbought 60
116% 66% +50 pts 1.08 -13% beat
NFLX Moving-average cross
fast 10 · slow 150
197% 50% +147 pts 0.89 -29% beat
V Bollinger bands
period 20 · width 1.5
83% 66% +17 pts 0.86 -14% beat
PG Bollinger bands
period 30 · width 2.0
44% 34% +9 pts 0.80 -14% beat
PG RSI mean-reversion
period 14 · oversold 25 · overbought 80
71% 34% +37 pts 0.78 -19% beat
FCX RSI mean-reversion
period 5 · oversold 30 · overbought 80
201% 112% +89 pts 0.77 -40% beat
MA Bollinger bands
period 20 · width 1.5
70% 43% +27 pts 0.75 -18% beat
FDX Donchian breakout
entry 20 · exit 50
137% 59% +78 pts 0.75 -27% beat
DE Bollinger bands
period 50 · width 1.5
82% 69% +13 pts 0.75 -24% beat
NEM Donchian breakout
entry 150 · exit 50
112% 99% +13 pts 0.75 -25% beat
HON RSI mean-reversion
period 14 · oversold 25 · overbought 70
61% 27% +34 pts 0.73 -13% beat
QCOM RSI mean-reversion
period 5 · oversold 25 · overbought 60
118% 82% +36 pts 0.72 -24% beat
ISRG Donchian breakout
entry 20 · exit 50
123% 71% +52 pts 0.72 -36% beat
O RSI mean-reversion
period 14 · oversold 25 · overbought 80
58% 32% +26 pts 0.72 -27% beat
UNP Bollinger bands
period 20 · width 1.5
57% 38% +20 pts 0.71 -15% beat
BAC Donchian breakout
entry 20 · exit 50
95% 67% +29 pts 0.71 -33% beat
MA RSI mean-reversion
period 5 · oversold 25 · overbought 80
74% 43% +32 pts 0.66 -23% beat
SLB RSI mean-reversion
period 7 · oversold 30 · overbought 80
125% 108% +17 pts 0.66 -32% beat
NFLX Donchian breakout
entry 55 · exit 50
114% 50% +64 pts 0.66 -22% beat
VZ Bollinger bands
period 50 · width 1.5
49% 12% +37 pts 0.66 -25% beat
PLD Donchian breakout
entry 20 · exit 30
76% 63% +13 pts 0.66 -31% beat
SBUX RSI mean-reversion
period 7 · oversold 20 · overbought 70
70% 6% +64 pts 0.66 -32% beat
UPS RSI mean-reversion
period 5 · oversold 30 · overbought 80
79% -17% +96 pts 0.62 -24% beat
INTC RSI mean-reversion
period 14 · oversold 30 · overbought 80
134% 109% +25 pts 0.60 -56% beat
SBUX Bollinger bands
period 20 · width 1.5
61% 6% +55 pts 0.59 -26% beat
O Bollinger bands
period 50 · width 1.5
34% 32% +2 pts 0.59 -19% beat
ISRG Moving-average cross
fast 5 · slow 100
71% 71% +0 pts 0.59 -37% beat
IWM Bollinger bands
period 30 · width 2.0
40% 36% +4 pts 0.55 -20% beat
AMZN RSI mean-reversion
period 5 · oversold 30 · overbought 80
79% 54% +24 pts 0.54 -43% beat
TSLA Moving-average cross
fast 10 · slow 50
91% 67% +24 pts 0.54 -50% beat
T Moving-average cross
fast 10 · slow 50
53% 40% +14 pts 0.53 -26% beat
CRM RSI mean-reversion
period 7 · oversold 30 · overbought 60
69% -26% +94 pts 0.53 -38% beat
FDX Moving-average cross
fast 40 · slow 200
60% 59% +0 pts 0.53 -27% beat
LOW Donchian breakout
entry 20 · exit 10
41% 33% +7 pts 0.52 -16% beat
D RSI mean-reversion
period 14 · oversold 25 · overbought 80
52% 17% +35 pts 0.50 -46% beat
MMM RSI mean-reversion
period 14 · oversold 30 · overbought 80
62% 22% +41 pts 0.50 -43% beat
PEP RSI mean-reversion
period 14 · oversold 25 · overbought 80
33% 24% +9 pts 0.49 -19% beat
HON Bollinger bands
period 30 · width 2.0
31% 27% +4 pts 0.48 -13% beat
HD Moving-average cross
fast 5 · slow 50
40% 29% +11 pts 0.48 -21% beat
BA Bollinger bands
period 20 · width 3.0
13% -12% +25 pts 0.48 -9% beat
D Moving-average cross
fast 50 · slow 150
36% 17% +19 pts 0.44 -28% beat
NEE RSI mean-reversion
period 14 · oversold 30 · overbought 80
41% 39% +2 pts 0.41 -41% beat
LOW RSI mean-reversion
period 5 · oversold 30 · overbought 80
35% 33% +2 pts 0.38 -33% beat
D Bollinger bands
period 50 · width 1.5
25% 17% +8 pts 0.38 -31% beat
DHR RSI mean-reversion
period 5 · oversold 30 · overbought 70
33% -7% +40 pts 0.37 -29% beat
APD Bollinger bands
period 20 · width 1.5
26% 17% +9 pts 0.35 -28% beat
NOW Moving-average cross
fast 20 · slow 100
24% -14% +37 pts 0.34 -42% beat
ABT Bollinger bands
period 50 · width 1.5
22% -19% +41 pts 0.33 -32% beat
BMY Bollinger bands
period 50 · width 1.5
21% 9% +12 pts 0.32 -25% beat
ADBE Moving-average cross
fast 40 · slow 150
23% -56% +79 pts 0.30 -37% beat
MMM Donchian breakout
entry 20 · exit 50
24% 22% +2 pts 0.29 -40% beat
UNH Bollinger bands
period 50 · width 1.5
22% 20% +2 pts 0.29 -47% beat
DIS Bollinger bands
period 30 · width 2.0
20% -46% +66 pts 0.29 -28% beat
INTU Donchian breakout
entry 40 · exit 50
17% -27% +44 pts 0.25 -38% beat
INTU Moving-average cross
fast 10 · slow 200
17% -27% +44 pts 0.25 -44% beat
CRM Bollinger bands
period 20 · width 1.5
14% -26% +40 pts 0.23 -32% beat
PFE Bollinger bands
period 20 · width 2.0
11% -5% +16 pts 0.22 -24% beat
TGT Donchian breakout
entry 20 · exit 30
9% -20% +29 pts 0.21 -49% beat
PYPL RSI mean-reversion
period 7 · oversold 20 · overbought 70
5% -43% +48 pts 0.19 -26% beat
BA Moving-average cross
fast 5 · slow 50
8% -12% +20 pts 0.18 -35% beat
PFE RSI mean-reversion
period 14 · oversold 20 · overbought 70
6% -5% +11 pts 0.15 -42% beat
CCI Donchian breakout
entry 55 · exit 10
5% -34% +39 pts 0.14 -26% beat
DHR Bollinger bands
period 50 · width 1.5
4% -7% +11 pts 0.13 -32% beat
PFE Donchian breakout
entry 20 · exit 50
2% -5% +7 pts 0.12 -50% beat
AMT RSI mean-reversion
period 5 · oversold 20 · overbought 80
2% -4% +6 pts 0.12 -31% beat
ABT RSI mean-reversion
period 14 · oversold 20 · overbought 80
2% -19% +21 pts 0.11 -29% beat
AMT Bollinger bands
period 20 · width 1.5
2% -4% +6 pts 0.11 -34% beat
MDT Bollinger bands
period 50 · width 1.5
-1% -22% +21 pts 0.06 -27% beat
MDT Donchian breakout
entry 40 · exit 50
-1% -22% +21 pts 0.06 -28% beat
CRM Moving-average cross
fast 30 · slow 100
-5% -26% +20 pts 0.05 -42% beat
PYPL Bollinger bands
period 20 · width 3.0
-1% -43% +42 pts 0.01 -18% beat
MDT Moving-average cross
fast 15 · slow 100
-6% -22% +16 pts -0.01 -25% beat
ABT Moving-average cross
fast 5 · slow 150
-7% -19% +12 pts -0.02 -25% beat
DIS Moving-average cross
fast 20 · slow 75
-9% -46% +37 pts -0.04 -34% beat
CMCSA Moving-average cross
fast 30 · slow 200
-12% -49% +36 pts -0.06 -29% beat
CCI RSI mean-reversion
period 14 · oversold 30 · overbought 70
-18% -34% +16 pts -0.09 -40% beat
CCI Bollinger bands
period 50 · width 1.5
-17% -34% +17 pts -0.11 -40% beat
PYPL Moving-average cross
fast 15 · slow 200
-11% -43% +31 pts -0.12 -27% beat
CMCSA Bollinger bands
period 50 · width 1.5
-20% -49% +29 pts -0.14 -30% beat
NKE Bollinger bands
period 30 · width 1.5
-34% -65% +31 pts -0.22 -45% beat
DIS Donchian breakout
entry 20 · exit 30
-30% -46% +16 pts -0.24 -61% beat
NKE RSI mean-reversion
period 14 · oversold 25 · overbought 80
-51% -65% +14 pts -0.26 -62% beat
CMCSA RSI mean-reversion
period 14 · oversold 30 · overbought 80
-42% -49% +7 pts -0.31 -48% beat
CMCSA Donchian breakout
entry 20 · exit 30
-38% -49% +11 pts -0.35 -44% beat

Showing 86 of 86. Sorted by Sharpe — return per unit of risk taken.

How to read this honestly

Settings were chosen on the older 70% of each stock's history, then scored — untouched — on the newer 30%. Every number on this page comes from that unseen stretch. "Difference" is how far the strategy finished ahead of or behind simply buying the stock and waiting, in percentage points. A strategy that beat buy & hold here is not a recommendation: 101 stocks × four families is a big enough search that some winners are luck. That's exactly why Chartments lets you put an idea on trial going forward, where luck can't be backfilled.

Snapshot from the sweep engine · 101 stocks · 4,392 trading days. Research & education only — not investment advice.