Home / Strategies / Cocoa (CC)
Commodity · strategy report

Does anything beat buy & hold on Cocoa (CC)?

Every setup we tested on Cocoa (CC) — 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 only beat buy-and-hold in one window — a regime artifact, not a strategy. Buy-and-hold benchmark: +7.2% CAGR over 26.6 years (+12.7% CAGR in the out-of-sample window).

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

Cocoa: Nothing Survived Honest Testing

We ran 749 indicator setups against Cocoa (CC), 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, Bullish Engulfing on the daily 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 749 attempts, luck alone produces impressive backtests, so we require an out-of-sample Sharpe above a multiple-testing hurdle of 1.29. Here the top setup managed 1.27, with out-of-sample alpha of +9.1% against a buy-and-hold CAGR of +7.2%. Across all setups, only 4.8% 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.

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 · Pattern · Daily

Bullish Engulfing

What it is: A market-structure rule: it reacts to swing structure and prior levels rather than to a smoothed average. Long/flat only — no leverage, no shorting. The parameters we tested are not published.

How it was tested: signals evaluated at daily-bar close, the position changes on the NEXT bar, 0.08% cost per side. Same engine, same cost model, same out-of-sample split as every other number on this site.

+116.9%
Total return
0.28
Sharpe
-63.9%
Max DD
44.6%
Win rate
222
Trades
-4.3%
vs B&H

Out-of-sample (last ~30% of the window, never used to pick this setup): Sharpe 1.27 · alpha +9.1% · 64 trades over 8.0 yrs.

#2 · Pattern · Daily

Tweezer Bottom

What it is: A market-structure rule: it reacts to swing structure and prior levels rather than to a smoothed average. Long/flat only — no leverage, no shorting. The parameters we tested are not published.

How it was tested: signals evaluated at daily-bar close, the position changes on the NEXT bar, 0.08% cost per side. Same engine, same cost model, same out-of-sample split as every other number on this site.

+114.6%
Total return
0.28
Sharpe
-53.0%
Max DD
42.4%
Win rate
229
Trades
-4.3%
vs B&H

Out-of-sample (last ~30% of the window, never used to pick this setup): Sharpe 1.09 · alpha +7.2% · 53 trades over 8.0 yrs.

#3 · Momentum · Weekly

Stochastic Fast (5,3)

What it is: An oscillator rule: it reads a bounded momentum gauge and takes exposure when it turns from an extreme. Long/flat only — no leverage, no shorting. The parameters we tested are not published.

How it was tested: signals evaluated at weekly-bar close, the position changes on the NEXT bar, 0.08% cost per side. Same engine, same cost model, same out-of-sample split as every other number on this site.

+277.3%
Total return
0.32
Sharpe
-70.1%
Max DD
46.7%
Win rate
182
Trades
-2.0%
vs B&H

Out-of-sample (last ~30% of the window, never used to pick this setup): Sharpe 0.76 · alpha +8.9% · 50 trades over 8.1 yrs.

Forward test

Since publication — including if it loses

+4.3%
the published setup, since 2026-07-02 (80 market days)
+11.19%
buy & hold, same window

Buy-and-hold is ahead so far — we publish that too. That is the point. Marked to market nightly from real prices, rules frozen at publication, as of 2026-10-26. Currently FLAT.

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

We tested 749 setups (indicator × parameters × timeframe) on Cocoa (CC). Only setups with ≥30 trades qualify (673 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 749 tries mines even the holdout, the VALIDATED verdict additionally requires the top setup’s OOS Sharpe to clear a selection hurdle of 1.29 (√(2 ln N)/√T) AND positive alpha in both windows. Of the eligible setups, 4.8% had positive out-of-sample alpha (median OOS Sharpe 0.26) — the table below is truncated, but this summary covers all of them. How we test: methodology. The scoring contract is published in full; the parameters of each individual setup are not.

Ranked table

Top 20 of 673 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
1Bullish EngulfingDaily+116.9%0.28-63.9%44.6%222-4.3%1.27+9.1%64
2Tweezer BottomDaily+114.6%0.28-53.0%42.4%229-4.3%1.09+7.2%53
3Stochastic Fast (5,3)Weekly+277.3%0.32-70.1%46.7%182-2.0%0.76+8.9%50
4TRIXDaily+339.2%0.35-66.3%40.6%175-1.5%0.76+7.7%47
5Parabolic SARDaily+281.7%0.33-69.7%42.2%303-2.1%0.76+7.2%86
6Ehlers SuperSmootherWeekly+62.1%0.2-79.7%40.4%208-5.3%0.74+7.5%58
7Hull MA 20/80 CrossDaily+120.9%0.24-75.0%36.9%160-4.2%0.71+6.7%43
8Zero-Lag MACDWeekly+35.9%0.17-81.3%43.1%130-5.9%0.71+6.2%38
9Predictive RangesWeekly+100.8%0.23-73.5%45.3%64-4.4%0.7+4.5%17
10Markov Regime (Confirmed)Weekly+34.2%0.16-71.2%52.3%132-6.0%0.7+2.9%39
11Pring's Special KDaily+131.8%0.26-65.6%39.9%228-4.0%0.7+1.6%67
12Stochastic (10,3)Weekly+53.1%0.19-80.0%40.1%177-5.5%0.68+3.9%47
13Squeeze MomentumWeekly+17.8%0.13-80.6%47.7%86-6.5%0.68+2.5%23
14Percentage Price Osc.Daily+592.1%0.42-55.1%41.7%254+0.3%0.67+4.5%71
15PPO CrossDaily+592.1%0.42-55.1%41.7%254+0.3%0.67+4.5%71
16Stoch RSI (fast)Weekly-9.7%0.11-87.4%37.2%156-7.4%0.66+4.0%42
17Chande Forecast Osc.Weekly+55.7%0.19-75.3%42.7%178-5.4%0.64+3.9%46
18MACDDaily+577.1%0.41-54.1%40.2%254+0.2%0.64+3.7%74
19Rainbow MAWeekly+22.8%0.16-77.8%34.3%169-6.3%0.64+3.5%43
20VortexDaily+69.0%0.2-78.5%41.7%348-5.3%0.63+2.8%109

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