Anyone else notice that the more ICT boxes I draw, the more the market politely refuses to care? My charts look like a gluten-free lasagna layered with order blocks, FVGs, Judas swings, killzones, PD arrays, and the occasional existential crisis. So, instead of adding a fourth monitor and a fifth colored rectangle, I’m proposing a measurable, code-able version of ICT concepts we can actually backtest without holy water.
Here’s the challenge: can we turn ICT into rules a computer can’t laugh at? Specifically:
Objective definitions you’d bet a prop account on
- Fair Value Gap (FVG): 3-candle pattern where for bullish FVG, low of candle 3 > high of candle 1 by at least x ticks, displacement candle has body >= y% of range, and volume z-score > k. Valid until midpoint is tagged or structure shifts.
- Order Block (OB): last bearish candle before a displacement that breaks prior swing high by a close, not a wick. OB valid if displacement magnitude >= ATR(n) and is unmitigated.
- Liquidity Sweep: prior swing high/low taken by wick only, with close back inside range within m bars and a volume/delta spike or spread expansion proxy.
- SMT Divergence: within a window t (e.g., 5-20 minutes), instrument A prints HH while correlated instrument B does not, with correlation > 0.7 over lookback L.
- Bias: HTF bullish if previous day’s range closes above its mid, or if we’ve made a higher high and higher low on 1H with a close beyond structure. Alternatives welcome that don’t require divination.
Entry/exit rules that don’t rely on hindsight
- Only trade the first FVG retest after a sweep in the killzone, aligned with HTF bias, provided the FVG sits in discount/premium of the daily dealing range.
- Stop loss beyond the sweep level or OB extreme, whichever is farther.
- Partial at 1R/2R, BE after 1R, leave a runner to opposing liquidity, or trail behind swing lows/highs.
- Max two trades per session per instrument because prop daily drawdown is not a suggestion.
Killzones and the vampire problem
- London 2:00-5:00 NY time and NY 9:30-11:30. How are you handling DST shifts in backtests?
- Anyone tested whether killzones actually add edge after fees, or are we just cosplaying as institutions with insomnia?
Instruments and data issues
- FX spot vs futures vs CFDs: differences in FVG/OB detection due to feed and wick variance.
- ES/NQ vs DXY/EURUSD for SMT. Stable pairs that don’t ghost you mid-session?
- Crypto 24/7: do ICT concepts survive weekends or do they turn into pumpkin soup?
Baselines and humility checks
- Compare to dumb-but-effective baselines: opening range breakout, VWAP pullback, 20-day breakout, buy-Tuesday-sell-Thursday.
- Evaluate expectancy, trade frequency, R-multiple distribution, MAE/MFE, and edge after fees/slippage.
Robustness, not romance
- Walk-forward or cross-validation by regime: pre-2016, 2016-2019, 2020-2022, 2023-present. If the edge only works during meme-stock season, say so.
- Sensitivity to spread/slippage: FX vs micro futures; retail brokers with “innovative” pricing.
- Data snooping: one parameter set across assets, or is every symbol its own snowflake?
Props and pain
- For those passing challenges with ICT rules, what’s your daily/overall drawdown buffer, max consecutive losses tolerated, and average R per session?
- Does “first FVG after sweep” keep you within prop risk limits, or does it turn your dashboard into a Christmas tree?
Coding bits (because screenshots aren’t research)
- Has anyone open-sourced detection for OBs/FVGs with the criteria above? Python/pandas or Pinescript is fine; I’ll translate.
- Proxy for “displacement” that’s not just “big candle go brrr”: e.g., body-to-ATR ratio with volume z-score.
- SMT logic that’s not hindsight-prone: windowed HH/HL comparisons with timestamp alignment and correlation filter.
Finally, for the true believers and the skeptics: if we run a 10-year out-of-sample test on ES, NQ, and EURUSD with the rules above, what’s your over/under on expectancy after fees? Winner gets to name the next PD array. Loser has to delete three rectangle tools from their platform.
If you’ve got stats, code, or even “I tried this and it set my account on fire” stories, drop them. Bonus points for results that survive fees and don’t require divine intervention between 2:00-2:07 AM.