How to Backtest ICT Strategies: Rules, Samples and Review
Build a repeatable process for backtesting ICT ideas in TradingView Replay, including fixed rules, chronological samples, costs, out-of-sample checks and the limits of inferring an edge from historical results.
Framework note: ICT terms are interpretations of price action, not proof of institutional motives or a market algorithm’s intent. No setup is guaranteed. Test clearly defined rules, account for costs and slippage, and use risk limits before risking capital. Read our editorial policy.
Backtesting estimates how a written strategy would have behaved on a historical sample; it does not prove future profitability. A sample of 100 trades can provide useful descriptive statistics, but estimates remain uncertain and depend on selection rules, market regime and execution assumptions. Report win rate, average R, drawdown and sample size as estimates, not guarantees.
What You Need to Backtest
You need TradingView Premium (or free with limitations) for replay mode, a backtesting journal in Google Sheets or Excel with columns for date, pair, setup, entry, stop, target, result, and emotions, and your exact rules written down including entry criteria, exit criteria, risk per trade, and killzone rules.
The ICT Backtesting System
Step 1: Choose ONE strategy to backtest. Do not mix strategies. Options include Silver Bullet, Order Block plus FVG confluence, Breaker Block reversals, or SMT Divergence setups. Step 2: Set up TradingView Replay. Open TradingView, select your pair, click replay, set date 6 months ago, and hide future candles. Step 3: Mark higher timeframe structure including daily dealing range, daily bias, BSL and SSL levels, and current trend before moving bar by bar.
Backtesting Rules (Critical)
No cheating -- do not look ahead at future candles or change rules mid-backtest. Skip nothing -- record every triggered setup including losing ones. Be honest about emotions even in backtesting. Track everything including setup type, entry, stop, target, result, R:R, whether rules were followed, emotions, mistakes, and market condition.
Backtesting Statistics to Calculate
Win rate: wins divided by total trades times 100. Expectancy: (win rate times average win R) minus (loss rate times average loss R). A positive expectancy equals a profitable strategy. Maximum drawdown: largest peak-to-trough decline. Profit factor: gross profits divided by gross losses. Above 1.5 is good. Above 2.0 is excellent.
ICT-Specific Backtesting Focus
Test these specific questions: What percentage of wins came during killzones vs outside? Which PD array had the highest win rate -- OB, FVG, or Breaker? What was your win rate buying in discount vs premium? What was your win rate trading WITH daily bias vs against it? Results will show which filters to require and which to exclude.
Common Backtesting Mistakes
Curve fitting: adjusting rules to fit historical data perfectly creates a strategy that fails in the future. Small sample size: 20 trades tells you nothing. Only cherry-picking winners: test every valid setup. Only testing bull markets: test across all conditions. Not simulating execution: subtract 1-2 pips from every win to simulate real spread costs.
Use a schedule that fits the sample and review process, but do not treat eight weeks, 100 hours or a fixed trade count as proof of an edge. After choosing rules, run a chronological holdout or forward test, include costs and monitor whether live execution matches the assumptions.
Worked hypothetical example
For a hypothetical FVG test, define a bullish gap using the same three-candle rule on every chart. Set one fixed session window, the same entry trigger, a stop based on a written invalidation rule and an exit rule. Replay each eligible setup in chronological order and save a screenshot before revealing later candles.
Failure case and what to test
If you change the definition after a losing sample, skip days without a setup or use a different stop when a chart looks unusual, the test no longer measures one strategy. A small winning sample can also be random and may not survive spread, slippage or a different market period.
Test checklist
- Write entry, invalidation, exit, session and exclusions before replay.
- Log every eligible case, including no-fill and no-trade cases.
- Separate development data from a later out-of-sample review.
RELATED READING
Continue with guides selected for overlapping concepts and practical context.
