Home / Strategies / S&P 500 (SPY)
Index ETF · strategy report

Does anything beat buy & hold on S&P 500 (SPY)?

Every setup we tested on S&P 500 (SPY) — ranked out-of-sample, corrected for multiple testing, and forward-tracked in public from the day this page published. The honest answer is the headline.

NOTHING BEAT BUY-AND-HOLD

No setup beat simply holding once tested honestly. We say so plainly.

Its best setup trailed buy-and-hold out-of-sample. Buy-and-hold benchmark: +13.6% CAGR over 3.9 years (+14.7% CAGR in the out-of-sample window).

Educational research from historical backtests — not investment advice. Past performance does not predict future results.

S&P 500: Nothing Beat Buy-and-Hold, and That Is the Honest Answer

Broad, diversified instruments like S&P 500 are where indicator strategies go to disappoint. We ran 1,498 setups against SPY, and none cleared the bar once scored honestly — on data the strategy never saw. The best of the batch, Zero-Lag LSMA on the 4-hour timeframe, posted an out-of-sample Sharpe of 1.86, short of the 3.49 hurdle we require before calling anything real. For an index fund this is the expected result: whatever inefficiency exists in single names tends to average away in the basket, leaving buy-and-hold's +13.6% annualized return as the number nothing here managed to beat.

Read these figures with the selection problem in mind. Test 1,498 indicators, keep the best, and the winner looks impressive by construction — which is exactly why the hurdle exists instead of applause for a lucky draw. Here, only 0.1% of setups outperformed buy-and-hold even in-sample, and the top candidate produced -1.4% annual alpha over 1.2 unseen years, across 112 trades with a 44.6% win rate and a -17.2% drawdown. That pattern reads as noise, not signal. Markets also change, so even a genuine past edge can fade. This page documents what failed — useful to know before assuming something works.

Every figure above is computed from our own backtests — nothing is estimated or invented. Hypothetical results; not investment advice.

Failure exhibit

The least-bad setups — shown with their failure numbers

Nothing here earned a verdict — these are the best of a losing field, published so you can see exactly how "best" still failed.

#1 · Trend · 4-Hour

Zero-Lag LSMA

Mechanical rule (exactly as backtested): Lag-corrected Least Squares MA — long while price holds above the ZLSMA. Signals are evaluated at 4-hour-bar close, the position changes on the NEXT bar, 0.08% cost per side, long/flat only — no leverage, no shorting.

+11.7%
Total return
0.34
Sharpe
-17.2%
Max DD
44.6%
Win rate
112
Trades
-10.7%
vs B&H

Out-of-sample (last ~30% of the window, never used to pick this setup): Sharpe 1.86 · alpha -1.4% · 30 trades over 1.2 yrs.

#2 · Momentum · 4-Hour

Stoch RSI (fast)

Mechanical rule (exactly as backtested): Variant — fast Stochastic-RSI; long while above its midline. Signals are evaluated at 4-hour-bar close, the position changes on the NEXT bar, 0.08% cost per side, long/flat only — no leverage, no shorting.

+21.5%
Total return
0.57
Sharpe
-14.1%
Max DD
39.0%
Win rate
164
Trades
-8.4%
vs B&H

Out-of-sample (last ~30% of the window, never used to pick this setup): Sharpe 1.64 · alpha -2.6% · 44 trades over 1.2 yrs.

#3 · Trend · 4-Hour

Hull MA 30 Trend

Mechanical rule (exactly as backtested): VARIANT — price above a rising Hull MA(30). Signals are evaluated at 4-hour-bar close, the position changes on the NEXT bar, 0.08% cost per side, long/flat only — no leverage, no shorting.

+26.6%
Total return
1.13
Sharpe
-6.4%
Max DD
46.9%
Win rate
96
Trades
-7.3%
vs B&H

Out-of-sample (last ~30% of the window, never used to pick this setup): Sharpe 1.64 · alpha -5.6% · 26 trades over 1.2 yrs.

Forward test

Since publication — including if it loses

0.0%
the published setup, since 2026-07-02 (0 market days)
0.0%
buy & hold, same window

