0DTE Iron Butterfly
The only strategy in the book carrying its own weight. Expectancy +$78.47/trade across the full 37-trade ledger, 70% win rate. Paper.
Anyone can show you a winning backtest. Almost nobody shows you the losers, which is exactly why you have no reason to believe the winners. So here is the whole table — every strategy we built, what it actually made or lost, and the sample it was measured on.
The two that survived are worth more to you because you can see the ten that didn’t.
Every P&L figure on this page is PAPER. The 0DTE book is 37 closed trades over 7 weeks. That is not a track record and we will not call it one.
Beat modelled friction out-of-sample on real bars, with commissions at the correct contract multiplier.
The only strategy in the book carrying its own weight. Expectancy +$78.47/trade across the full 37-trade ledger, 70% win rate. Paper.
Closing before ~13:30 ET instead of 15:45. Our ledger splits hard by exit window: 09:30–12:00 made +$1,467.59 at 82% wins; 12:00–13:30 made +$2,049.99 at 76%; 13:30–16:00 LOST −$614.01 at 44%. 0DTE carries roughly 45× the gamma of a 45-day option and it is ~5× worse in the final two hours. The caveat we publish rather than bury: 13:30 sits just before a cluster of exits, so the exact peak is partly a sample artifact. The robust claim is 'cut before ~13:30', not '13:30 precisely'.
Measured, lost, and switched off. Standing down and trading nothing beat every single one of these.
The most elaborate model we built and the worst performer in the set. More factors did not mean more edge.
Trading nothing at all ($0) beat it by $3,828.
A faithful implementation of the most widely taught discretionary method we could find. Losing at t = −3.86 is not bad luck — it is statistically reliable failure.
Mechanical mean reversion into chop. Every fade variant we tested lost money.
Fading the most-watched levels on the chart. Being obvious is not the same as being profitable.
Tested two independent ways. An ATM butterfly is a theta trade — price wanders off, then decay drags P&L back. 5 of 7 losers recovered on their own, so rolling locks in the loss right before the bounce. We also found the trigger itself was broken: 'within 8 points of a short strike' is true from entry on 505 of 505 days for an ATM fly. Built, measured, and deliberately left unwired.
We logged 14 reversion days in shadow mode and scored every one against real ES 1-min bars. The cutoff does not rescue them. Skipping these days is the correct behaviour.
A small loss is still a loss. Stand-down beats it.
The closest any trend strategy came to breaking even — and it still did not.
This is the entry that explains why this page exists. Gating trades on the day's regime scored +$1,671 — until we rebuilt it to use only the bars available at decision time. The honest version loses $2,045. A $3,716 swing produced entirely by letting the model see the future. Any regime gate must be causal, and most backtests you will be shown never check.
Refused a verdict on purpose. Note that one of these is POSITIVE — we are not going to bank a flattering result off eight trades just because it points the right way.
Positive, and meaningless at n = 8. We are not going to dress up eight trades as an edge.
One trade tells you nothing. It is listed because leaving it out would be curation.
The only fade variant that made money, on a single trade in seven weeks. That is noise wearing a decimal point, not a strategy.
Showing what feeds a score is transparency, not validation. So we replayed the live X-Ray engine across 12,600 historical days on 30 tickers — each replay seeing only the bars available on that day — and measured what happened over the next 10 sessions.
A higher edge score did not lead to a better outcome. Rank correlation between score and forward return was -0.034 — effectively zero. Setups the engine flagged returned 0.188% (t = 0.88), while simply holding the same names over the same days returned 1.039%. Our signals did worse than doing nothing.
| Held | Our flagged setups | Just holding | Rank corr. |
|---|---|---|---|
| 3 sessions | -0.06% t=-0.52 | +0.315% t=7.71 | -0.009 |
| 10 sessions | +0.188% t=0.88 | +1.039% t=13.8 | -0.034 |
| 20 sessions | +0.697% t=1.97 | +2.129% t=18.84 | -0.024 |
Every column tells the same story. Doing nothing beat our signals at 3, 10 and 20 sessions, and the rank correlation sits at roughly zero throughout. We checked more than one horizon precisely because a result that only appears at one is the definition of curve-fitting.
Read the t column, not the percentages. Anything under 2 is not distinguishable from luck. The 60–69 bucket is negative; the 70+ bucket, our most confident readings, is flat. So what is Proof for? Not prediction. It is a structured read of where price sits, what would invalidate the idea, and what the wider tape is doing — and it says NO TRADE on roughly 8 of every 10 names precisely because most setups are not there. This table is why we will never print a probability next to that score.
Limits, stated plainly: 10 sessions, one basket of 30 liquid names, about two years, mostly a rising market. A different horizon or basket could give a different answer — the universe and the method are both in the repo so you can check. NO TRADE rows are not direction-adjusted (there is no direction to adjust to), so their mean is simply market drift. Compare them against the baseline, never against the directional verdicts.
A strategy is marked SURVIVED only if it beats modelled friction out-of-sample on real bars, with commissions at the correct contract multiplier. Anything scored on a handful of observations is published as NOT ENOUGH DATA rather than given a number it has not earned.
Sample: 0DTE ledger 2026-06-10 → 2026-07-27 · 505 days of real 1-min ES for out-of-sample backtests · 48 days for the fade lab
The TauricResearch/TradingAgents desk run is still unmetered and has NOT been run. Nothing on this page comes from it. These are our own strategies, scored against our own money.
The X-Ray shows you every factor behind a score and tells you to WAIT when there is no edge. Free, no card, no signup.
Check my ticker →Most people never measure the one that actually cost them — which is exactly why it happens again. Bring a single trade you still haven’t explained to yourself and you’ll get back whether the process was broken or the loss was simply valid, plus the one rule that would have caught it. No score designed to flatter you. No email, nothing saved, nothing sold.
Debrief the one you regret →Research and commentary only — not investment advice, and not a recommendation to buy or sell anything. We are not licensed advisers. Past results, paper or live, do not predict future results. Trading involves risk of loss.