Studies CRT series

Not this time

CRT 4H (New York candles) on XAUUSD

CRT on 4H New York candles, written as fixed rules and tested on XAUUSD 5-minute data from October 2021. In the out-of-sample windows (May 2023 to Oct 2026) it took 291 trades and averaged +0.065R per trade, +18.8R in total, before trading costs. 4 of 5 test windows made money. Verdict: reject. Not this time. One of 24 CRT tests.

One of 24 tests in a study series. See all 24 side by side
Instrument
XAUUSD
Timeframe
M5
Period
Oct 2021 – Oct 2026
Status
Complete
Published
26 Oct 2026
Engine run
run_b6d38b00a3
Out-of-sample result

Result

Before trading costs Out-of-sample
Engine verdictBefore trading costs Out-of-sample
Not this time

Rejected: 80% probability the true Sharpe is above zero (one fixed rule set was tested, so there is no search to deflate for); p = 0.683 against block-bootstrapped price series. Also failed: robust to resampled trades

What the verdict means
Expectancy+0.065Raverage result per trade, in units of risk
Total+18.8Rsum of every out-of-sample trade
Trades291out-of-sample trades taken
Win rate41.6%share of trades that made money
Profit factor1.10gross profit divided by gross loss
Max drawdown−19.9Rworst fall from a peak

Out-of-sample equity

Before trading costs Out-of-sample
0R
+10R
+20R
+30R
−20R
May 2023202420252026Oct 2026
Cumulative R, out-of-sampleDrawdown from peakworst −19.9R

The walk-forward test windows stitched end to end, in R (one R is the amount risked on a trade). No trade on this curve was used to choose the parameters that took it.

Method

4-hour candles on the new york clock (01:00, 05:00, 09:00, 13:00, 17:00, 21:00), built from 5-minute bars. C1 is a candle, C2 the next one. If C2 trades beyond one side of C1 only and closes back inside it, the trade is the other way: enter at the open of the 09:00 or the 13:00 New York bar, stop at C2's wick, target at C1's other side, flat at the close of the next 4-hour candle: 13:00 for the 09:00 entry, 17:00 for the 13:00 entry. Pairs: the key times only: C1 is the 01:00 or the 05:00 candle and C2 the one after it. Only setups with at least 1:1 planned reward to risk at C2's close. One position at a time, at most 2 trades a day. 1% risk per trade. Every rule was written down before the test and nothing was optimised.

Data: the broker's MetaTrader 5 5-minute bars, 1 October 2021 to 26 October 2026. A signal fills at the next bar's open; if one bar touches both the stop and the target, the stop counts.

The test is a rolling walk-forward with five folds, each a training window of about 19 months and a test window of about 8 months; only trades in the test windows (May 2023 to October 2026) count. Nothing was fitted in the training windows because nothing was tunable. Results are in R, the amount risked per trade, before trading costs.

This is one of 24 CRT tests (4 timeframes, 2 markets, 3 reward-to-risk floors). With that many, one can look good by chance alone.

Verdict: reject. Not this time. Out of sample, these rules averaged +0.065R per trade over 291 trades on XAUUSD, +18.8R in total, and 4 of 5 test windows made money. All figures are before trading costs. This is one of 24 CRT tests; see studies/crt/report.md for all of them side by side.

Run run_b6d38b00a3, IDFX engine, 26 October 2026. Rules: studies/crt/rules.md.

The idea

Take one candle as a range (C1). If the next candle (C2) trades beyond one side of it, sweeping the orders resting there, but then closes back inside the range, the move failed. CRT trades back towards the other side of the range, with the stop at the sweep's wick, and expects the move in the candle after that (C3).

CRT (Candle Range Theory) is popularised by the trader known as Romeo (@Romeotpt on X). Its sweep-and-reclaim idea builds on "Turtle Soup" by Linda Raschke and Larry Connors (Street Smarts, 1995), which ICT later adapted. The rules here are one precise reading of CRT, written down before the test; community descriptions differ in the details.

The rules, exactly as tested

Every rule was written down before the test and none was optimised.

  • Candles: 4-hour candles on the New York clock (01:00, 05:00, 09:00, 13:00, 17:00, 21:00), built from 5-minute bars.
  • Pairs: the key times only: C1 is the 01:00 or the 05:00 candle and C2 the one after it.
  • Short: C2's high goes above C1's high, C2's low stays at or above C1's low, and C2 closes back inside C1. Long is the mirror image. Both sides swept, or a close outside C1: no trade.
  • Minimum reward to risk: 1:1, measured at C2's close (distance to the target ÷ distance to the stop). The target is not moved; a setup offering less is skipped.
  • Entry: market, at the open of the 09:00 or the 13:00 New York bar.
  • Stop: C2's wick (its high for a short, its low for a long).
  • Target: C1's other side (its low for a short, its high for a long).
  • Time exit: the close of the next 4-hour candle: 13:00 for the 09:00 entry, 17:00 for the 13:00 entry (the end of C3), if neither stop nor target was hit.
  • Trades: one position at a time, at most 2 trades a day; a setup that comes while a trade is open is skipped. 1% of the account at risk per trade.

