You’ll learn: using the ES-NQ spread as a signal, a 20-bar z-score
reversion trigger, a weekly COT positioning bias, a 30-bar rolling
correlation gate, trading ES outright, and exits at the mean or a dollar
stop. Time: about fifteen minutes.
The idea, in plain English
Four conditions working together to time an ES trade:- The instrument — you trade ES outright, one market.
- The signal — the ES minus NQ spread, tracked as a single series so you can measure how stretched the relationship is.
- The trigger — when the spread’s 20-bar z-score climbs above +2, ES is unusually rich versus NQ, so short ES, betting the stretch snaps back.
- The bias — only when commercials are net short ES in the weekly Commitment-of-Traders report (the hedgers’ positioning agrees with the fade).
- The gate — only when the two markets’ 30-bar rolling correlation is above 0.8 (they’re moving together tightly enough for the spread signal to mean something).
- The exits — cover when the z-score returns to 0 or on a $1,000 stop.
Why trade ES alone, not the two-leg spread? A spread built from two
different markets (ES and NQ) can’t be traded as a single instrument here —
the engine trades same-root calendar spreads only (e.g. two CL contract
months). So you use the ES-NQ spread purely as a signal and express the
trade in one liquid leg, ES. You still fade the same stretch — you just place
one order instead of two.
Step 1 — Describe it
Type it as one connected idea. AskFutures handles the spread construction, the z-score window, the weekly COT lookup, and the correlation gate from this single description:Trade ES. When the ES-NQ spread’s 20-bar z-score exceeds +2 and commercials are net short ES in the weekly COT, short ES; cover when the z-score returns to 0 or on a $1,000 stop. Only when the 30-bar rolling correlation between ES and NQ is above 0.8.
Step 2 — Read the strategy card
There’s a lot packed into this one. Walk the card top to bottom and confirm each piece.1
Markets
One market is traded — ES. NQ is only read (never traded) to build
the ES-NQ spread signal and the correlation gate, and ES COT is read for the
positioning bias. See futures & symbols.
2
The spread signal
ES - NQ, built as a single series the z-score is measured on. This is the
signal that times your ES trade — not an instrument you trade directly.3
Entry trigger
Short ES when the spread’s 20-bar z-score is above +2 — two standard
deviations rich versus its own recent average.
4
COT bias filter
Commercials net short ES in the weekly report. COT is a
1w source, so the
weekly positioning is held constant across the bars inside that week. See
where data comes from.5
Correlation gate
30-bar rolling correlation between ES and NQ above 0.8. When the two
decouple, the spread stops mean-reverting reliably — so the gate stands the
strategy down.
6
Exits
Cover ES at the mean (z-score returns toward 0) or a $1,000 stop —
whichever comes first. See risk & trade
management.
Step 3 — Backtest and read the results
Backtest it.With four conditions stacked — and one of them a slow weekly COT bias — expect a small number of trades. That’s expected for a selective reversion strategy; the filters are doing exactly what you asked. What to check, in order:
Did it trade at all?
Did it trade at all?
Four filters can leave you with very few — or zero — trades. If it’s too
sparse to judge, relax one gate (correlation above 0.7, or z-score above 1.5)
and re-run.
Mean vs stop exits
Mean vs stop exits
Mostly
cover at mean exits is the shape you’re hoping for — stretches that
snapped back. A run of stop exits suggests ES kept running rich versus NQ,
often a sign the correlation gate let through a regime that was actually
breaking down.Did the COT bias help?
Did the COT bias help?
Compare against a version with the COT filter removed (next step) to see
whether the positioning bias actually earned its place.
Step 4 — Iterate
Change one condition at a time and compare versions to isolate what each filter contributes.Remove the COT filter and backtest again.
Loosen the correlation gate to 0.7.
Use a z-score threshold of +1.5 instead of +2.
Also take the long side: buy ES when the z-score drops below -2.
Optimize the z-score threshold and the correlation gate.Handing the z-score level and correlation threshold to the optimizer is the natural way to map out which combinations would have held up — without running each one by hand.
Next steps
Where data comes from
How COT, correlation, and continuous-contract data are sourced and aligned.
Signals & indicators
Z-score, rolling correlation, and the spread builder explained.
Version & compare
Run the strategy with and without each filter, side by side.
Is the backtest real?
Why even a complex strategy produces the same numbers every time.