The forward record is just getting started — the gap between the two is the honest score. Marked to market nightly from real prices, rules frozen at publication, as of 2026-07-02. Currently FLAT.

How this verdict was computed (mode: out-of-sample)

We tested 1,498 setups (indicator × parameters × timeframe) on S&P 500 (SPY). Only setups with ≥30 trades qualify (1,324 did). Setups are ranked by out-of-sample Sharpe — the last ~30% of history, which standard-parameter rules never saw during selection. Because picking the best of 1,498 tries mines even the holdout, the VALIDATED verdict additionally requires the top setup’s OOS Sharpe to clear a selection hurdle of 3.49 (√(2 ln N)/√T) AND positive alpha in both windows. Of the eligible setups, 0.1% had positive out-of-sample alpha (median OOS Sharpe 0.53) — the table below is truncated, but this summary covers all of them. Full recipe: methodology · the engine’s contract lives in the repo as STRATEGY_METHODOLOGY.md.

Ranked table

Top 20 of 1,324 eligible setups

Ranked by out-of-sample Sharpe. Full + out-of-sample columns, costs included. Hypothetical.

#SetupTFTotal retSharpeMax DDWinTradesα vs B&HOOS SharpeOOS αOOS trades
1Zero-Lag LSMA4-Hour+11.7%0.34-17.2%44.6%112-10.7%1.86-1.4%30
2Stoch RSI (fast)4-Hour+21.5%0.57-14.1%39.0%164-8.4%1.64-2.6%44
3Hull MA 30 Trend4-Hour+26.6%1.13-6.4%46.9%96-7.3%1.64-5.6%26
4Nadaraya-Watson Envelope1-Hour+8.3%0.5-9.6%65.7%35-16.8%1.62-11.7%11
5Keltner Mean-Reversion1-Hour+6.9%0.33-11.5%65.7%70-17.2%1.52-7.2%22
6Triangular Hull MA4-Hour+28.1%1.1-6.1%45.4%97-7.0%1.5-5.9%25
7RSI Mean-Reversion1-Hour+12.7%0.55-8.4%73.5%34-15.4%1.39-8.9%13
8FRAMA 100 Trend4-Hour+26.6%0.79-14.9%40.0%140-7.3%1.38-5.1%39
9Ultimate Osc (4,8,16)4-Hour+5.3%0.2-21.6%45.1%153-12.2%1.33-4.4%44
10McGinley Dynamic4-Hour+22.1%0.64-16.9%38.8%80-8.3%1.33-4.8%22
11KDJ4-Hour+13.9%0.4-17.7%39.5%152-10.2%1.33-5.3%43
12Rainbow MA4-Hour+3.0%0.13-23.2%42.8%173-12.8%1.31-5.0%47
13Super Smoother (Ehlers)4-Hour+24.8%0.92-6.7%41.7%108-7.7%1.31-6.9%32
14Coppock (fast)4-Hour+23.4%0.76-11.9%39.7%58-8.0%1.27-5.9%17
15Ehlers TrendFlex4-Hour+46.2%1.27-7.5%47.2%36-3.3%1.22-5.3%12
16ALMA 10/30 Cross4-Hour+37.2%1.14-7.4%47.1%68-5.1%1.22-6.3%20
17Williams %R1-Hour-4.5%-0.11-19.1%61.3%119-21.2%1.22-7.8%35
18Order-Flow Reversion1-Hour+11.2%0.46-11.2%65.1%83-15.0%1.2-8.6%25
19Adaptive Supertrend4-Hour+45.3%1.15-14.3%47.3%55-3.5%1.17-6.1%18
20WaveTrend (8/6/4)1-Hour+28.8%0.84-9.6%75.3%77-10.4%1.17-7.1%26

Hypothetical backtests with 0.08%/side costs. Not investment advice — see the full disclaimer.

Read this before acting on anything

These are historical backtests of mechanical rules. They are educational research, not investment advice, not a recommendation, and not tailored to you. Educational information only — not investment advice. Hypothetical backtested results; past performance does not guarantee future results. Trading involves risk of loss.

Keep digging