Does anything beat buy & hold on Copper (HG)?
Every setup we tested on Copper (HG) — 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 only beat buy-and-hold in one window — a regime artifact, not a strategy. Buy-and-hold benchmark: +6.3% CAGR over 8.4 years (+12.0% CAGR in the out-of-sample window).
Educational research from historical backtests — not investment advice. Past performance does not predict future results.
Copper: Nothing Survived Honest Testing
We ran 1,514 indicator setups against Copper (HG), and none earned a pass. Macro instruments like this are hard terrain for timing systems: roll costs quietly tax every position, returns arrive in regime-driven bursts separated by long flat stretches, and a rule tuned to one macro environment tends to break in the next. The best-looking candidate, Intraday Momentum Index on the 4-hour timeframe, looked strong in-sample — which is exactly what you'd expect from the winner of hundreds of tries — and then failed to hold up on data it had never seen.
Read the numbers with the selection problem in mind. When you pick the best of 1,514 attempts, luck alone produces impressive backtests, so we require an out-of-sample Sharpe above a multiple-testing hurdle of 2.42. Here the top setup managed 1.37, with out-of-sample alpha of +0.9% against a buy-and-hold CAGR of +6.3%. Across all setups, only 0.1% beat holding at all. That's the finding for this window of history — markets change, and past results, good or bad, predict nothing.
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.
Intraday Momentum Index
Mechanical rule (exactly as backtested): Open-to-close RSI — buy up through 30, exit above 70. 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.
Out-of-sample (last ~30% of the window, never used to pick this setup): Sharpe 1.37 · alpha +0.9% · 14 trades over 2.5 yrs.
DeMarker
Mechanical rule (exactly as backtested): Buy DeMarker up through 0.3, exit above 0.7 — a demand/supply gauge. 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.
Out-of-sample (last ~30% of the window, never used to pick this setup): Sharpe 1.26 · alpha -1.0% · 15 trades over 2.5 yrs.
VWAP Bands
Mechanical rule (exactly as backtested): Rolling VWAP ± standard-deviation bands — buy below the lower band, exit at VWAP. 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.
Out-of-sample (last ~30% of the window, never used to pick this setup): Sharpe 1.26 · alpha -3.6% · 17 trades over 2.5 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-07-02. Currently FLAT.
We tested 1,514 setups (indicator × parameters × timeframe) on Copper (HG). Only setups with ≥30 trades qualify (1,387 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,514 tries mines even the holdout, the VALIDATED verdict additionally requires the top setup’s OOS Sharpe to clear a selection hurdle of 2.42 (√(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.08) — 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 1,387 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 | Intraday Momentum Index | 4-Hour | +3.3% | 0.09 | -31.0% | 74.4% | 43 | -5.9% | 1.37 | +0.9% | 14 |
| 2 | DeMarker | 4-Hour | +26.5% | 0.34 | -28.4% | 69.4% | 49 | -3.5% | 1.26 | -1.0% | 15 |
| 3 | VWAP Bands | 4-Hour | +36.1% | 0.51 | -17.3% | 71.2% | 52 | -2.6% | 1.26 | -3.6% | 17 |
| 4 | Stochastic Momentum Index | 4-Hour | -2.9% | 0.02 | -25.8% | 74.1% | 58 | -6.7% | 1.08 | -4.4% | 21 |
| 5 | Murrey Math Lines | 4-Hour | +19.3% | 0.29 | -25.6% | 67.6% | 34 | -4.2% | 1.05 | -3.2% | 12 |
| 6 | Parabolic SAR (fast) | 4-Hour | -11.9% | -0.1 | -47.4% | 42.4% | 257 | -7.8% | 1.01 | -1.2% | 70 |
| 7 | Relative Vigor Index | 4-Hour | -6.4% | -0.0 | -43.0% | 44.4% | 277 | -7.1% | 1.0 | -1.3% | 77 |
| 8 | Ehlers Relative Vigor | 4-Hour | -6.0% | 0.0 | -40.6% | 43.4% | 320 | -7.0% | 1.0 | -1.4% | 96 |
| 9 | Keltner Mean-Reversion | 4-Hour | +10.0% | 0.2 | -17.3% | 74.2% | 31 | -5.2% | 0.97 | -6.1% | 11 |
| 10 | Nadaraya-Watson Envelope | 1-Hour | -6.3% | -0.13 | -20.9% | 57.1% | 84 | -7.7% | 0.96 | -8.1% | 29 |
| 11 | Bollinger Mean-Reversion | 4-Hour | -1.7% | 0.03 | -26.8% | 66.7% | 54 | -6.5% | 0.95 | -4.5% | 19 |
| 12 | Fibonacci Bands | 4-Hour | -1.7% | 0.03 | -26.8% | 66.7% | 54 | -6.5% | 0.95 | -4.5% | 19 |
| 13 | Historical Volatility Regime | 4-Hour | +43.8% | 0.65 | -18.0% | 40.2% | 132 | -1.9% | 0.92 | -4.5% | 44 |
| 14 | Connors RSI | 4-Hour | -12.4% | -0.1 | -30.0% | 59.6% | 171 | -7.9% | 0.9 | -4.4% | 52 |
| 15 | Stochastic | Daily | +48.2% | 0.18 | -72.4% | 69.5% | 131 | -6.4% | 0.88 | -0.3% | 42 |
| 16 | Volatility Regime (VIX-style) | 4-Hour | +25.9% | 0.43 | -19.7% | 44.2% | 138 | -3.5% | 0.85 | -5.2% | 47 |
| 17 | SMC: Equal Highs / Lows | 1-Hour | +57.2% | 0.52 | -27.2% | 46.9% | 32 | -0.9% | 0.83 | -2.9% | 10 |
| 18 | Fisher Transform | 4-Hour | +10.9% | 0.17 | -29.5% | 38.3% | 350 | -5.1% | 0.83 | -3.4% | 103 |
| 19 | Ehlers Roofing Filter | 4-Hour | +98.7% | 0.85 | -14.3% | 54.8% | 62 | +2.2% | 0.81 | -2.5% | 18 |
| 20 | Ultimate Oscillator | Daily | -29.6% | -0.01 | -76.2% | 64.7% | 34 | -9.3% | 0.81 | -3.7% | 11 |
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.