Does anything beat buy & hold on CVS Health (CVS)?
Every setup we tested on CVS Health (CVS) — 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.
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: +9.9% CAGR over 53.5 years (+9.7% CAGR in the out-of-sample window).
Educational research from historical backtests — not investment advice. Past performance does not predict future results.
CVS: we tested 758 setups and none beat simply holding CVS Health
For CVS Health (CVS), we ran 758 indicator configurations against a plain buy-and-hold benchmark, and none of them earned the right to replace it. Individual stocks carry idiosyncratic risk — earnings surprises, guidance changes, sector rotation — that indicators built on price history cannot see coming. The best-looking setup, Trend-Gated Asymmetric on the weekly timeframe, ranked at the top in-sample but delivered an out-of-sample Sharpe of 0.65, short of our hurdle of 0.91. Buy-and-hold returned +9.9% annualized over the test period; the top strategies mostly captured pieces of that same move while adding trading friction.
How to read this honestly: when you test 758 setups and keep the best one, something will always look impressive by chance alone. That is why we require the survivor to clear 0.91 out of sample. Trend-Gated Asymmetric managed 0.65, with out-of-sample alpha of -1.8% across 16.1 years and 66 trades, and only 0.0% of everything we tested beat the benchmark on unseen data — roughly what luck would produce. None of this predicts anything: the regime that generated these numbers can shift, and single stocks shift faster than most. Treat this page as a record of what failed under honest testing, not a forecast.
Every figure above is computed from our own backtests — nothing is estimated or invented. Hypothetical results; not investment advice.
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.
Trend-Gated Asymmetric
Mechanical rule (exactly as backtested): Longs only in an uptrend (price > 200 EMA gate), entered on a MACD cross up and exited fast/asymmetrically below the 20 EMA. Signals are evaluated at weekly-bar close, the position changes on the NEXT bar, 0.08% cost per side, long/flat only — no leverage, no shorting.
Out-of-sample (last ~30% of the window, never used to pick this setup): Sharpe 0.65 · alpha -1.8% · 16 trades over 16.1 yrs.
Inside-Bar Breakout
Mechanical rule (exactly as backtested): Volatility breakout - an inside (mother) bar forms, go long on a break above the mother bar's high. Signals are evaluated at daily-bar close, the position changes on the NEXT bar, 0.08% cost per side, long/flat only — no leverage, no shorting.
Out-of-sample (last ~30% of the window, never used to pick this setup): Sharpe 0.64 · alpha -3.7% · 97 trades over 16.0 yrs.
LSMA 200 Trend
Mechanical rule (exactly as backtested): VARIANT — price above a rising LSMA(200). Signals are evaluated at weekly-bar close, the position changes on the NEXT bar, 0.08% cost per side, long/flat only — no leverage, no shorting.
Out-of-sample (last ~30% of the window, never used to pick this setup): Sharpe 0.63 · alpha -0.3% · 12 trades over 16.1 yrs.
Since publication — including if it loses
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-06-29. Currently LONG.
We tested 758 setups (indicator × parameters × timeframe) on CVS Health (CVS). Only setups with ≥30 trades qualify (721 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 758 tries mines even the holdout, the VALIDATED verdict additionally requires the top setup’s OOS Sharpe to clear a selection hurdle of 0.91 (√(2 ln N)/√T) AND positive alpha in both windows. Of the eligible setups, 0.0% had positive out-of-sample alpha (median OOS Sharpe 0.23) — 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.
Top 20 of 721 eligible setups
Ranked by out-of-sample Sharpe. Full + out-of-sample columns, costs included. Hypothetical.
| # | Setup | TF | Total ret | Sharpe | Max DD | Win | Trades | α vs B&H | OOS Sharpe | OOS α | OOS trades |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | Trend-Gated Asymmetric | Weekly | >+999% | 0.41 | -42.1% | 47.0% | 66 | -4.7% | 0.65 | -1.8% | 16 |
| 2 | Inside-Bar Breakout | Daily | +5.0% | 0.06 | -58.7% | 37.5% | 325 | -9.9% | 0.64 | -3.7% | 97 |
| 3 | LSMA 200 Trend | Weekly | +636.5% | 0.31 | -54.9% | 43.2% | 81 | -6.1% | 0.63 | -0.3% | 12 |
| 4 | TEMA 200 Trend | Weekly | +799.6% | 0.34 | -43.5% | 39.0% | 77 | -5.7% | 0.59 | -0.9% | 22 |
| 5 | ZLEMA 200 Trend | Weekly | >+999% | 0.36 | -51.8% | 46.8% | 77 | -5.1% | 0.55 | -1.4% | 20 |
| 6 | Money Flow Index | Daily | +692.6% | 0.29 | -72.8% | 63.6% | 55 | -6.0% | 0.55 | -1.8% | 16 |
| 7 | KAMA 100 Trend | Weekly | >+999% | 0.36 | -46.9% | 38.2% | 89 | -4.6% | 0.54 | -1.6% | 19 |
| 8 | Volume Zone Oscillator | Weekly | >+999% | 0.47 | -42.8% | 49.0% | 253 | -1.9% | 0.53 | -0.7% | 76 |
| 9 | Pivot Points (Standard) | Weekly | >+999% | 0.36 | -68.2% | 59.3% | 386 | -4.8% | 0.53 | -1.8% | 122 |
| 10 | CCI (100) | Weekly | >+999% | 0.45 | -47.3% | 38.0% | 50 | -2.3% | 0.52 | -1.5% | 15 |
| 11 | WMA 200 Trend | Daily | >+999% | 0.47 | -48.1% | 32.6% | 215 | -2.2% | 0.52 | -1.7% | 58 |
| 12 | Hull MA 200 Trend | Weekly | >+999% | 0.37 | -49.1% | 26.3% | 57 | -5.0% | 0.52 | -2.1% | 15 |
| 13 | ALMA 200 Trend | Weekly | >+999% | 0.46 | -53.2% | 40.7% | 54 | -2.7% | 0.52 | -2.1% | 17 |
| 14 | Volatility Regime (VIX-style) | Weekly | >+999% | 0.39 | -36.7% | 47.0% | 83 | -4.8% | 0.52 | -3.5% | 26 |
| 15 | EMA 13/48 Cross | Weekly | >+999% | 0.46 | -54.1% | 46.7% | 30 | -2.0% | 0.51 | -1.6% | 12 |
| 16 | WMA 100 Trend | Weekly | >+999% | 0.46 | -48.6% | 44.9% | 69 | -2.1% | 0.51 | -2.0% | 19 |
| 17 | Fibonacci Pivots | Weekly | +825.2% | 0.31 | -73.6% | 59.1% | 416 | -5.6% | 0.51 | -2.1% | 127 |
| 18 | SMA 100 Trend | Weekly | >+999% | 0.45 | -56.5% | 50.8% | 61 | -2.6% | 0.51 | -2.3% | 18 |
| 19 | RSI (21) | Weekly | >+999% | 0.47 | -54.9% | 45.0% | 111 | -2.0% | 0.49 | -2.1% | 30 |
| 20 | G-Channel | Weekly | >+999% | 0.37 | -52.5% | 40.7% | 91 | -4.1% | 0.49 | -2.2% | 22 |
Hypothetical backtests with 0.08%/side costs. Not investment advice — see the full disclaimer.
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.