Five SMC strategies. None beats buying a pullback.
We coded five widely taught SMC/ICT setups rule by rule, then tested them on two years of gold in one-minute candles, on V75 and on five synthetic indices. On gold, some of them make money. But a control with no concepts at all, which simply buys a pullback in the trend with the same risk and the same costs, makes as much. What pays is the gold trend (+76% over the period), not the concepts.
The five setups
| Setup | What it looks for |
|---|---|
| Sweep + MSS + FVG | a liquidity sweep, then a market structure shift, then an entry on the fair value gap (FVG) left by the impulse |
| Sweep + BPR | a sweep, then an entry on the zone where a bullish and a bearish FVG overlap (BPR) |
| SMT + MSS + IFVG | a gold/silver divergence (gold sweeps its low, silver does not), a structure shift, then an inverted FVG |
| SMT + MSS + breaker | the same divergence, a structure shift, then a return to the breaker block (the last opposite candle before the impulse) |
| Sweep + MSS + breaker + FVG | a sweep, a structure shift, and the confluence of a breaker block and an FVG |
The rules, the same for all
- Bias: on H4, a close above a 50-candle exponential moving average whose 6-candle slope is positive (long bias), or the reverse. Trades are only taken with the bias.
- Sweep: on M15, the wick goes beyond the low (or high) of the previous 20 candles and the close comes back across.
- Structure shift: within the next 4 candles, a close beyond the extreme of the 10 candles before the sweep. FVG: a gap between candle k − 2 and candle k, after an impulse candle of at least 1.5 ATR.
- Entry: a limit order on the zone, placed only after the confirmation candle, valid for 20 candles.
- Stop behind the swept extreme (plus 0.1 ATR); target at twice the risk. Gains are counted in R: +1 R means winning once what was risked.
- Resolved minute by minute; if stop and target fall in the same minute, the stop counts. A trade neither stopped nor won after 3 days counts as 0 R.
- Costs: $0.30 per round trip on gold, 2.0 points on V75, the real spread of every minute on the FX Vol indices.
The control: the question that matters
Gold moved +76% between July 1, 2024 and June 26, 2026. In a market like that, almost any buy ends up a winner. Asking whether a setup "makes money" therefore says nothing. The real question is: does it do better than any pullback buy in the same trend?
The control picks a random candle while the H4 bias is active, places a limit order a little below the price (1, 1.5 or 2 ATR), with stops drawn from the setup's own stop distribution, the same target, the same costs and the same resolution. It is replayed 400 times per setting. p is the share of those controls that do at least as well as the setup; of the three settings, we keep the one that favours the setup.
Results on gold
July 1, 2024 → June 26, 2026, 705,436 one-minute candles, silver as the divergence partner (correlation of hourly returns: 0.76).
Mean gain per trade: each setup and its control
R per trade, costs deducted · hover a row
See the full table
| Strategy | Trades | Mean gain | Control | p | Out of sample (30%) | Verdict |
|---|---|---|---|---|---|---|
| Sweep + MSS + FVG | 66 | +0.254 R | +0.218 R | 0.41 | +0.635 R (n = 20) | does not beat the control |
| Sweep + BPR | 357 | −0.005 R | +0.344 R | > 0.99 | −0.006 R (n = 107) | does not beat the control |
| SMT + MSS + IFVG | 28 | +0.237 R | +0.297 R | 0.57 | +0.311 R (n = 9) | does not beat the control |
| SMT + MSS + breaker | 41 | +0.061 R | +0.399 R | 0.85 | −0.027 R (n = 12) | does not beat the control |
| Sweep + MSS + breaker + FVG | 39 | +0.221 R | +0.226 R | 0.49 | +0.484 R (n = 12) | does not beat the control |
- The three "positive" setups (+0.25, +0.24 and +0.22 R per trade) earn what their control earns (+0.22, +0.30 and +0.23 R). They capture the trend, nothing more.
- The most frequent one, Sweep + BPR (357 trades), earns nothing: −0.005 R per trade, while the control makes +0.34 R. Stacking opposite FVGs creates no edge.
- The gold/silver divergence adds nothing despite a real correlation: p = 0.57 and 0.85, on only 28 and 41 trades.
On markets without a trend, it gets worse
The FX Vol 20 to 99 synthetic indices have almost no trend: even the control has nothing to harvest there. We replayed the same rules over five months (January 10 to June 11, 2026), with the real spread of every minute, then on a locked month never looked at (June 12 to July 12, 2026). Only Sweep + BPR fires often enough to conclude; the other two setups make 3 to 13 trades in five months.
Sweep + BPR on five synthetic indices
R per trade, real spread deducted · n: trades in test / in the locked month · hover a row
See the table
| Index | Test: trades | Test: mean gain | p vs control | Locked month: trades | Locked month: mean gain | t |
|---|---|---|---|---|---|---|
| FX Vol 20 | 148 | +0.028 R | 0.71 | 31 | −0.533 R | −2.64 |
| FX Vol 40 | 136 | −0.065 R | 0.75 | 28 | +0.047 R | +0.17 |
| FX Vol 60 | 127 | −0.064 R | 0.87 | 31 | −0.037 R | −0.15 |
| FX Vol 80 | 137 | −0.200 R | > 0.99 | 23 | −0.421 R | −0.62 |
| FX Vol 99 | 146 | −0.089 R | 0.84 | 20 | −0.415 R | −1.51 |
In test, it never beats the control (p from 0.71 to 0.997, 300 controls per setting). On the locked month, it loses on 4 indices out of 5, down to −0.53 R per trade on FX Vol 20 (t = −2.64). Divergence is impossible there by construction: these indices are independent (maximum hourly correlation between them: 0.02).
And on V75, with new data
On V75, the original study only had June 5 to July 10, 2026. Sweep + BPR made +0.27 R per trade there over 33 trades, as much as its control (+0.27 R, p = 0.51). The other two setups made only 2 and 1 trades.
Why
SMC concepts describe a chart very well after the fact: there is always a sweep before a reversal and an FVG in an impulse. Coded in advance, with costs, they predict nothing beyond the trend itself. What pays on gold is buying a pullback when the market is rising, and that needs none of these words.
Limits
- SMC concepts have no official definition. Ours is public and mechanical; another one would give other numbers, and would need the same control.
- Two years of gold in a strong rise (+76%): the pullback-buy effect itself has never been checked on a falling or trendless gold.
- Discretionary trading "in context" cannot be tested this way. But what cannot be tested cannot be proven either.
- The control was not replayed on the new V75 data; there, the setup is only compared with zero.
- With a target at three times the risk, the positive setups earn more (raw outputs); but the control was only replayed with the 2R target, and the 3R comparison remains to be done.
What would change our mind
A mechanical definition of an SMC setup (entry, stop, target) that beats this control with p < 0.05, then holds on data nobody has looked at. Send us yours: we will test it in this same frame and publish the result, whatever it is.
Redo the computation
- Code: the original scripts (
smc_lab.py,fxvol_lab.py) re-run unchanged; their gold and FX Vol outputs are identical, line for line, to the August 2026 ones (sortie_or.txt,sortie_fxvol.txt,sortie_v75.txt). - Seed: 11; 400 controls per setting (300 on FX Vol). Every number on this page is in
resultats.json. The code will be published with the Norvane Research studies repository.