Chapter 3 of 9

Manual and tool backtesting

Testing a setup bar by bar and with software, without fooling yourself.

Backtesting applies your rules to past data to see how they would have performed. It's the fastest way to find out whether an idea has any edge at all, and the easiest place to fool yourself.

Manual backtesting

For discretionary methods such as SMC and ICT, the most reliable approach is manual: step through historical charts bar by bar, without seeing the future, and record every trade your rules would have taken.

  1. Use bar replay (TradingView's Replay, or your platform's equivalent) so future candles are hidden.
  2. Pick a fixed period and market, and go through every day in it, not just the days you remember.
  3. Log each trade: date, setup, entry, stop, target, result in R, and a screenshot.
  4. Include costs: subtract spread and commission from every result.
  5. Aim for at least 50–100 trades before drawing conclusions.

Tool-based backtesting

Rules that can be coded exactly, such as a moving-average cross or a time-based breakout, can be tested automatically with TradingView's strategy tester (Pine Script) or MetaTrader's Strategy Tester (chapters 7 and 8). It's fast and consistent, but only as good as the code and the data.

The traps

TrapWhat happensDefence
Look-ahead biasUsing information that wasn't available at the timeBar replay; enter only on closed candles
Over-fittingTuning rules until they match the past perfectlyKeep rules simple; test on unseen data
Small sampleA great result from 15 trades50–100+ trades across different conditions
Cherry-pickingTesting only memorable days or obvious setupsTest every day in the period
Ignoring costsResults that vanish after spreads and commissionSubtract real costs from every trade
In-sample: rules tuned hereOut-of-sample: new dataSimulated: a strategy over-fitted to the first 100 trades
The classic over-fitting signature. Always keep some data aside that you never used to design the rules, and test on it last.

Key takeaways

  • Backtesting applies your rules to past data to measure whether there's an edge.
  • Manual bar-by-bar replay suits discretionary methods; coded tests suit mechanical rules.
  • Avoid look-ahead bias, over-fitting, small samples, cherry-picking and ignoring costs.
  • Keep unseen data aside and test on it last; aim for at least 50–100 trades.