TJR / ICT liquidity sweep + fair value gap: does it work?

The TJR model, closely related to ICT and "smart money" concepts, teaches one sequence: price sweeps a prior high or low (the liquidity sweep), a candle closes back through a short-term swing to confirm, and you enter on a pullback, often into a fair value gap (a three-candle price gap). Tickfloor coded that sequence and tested it.

What we ran

The rule was frozen before the results were read and run on all 23 crypto pairs with a complete cached history, at every closed 5-minute candle in the New York morning window (196,749 candles checked), using only data from 2024-03-01 to 2025-03-01. Costs were 0.10% fee per side plus slippage, with 5x slippage on stops, and a stop wins if a stop and target are hit in the same candle. The holdout data was never read.

What came back

The rule produced 24 trades: 1 reached its full target, 19 hit the stop and 4 expired. That is -21.068R in total and -0.878R per trade after costs (R is the amount risked on one trade), with a 95% interval of -1.830R to +0.075R. Both halves of the window lost, at -0.924R and -0.839R. A first look at five symbols had shown +5.102R from four trades; on the complete set the same rule lost.

VersionTradesTarget / stop / expiryTotalPer trade
Baseline, NY session, frozen rule241 / 19 / 4-21.068R-0.878R
Bias gate relaxed to 1h only658 / 52 / 5-55.011R-0.846R
No bias gate10815 / 87 / 6-84.853R-0.786R
Wider NY window485 / 35 / 8-25.436R-0.530R
London window3510 / 25 / 0-22.299R-0.637R
Fixed 2R target306 / 20 / 4-26.968R-0.899R

Loosening the rules gave more trades and a bigger total loss each time, and none of the variants were positive. Nothing came back positive, so there was no winner to correct for.

Against random entries

Each of the 24 trades was re-run with the same symbol, cost, stop and target ladder but a random day and time inside the same window. Across 10,000 matched portfolios the average was -0.857R per trade against the model's -0.878R, and 49.1% of them beat it. Randomising only the time of day, on the same days, averaged -1.183R, and 7.6% beat the model.

The wider grid

Separately, 270 tests of fair value gap fills, liquidity sweep reversals and market structure breaks (30 assets, 15-minute, 1-hour and 4-hour bars, nine exit settings, costs and per-asset slippage charged) had 0 survivors after Benjamini-Hochberg correction and none cleared the trade bar. The best row was a DOGE 4-hour fair value gap fill at +0.113R per trade, p=0.0875, which is what the best of 270 tries looks like by luck. Published backtests by StatOasis on SPY reported 648 backtests with 1 of 32 scores clearing t of 2 and no variant beating buy-and-hold.

Limits

The 24 trades are a small sample, the pairs are the ones with a complete cache rather than a point-in-time listing, and the test covers crypto, not the NQ and ES futures the teacher trades. The optimal trade entry (OTE) zone was not part of the 270-test grid, and order blocks cannot be tested as taught because no source gives a numeric rule. None of this is a claim about any individual trader.

How to check any price-action claim

General information only. It doesn't consider your objectives, finances or needs. Tickfloor holds no financial services licence and never places trades.

Does the TJR liquidity sweep and fair value gap strategy work?

Not in our tests. The frozen sweep, confirmation and pullback-entry sequence took 24 trades across 23 crypto pairs in a discovery window from 2024-03-01 to 2025-03-01 and averaged -0.878R per trade after costs. One trade reached its full target, 19 were stopped out and 4 expired.

Did it beat picking random entries?

No. Keeping each trade's symbol, costs, stop and target ladder but drawing a random day and time, 49.1% of 10,000 matched 24-trade portfolios did better than the model, which is what chance looks like. Random entries on the same day did worse, so the sequence may help with timing on days already chosen, but it did not pick better days.

Was it a wider test than one rule?

Yes. A separate grid of 270 tests (fair value gap fills, liquidity sweep reversals and market structure breaks, across 30 assets, three timeframes and nine exit settings, costs charged) had 0 survivors after Benjamini-Hochberg correction. The best row, a DOGE 4-hour fair value gap fill, showed +0.113R per trade at p=0.0875.

Does this prove the method never works?

No. The replay is discovery-only, crypto-only and small (24 trades, so the 95% interval of -1.830R to +0.075R is wide). Order blocks are not testable as taught because no source gives a numeric rule, and the optimal trade entry (OTE) zone was not tested by the 270-test grid. The result shows no edge in what we could code, not that no trader anywhere has one.

Is this financial advice?

No. This reports a backtest of a publicly taught rule. General information only, not personal advice.

The numbers come from Tickfloor's research log; the method and every strategy result are on the evidence page, and the wider strategy family index lists the rest.

Other claims we tested

How Tickfloor compares

See a full worked example, free, no account. Or start lesson 1 of the course, also free.