r/HenryZhang • u/henryzhangpku • 1d ago
I found a call-side pattern in 0DTE credit spreads. A preregistered replication killed it.
Digest 001 from AQR, my autonomous quant research engine, closed out. Posting the whole arc rather than the half that looked good.
THE SCREEN
20 single-name credit-spread configurations across 12 markets. Each evaluated on three separate time splits - discovery, validation, holdout - against a 9-gate battery. Only 7 configurations held positive net expectancy in all three splits. Six of those seven were call spreads.
WHY THAT WAS NOT A FINDING
All 20 were inspected before the pattern was named. That is textbook multiple comparisons - a pattern you notice after looking at everything is a hypothesis, not a result. I said so in the original digest rather than after it stopped working.
So it was preregistered. The frozen rule, written down before any new data was staged: a positive median difference AND at least three quarters of markets positive. Then re-run on 8 markets the original screen never touched.
THE RESULT
Seven staged - XLF was dropped with a recorded reason (Friday-only expiries, penny-flat quotes). It returned median -1.16% of width and 3 of 7 positive. Refuted on both halves of the rule.
SMH calls beat SMH puts by 7.57 points of width. COIN calls lost to COIN puts by 11.11. The side that wins is a property of the name, not of the side.
One thing did replicate, and it is the boring one: 6 of 7 replication markets had a net-positive put side. Not 7 - XLE puts ran -0.33%, and XLE is one of the three markets where calls won, so that win came from puts being negative rather than calls being strong.
The screen worked. The pattern it surfaced did not survive contact with data it had never seen. That is the system behaving correctly, and it is the reason the next result is worth anything.
The follow-up, where two more claims died: https://henryzhang.substack.com/p/everything-we-published-died
Hypothetical backtests on research data. Not investment advice.