You can backtest NQ for free in a browser: define one model, replay historical sessions bar-by-bar, log every decision before you see the next candle, and read the expectancy after fifty trades. No data subscription, no platform install. What follows is the exact process.
Step 1 — Pick one model, not a style
"I trade ICT" is not testable. "I take the AM Silver Bullet long when the 10:00–11:00 window retests an unmitigated bullish FVG formed after 09:30, in line with the 15-minute bias" is. One model per test. Anything else and you can't attribute the result.
Step 2 — Write the rules down before the first session
- — Bias rule: what defines direction, and on which timeframe.
- — Trigger: the exact event that makes you eligible to enter.
- — Entry: the price level and the order type.
- — Stop: a structural level, not a point count.
- — Targets: T1 and T2, defined as liquidity, plus your partial rule.
- — Filters: sessions you trade, sessions you skip, news handling.
Step 3 — Choose the sessions honestly
Do not cherry-pick trend days. Take a continuous block — for example every trading day of two consecutive months — so chop, news days, and holidays are represented in the same proportion your live account will meet them. Around 50 sessions is the smallest sample that says anything.
Step 4 — Replay bar-by-bar, never fast-forward
Set the chart to the session open, mark your reference levels, then advance one candle at a time. Before revealing the next candle, say out loud whether you're in, out, or waiting. Fast playback is the single biggest source of fake backtest results: you skip the exact bar that would have stopped you out.
Step 5 — Log every trade the same way
- — Date, session, and the model you were trading.
- — Entry, stop, target, and the R multiple achieved.
- — Whether the setup was A+ or a compromise.
- — One sentence on why you took it — written before the outcome was known.
Step 6 — Read the stats, then change one thing
Compute win rate, average R, expectancy per trade, and max consecutive losers. Expectancy is the number that matters: win rate times average win minus loss rate times average loss. If it's positive, size the model. If it's negative, change exactly one rule — the session filter, or the entry level — and re-run the same sessions. Changing three rules at once teaches you nothing.
The honesty rules
- — No scrolling back to "check" what happened before you decide.
- — No skipping a session because it looked ugly at the open.
- — No moving a stop that your written rules didn't allow.
- — No counting a trade you would not have taken at 09:31 in real time.
A backtest you can't reproduce from your own notes is not a backtest. It's a memory.
Doing it here, for free
The replay trainer draws killzones, fair value gaps and previous-day liquidity automatically, accepts market, limit and stop orders with multiple take-profits, and writes every fill into the journal with the R multiple computed. Open a session, step forward, and your stats build themselves.
