🐘 Stock Market Elephant/The Graveyard Series
The graveyard series Β· new chapter

Three markets, one playbook

Sep 9, 2026 Β· gold, crude, a data trap, and why the index keeps the crown

For seven chapters this series has lived on one market: MNQ, the micro Nasdaq future. One strategy β€” an opening-range breakout β€” survived our full gauntlet there. The obvious next question, the one every reader eventually asks: does it travel?

So we pointed the same machine at micro gold (MGC) and micro crude (MCL). This post is everything that happened: the hypothesis we wrote down before looking, a data trap that nearly published a false verdict, an audit that shrank our own numbers, and a genuinely useful discovery hiding in crude oil.

1 Β· What we're even testing

One picture, because the whole series rests on it. The market opens. For the first N minutes we do nothing but record the high and the low β€” the opening range. If price then breaks out above that range, we buy the breakout with a resting stop order; our stop-loss goes at the far side of the range, and the distance from entry to that stop is our risk β€” one "R." Targets are quoted as reward-to-risk multiples: a 3R target seeks three dollars of reward per dollar risked. (In this particular setup risk happens to equal the range width, because that is where the stop lives β€” but R is always defined by the stop distance, not the range.) If nothing breaks out, no trade. Whatever happens, we're flat by the close.

OR high β€” buy stop rests hereOR low β€” stop-loss lives heretarget = entry + 3 Γ— risk (3R)breakout β†’ long1R = range widthopening range Β· first 30 min09:3010:0016:00flat by close
The whole strategy in one chart: range forms β†’ breakout entry β†’ stop at the far side β†’ target at a multiple of risk β†’ flat by the close, no matter what.

Every parameter in that picture β€” how many minutes of range, which multiple of R, long or short, which market β€” is a knob. Our job, per this whole series, is to turn the knobs before looking at the answers, write down what we expect, and let the out-of-sample tests speak.

2 Β· The hypothesis, registered before the run

"These instruments respect trends better than MNQ, which can be noisy. When we detect a run with ORB, it will probably be cleaner β€” we can actually close trades at the target instead of end-of-day closes."

That's the pre-registered prediction, verbatim, from before a single backtest ran. It's falsifiable and it's specific: on MNQ, our champion almost never reaches its profit target β€” just 2% of trades. It grinds. If gold and crude "trend cleaner," their exit anatomy should show real target exits. We committed to a fixed 216-configuration grid per instrument β€” two session opens, three range lengths, four targets, three directions, three volatility filters β€” declared in code before results existed, so that the multiple-testing penalty is honest.

3 Β· The trap: our first gold verdict was garbage

The first run came back brutal for gold: every out-of-sample path negative. We nearly published "gold doesn't trend" as a finding. Then our adversarial audit β€” we run one after every big code change β€” checked the data instead of the code, and found that roughly a third of the gold sessions were missing their opening bar entirely, with multi-week holes clustered around futures roll dates.

The culprit: we'd built our continuous gold history with a calendar-based roll rule, which switched to the "next" contract while all of gold's actual volume was still elsewhere. Result: a data file that looked like gold but traded like a ghost town. The strategy verdict wasn't wrong β€” it was void. There's a difference, and it matters.

A backtest on bad data doesn't fail loudly. It fails plausibly β€” it hands you a confident number about a market that doesn't exist.

We re-downloaded gold rolled by volume (follow the liquidity, not the calendar): coverage jumped from 65% of session opens to 99.4%. And we turned the lesson into a permanent gate β€” every data file now has to pass an automated quality check (opening-bar coverage, thin days, volume sanity, calendar gaps) before any conclusion may be drawn from it. That gate would have caught this in five seconds. Now it always will.

4 Β· The verdicts, on clean data

Our standard applies unchanged: combinatorial cross-validation (CPCV) builds five independent out-of-sample "paths" through history; the probability of backtest overfitting (PBO) must stay under 20%. Here are all fifteen paths, side by side:

-0.5+0.0+0.5+1.0MNQmean +0.71MCLmean +0.25MGCmean +0.11zero β€” a strategy must live above this line out-of-sample
Five out-of-sample path Sharpes per market, with the mean bar. MNQ: tight and positive. MCL: positive but wide β€” one path went negative. MGC: hugging zero.
out-of-sampleCPCV meanworst pathPBOgate < 20%
MNQ Β· champion+0.71+0.670%PASS
MCL Β· crude+0.25βˆ’0.4413%PASS
MGC Β· gold+0.11βˆ’0.2833%FAIL

Gold fails β€” honestly this time. On real data it's no longer catastrophic, just… nothing. A mean path Sharpe of 0.11 with a one-in-three chance the whole thing is overfit. Into the graveyard it goes, with a cleaner conscience than the first time.

Crude passes the gate. And here's the part we genuinely didn't script: the best family in crude is short-only, off a 60-minute range β€” and both gold and crude independently picked the same shape (60-minute range, 9:30 open, short side). When two markets you tested separately agree on structure, that's weak evidence of something real; when five configurations of it cluster at the top, weaker still to be noise.

5 Β· The hypothesis, scored

Remember the prediction: cleaner trends β†’ real target exits. Here's how every trade ended, by market:

MNQ Β· champion34%64%MCL Β· candidate31%26%43%MGC Β· rejected17%10%73%β–  ran to targetβ–  stopped outβ–  closed at end of day
How trades end. MNQ grinds into the close; crude actually reaches its targets; gold mostly drifts.

Crude: 31% of trades ran all the way to target, versus 2% on MNQ β€” a fifteen-fold difference. The pre-registered hypothesis was confirmed for crude and rejected for gold (17%, and it failed the overfit gate anyway). Half-right, written down in advance, scored in public. That's the whole method in miniature.