Data and test

  • XAUUSD (gold), 5-minute bars from the broker's MetaTrader 5 feed, 1 October 2021 to 26 October 2026, stamped on the broker's New York-close clock.
  • A signal fills at the next bar's open. If one bar touches both the stop and the target, the stop counts.
  • Rolling walk-forward, five folds; only the test windows count. Nothing was fitted in the training windows, because every rule was fixed.
Fold Training window Test window Trades Average per trade
1 Oct 2021 – May 2023 May 2023 – Jan 2024 55 +0.074R
2 Jun 2022 – Jan 2024 Jan 2024 – Sep 2024 51 +0.283R
3 Feb 2023 – Sep 2024 Sep 2024 – Jun 2025 57 +0.026R
4 Oct 2023 – Jun 2025 Jun 2025 – Feb 2026 67 +0.149R
5 Jul 2024 – Feb 2026 Feb 2026 – Oct 2026 61 -0.183R

Results (out of sample, before trading costs)

Trades 291 (about 84 a year)
Win rate 41.6%
Average result per trade +0.065R
Profit factor 1.10
Total +18.8R
Worst peak-to-trough fall 19.9R (19.0% of the account at 1% risk)
Longest losing streak 14 trades
Test windows that made money 4 of 5

How the trades ended: 133 stop, 106 at the end of C3, 52 target.

Longs and shorts: longs 144 trades, -0.117R each, -16.9R; shorts 147 trades, +0.243R each, +35.7R.

By setup: 09:00: 170 trades, +30.9R; 13:00: 121 trades, -12.1R; other (after a market break): 0 trades, +0.0R. This split was looked at after the test. It is an observation, not a rule: trading only one of the setups would be a new strategy that needs its own test on data it has not seen.

Planned reward to risk at the fill: median 1.99, middle half 1.43 to 3.11. 0 trades filled below 1:1 because the next bar opened a little away from C2's close.

Gap cases (pre-run addendum in rules.md): 0 entries opened beyond C2's wick and 0 beyond the target; 0 entries came at the first bar after a market break.

The reward-to-risk trials

The same rule with a stricter filter, run as trials. The 1:1 rule above is the main result.

Minimum reward to risk Trades Win rate Average per trade Total Windows profitable Verdict
1:1 291 41.6% +0.065R +18.8R 4 of 5 reject
1:2 144 38.9% +0.171R +24.7R 4 of 5 reject
1:4 42 33.3% +0.215R +9.0R 3 of 5 reject

The full five years, for context. The same fixed rules over the whole period, including the first training window: 449 trades, -0.012R per trade, -5.3R. Context only, never the result.

The verdict

Reject. Rejected: 80% probability the true Sharpe is above zero (one fixed rule set was tested, so there is no search to deflate for); p = 0.683 against block-bootstrapped price series. Also failed: robust to resampled trades.

  • Sample size: passed. 291 out-of-sample trades
  • Positive expectancy: passed. expectancy of +0.065R per trade before trading costs
  • Walk-forward efficiency: not applicable. not applicable: every parameter is fixed, so nothing was fitted on the training windows and there is no fit to decay; the fixed rules are judged by their out-of-sample expectancy and fold consistency
  • Fold consistency: passed. 80% of walk-forward folds were profitable
  • Sharpe significance: failed. 80% probability the true Sharpe is above zero (one fixed rule set was tested, so there is no search to deflate for)
  • Beats shuffled price: failed. p = 0.683 against block-bootstrapped price series
  • Parameter sensitivity: not applicable. not applicable: the rules score -0.039 at the pinned values, so there is no edge for neighbouring values to keep (neighbours' median -0.056)
  • Robust to resampled trades: failed. 80% of trade sequences resampled with replacement end profitable
  • Survivable drawdown: passed. 0.0% chance of halving the account at the configured risk
  • Drawdown: passed. maximum drawdown of 19.0%

Reshuffled price series scored as well or better in 27 of 40 tries (p = 0.68). Resampling the trades puts the average between -0.063R and +0.199R in 90% of cases.

24 tests. This is one of 24 CRT tests run together. With that many, one or two can look good by chance alone, so no single one should be read on its own.

Limitations

  • Before trading costs. Spread, commission and slippage would make the result worse.
  • 3.5 years out of sample, not 5. The first 19 months are the first training window.
  • One precise reading of CRT. Other candle times, sweep definitions or exits are different strategies and were not tested here.
  • One price feed. Another broker's or TradingView's candles differ slightly.
  • 5-minute bars. A bar that touches both the stop and the target counts as a loss.
  • TradingView's strategy export differs on a few trades: when an entry opens beyond C2's wick, TradingView's armed stop is already passed and it closes at the open; and when a bar opens beyond the target and then reaches the stop, TradingView takes the target. The free indicator matches the backtest trade for trade.
  • A backtest. It is not live trading or a funded-account result.

The data

Everything on this page comes from one file, published as it was written. Fetch it, check it, or hand it to your own tools.

/studies/crt-4h-gold.json