6 Β· The audit that shrank our own numbers

Same audit that caught the gold data also caught two things in our favor β€” which is exactly when you should trust an audit least if it stays quiet.

First: our engine measured "average daily range" differently for markets with pre-market data than for MNQ, and it never let a trade take profit on its very first bar. Both fixed. The fixes didn't touch MNQ β€” the champion reproduces to the cent β€” but they moved crude: its out-of-sample mean fell from 0.55 to 0.25. Still passing, much more humble. Corrections almost always shrink edges. If yours keep growing, worry.

Second: our expected-value calculator for funded-account ladders modeled the trailing drawdown as freezing at the starting balance β€” true at some firms, not at the one we were modeling, where the trail keeps rising underneath you forever. Corrected, the pass probability we'd been quoting dropped by about a sixth and the cost per funded account rose ~12%. The EV calculator now models both semantics and lets you toggle them β€” check which one your firm uses, because it is not fine print.

7 Β· Why crude still earns a seat at the table

A 0.25 out-of-sample Sharpe is not, by itself, exciting. What makes crude interesting is a different number entirely:

MNQ champion, daily P&L ($)MCL candidate, daily P&L ($)correlation: βˆ’0.001 (517 days both traded)
517 days where both strategies traded. No tilt in any direction: correlation βˆ’0.001.

The crude signal's daily P&L is completely uncorrelated with the MNQ champion's β€” statistically indistinguishable from zero across five years of overlap. We wrote down the gate before computing it: adopt a second signal only if correlation < 0.3. It came in at βˆ’0.001.

Why does that matter more than raw Sharpe? Because of what we showed in the sizing chapter: five copies of the same signal bust in lockstep β€” correlation 1.0 buys you speed and nothing else. An uncorrelated second signal is the only thing that actually changes the geometry:

$-509$5,022$10,554$16,086$21,6172021-072026-09β€” both togetherβ€” MNQ champion (long)β€” MCL candidate (short)
Overlap window, one micro each. The combined line is smoother than either input β€” losses land on different days.
book (2021–2026)Sharpemax drawdowneval pass rate*median days to pass*
MNQ alone0.81βˆ’$4,56748.7%108
MNQ + crude1.00βˆ’$4,29555.8%102
*50K-eval Monte Carlo, one micro each. With the crude leg sized up to equalize risk, the median time-to-pass drops to ~64 days β€” but that sizing hasn't cleared certification, so we quote the conservative row.

The pass rate barely moves β€” eval geometry mostly doesn't care, as we've written before β€” but the drawdown improves while profit nearly doubles, because the two streams stumble on different days. That's the one free lunch in this business, and you can only buy it with a genuinely different signal.

8 Β· The scoreboard

MNQMCLMGC
direction that workslongshortβ€”
opening range30 min60 minβ€”
reaches target2%31%17%
CPCV mean (out-of-sample)+0.71+0.25+0.11
PBO0%13%33%
deflated Sharpe confidence85%52%11%
history tested7.3 yrs5.2 yrs7.3 yrs
verdictchampionresearch candidategraveyard

MNQ remains the champion, and it isn't close. Its out-of-sample mean is three times crude's, its overfit probability is zero, its history is longer, and it has survived two adversarial audits without moving a cent. Crude earns a research seat β€” uncorrelated, structurally sensible, hypothesis-confirmed β€” but it trades nothing until it clears the same gates the champion did: slippage stress, recent-window checks, and a paper period. And it carries an honest asterisk we won't hide: a short-only crude strategy tested mostly across 2021–2026 is partly a bet on one oil regime. Five years is the minimum we'd call evidence and the maximum crude's micro contract can give us.

One market gave us a champion. One gave us a diversifier-in-waiting. One gave us nothing β€” twice, for two different reasons, and the second "nothing" was worth more than the first, because it was true.

Postscript β€” Sep 10: crude fails its prerequisites

This series doesn't edit history, so the chapter above stands as written β€” but the story moved overnight, and you deserve the ending. Before any signal earns real money we require three things beyond the overfit gate: survive extra slippage, work on recent data, and add value at realistic size. Our overnight verification run put the crude candidate through all three. It failed all three.

prerequisiteMNQ championMCL candidate
+1 tick/side slippage+0.65βˆ’0.05
+2 ticks/side+0.60βˆ’0.32
2024β†’now window (CPCV PBO)0%60% β€” gate fail
recent-window P&Lholds+$287 in 2.7 yrs

One extra tick of slippage per side β€” the difference between a mid-fill and a realistic fill in crude β€” takes the entire edge to zero. And the profit that impressed us was concentrated in 2021–2023; the last 2.7 years are flat. A diversifier that only works in the past, at fills you won't get, is not a diversifier. No live or paper slot. Per our no-tuning rule, we did not go searching for a variant that survives β€” that search is how graveyards get robbed.

So the scoreboard's bottom line sharpens: three markets went in, and exactly one strategy came out. The uncorrelated-second-signal idea remains correct in principle β€” the combined-book math above is real β€” but the signal that fills that seat hasn't been found yet. When it is, it will have passed everything you just watched crude fail.

Method notes: identical engine and cost model across instruments (per-contract commissions + slippage baked in); fixed 216-configuration pre-declared grid per market; CPCV with 6 groups Γ— 2 test blocks and a 14-session purge/embargo; PBO by rank degradation across paths; deflated Sharpe with effective-trials clustering. Nothing on this page is trading advice; everything on it is reproducible from the methods described in this series.