New

11 tools. $557.98 if bought one by one. 5 new Premium desks inside.$557.98 one by one

$97 once$97See all 11See it
ProEA Lab · MT5, TradingView and trading research · Evidence standards
Systems

We turned the TTrades-style Fractal Model into rules and tested 108 versions on 7 markets. Before costs, it was a coin flip.

C2 sweeps C1, the lower timeframe confirms with a CISD, the candle closes back: we coded the public model as one mechanical rule, wrote the test down before running it, and ran it on 8¾ years of gold, FX, indices and Bitcoin. Every number, the losing ones first.

PL · 7 min read
Native TradingView capture, OANDA:XAUUSD on the 15-minute chart with Fractal Model Lab v1.0.0: C2 sweep labels, dashed CISD levels from each extreme, and the Lab's record panel.

A trader asked us a simple question.

"Is your Fractal Model Desk like TTrades' fractal model?"

It is built from his public material. So we asked the question behind the question.

Does the model, written as rules, make money?

We wrote the test down first, then ran 108 versions on seven markets from January 2018 to September 2026. Nothing passed.

This article is where the numbers live. The free page carries none of them.

The rule, in one replay

The model starts when one 4-hour candle (C2) sweeps the last one (C1). The 15-minute chart then has to close back through the open of the run that made the extreme (the CISD), and C2 has to close back inside C1. The stop sits at the extreme; the target is C1's other end.

The rule, one setup at a time.Setup 1 of 10 · long · confirmed entry, C1 target · a simulated market

Simulated 15-minute candles, not market data, run through the study's rule. Setup 1 is the first setup whose trade reaches C1's far side, so every step shows; Another setup plays the rest in order, whatever they did. R is after a 0.40 round-trip cost.

Read as text
  1. C1, the four-hour candle, closes at 12:00 UTC: high 2394.41, low 2382.89.
  2. 12:15: a candle of C2 trades below C1's low. A long setup starts.
  3. 15:30: a 15-minute close above 2386.36, the open of the run of down candles that made the low (2377.80).
  4. C2 closes back inside C1's range: the swing is confirmed.
  5. 16:00: entry at 2390.96, stop 2377.80, target 2394.41 (C1's high).
  6. 19:30: the target fills at 2394.41: +0.23R after a 0.40 round-trip cost.

That is the whole skeleton, and it is what we tested. Three timeframe pairs, three entries, three targets and four filters make 108 versions. The part TTrades adds by hand (a point of interest, a daily bias, an objective) cannot be turned into rules, so it was not tested.

How we measured it

The test was written down and fingerprinted (SHA-256) before the first run, so no rule could be bent after we saw a result. We chose on 2018–22, checked on 2023–24, and ran one final test on January 2025 to September 2026.

  • Data: 5-minute bars, about 4.7 million of them: XAUUSD, EURUSD, GBPUSD, USDJPY, Nasdaq 100 and S&P 500 CFDs (Dukascopy) and BTCUSDT (Binance).
  • Costs per round trip: gold 0.40, EURUSD 1.0 pip, GBPUSD 1.4 pips, USDJPY 1.0 pip, Nasdaq 2.0 points, S&P 0.6, Bitcoin 0.12%. A stressed run used 1.5×. No overnight financing.
  • Fills: decide at the close, fill at the next open; if a candle touches both the stop and the target, we count the stop.

Which versions made money?

Almost none, and never the same ones twice. Flip the periods and watch the grid.

Which of the 108 versions made money after costs?2018–2022: 9 of 108 above zero. Best +0.032R per trade (Daily on 1H · Retest · 2.5× leg · no filter), worst −0.219R.
C1 target
2.5× leg
4× leg
None
Time
Fast
Bias
None
Time
Fast
Bias
None
Time
Fast
Bias
1H on 5mEarly CISD
Confirmed
Retest
4H on 15mEarly CISD
Confirmed
Retest
Daily on 1HEarly CISD
Confirmed
Retest
Table: all 108 versions, R per trade after costs
Version2018–20222023–20242025–26
4H on 15m · Early CISD · C1 target · no filter−0.117 (21,275)−0.141 (8,733)−0.113 (7,740)
4H on 15m · Early CISD · C1 target · Time−0.097 (15,211)−0.155 (6,149)−0.110 (5,540)
4H on 15m · Early CISD · C1 target · Fast CISD−0.123 (18,264)−0.148 (7,665)−0.123 (6,772)
4H on 15m · Early CISD · C1 target · Daily bias−0.141 (11,882)−0.168 (4,868)−0.135 (4,306)
4H on 15m · Early CISD · 2.5× leg · no filter−0.105 (22,168)−0.124 (9,222)−0.099 (8,072)
4H on 15m · Early CISD · 2.5× leg · Time−0.090 (16,066)−0.139 (6,600)−0.101 (5,848)
4H on 15m · Early CISD · 2.5× leg · Fast CISD−0.107 (19,169)−0.129 (8,120)−0.114 (7,055)
4H on 15m · Early CISD · 2.5× leg · Daily bias−0.123 (12,657)−0.151 (5,259)−0.119 (4,583)
4H on 15m · Early CISD · 4× leg · no filter−0.100 (20,540)−0.118 (8,610)−0.088 (7,495)
4H on 15m · Early CISD · 4× leg · Time−0.087 (15,299)−0.134 (6,317)−0.081 (5,570)
4H on 15m · Early CISD · 4× leg · Fast CISD−0.101 (18,127)−0.126 (7,745)−0.099 (6,697)
4H on 15m · Early CISD · 4× leg · Daily bias−0.118 (12,802)−0.154 (5,375)−0.104 (4,657)
4H on 15m · Confirmed · C1 target · no filter−0.091 (12,465)−0.110 (4,701)−0.107 (4,279)
4H on 15m · Confirmed · C1 target · Time−0.075 (7,570)−0.122 (2,782)−0.096 (2,552)
4H on 15m · Confirmed · C1 target · Fast CISD−0.093 (9,004)−0.110 (3,469)−0.119 (3,207)
4H on 15m · Confirmed · C1 target · Daily bias−0.090 (6,689)−0.126 (2,489)−0.086 (2,277)
4H on 15m · Confirmed · 2.5× leg · no filter−0.078 (12,528)−0.099 (4,782)−0.080 (4,149)
4H on 15m · Confirmed · 2.5× leg · Time−0.074 (7,915)−0.112 (2,935)−0.080 (2,575)
4H on 15m · Confirmed · 2.5× leg · Fast CISD−0.080 (8,683)−0.085 (3,358)−0.093 (2,920)
4H on 15m · Confirmed · 2.5× leg · Daily bias−0.076 (6,930)−0.123 (2,657)−0.058 (2,285)
4H on 15m · Confirmed · 4× leg · no filter−0.078 (15,025)−0.103 (5,847)−0.074 (5,152)
4H on 15m · Confirmed · 4× leg · Time−0.074 (9,894)−0.111 (3,736)−0.065 (3,350)
4H on 15m · Confirmed · 4× leg · Fast CISD−0.081 (11,174)−0.084 (4,407)−0.083 (3,909)
4H on 15m · Confirmed · 4× leg · Daily bias−0.070 (8,628)−0.120 (3,351)−0.057 (2,920)
4H on 15m · Retest · C1 target · no filter−0.086 (9,193)−0.139 (3,299)−0.101 (2,997)
4H on 15m · Retest · C1 target · Time−0.053 (5,526)−0.150 (1,944)−0.075 (1,793)
4H on 15m · Retest · C1 target · Fast CISD−0.092 (6,257)−0.137 (2,273)−0.116 (2,118)
4H on 15m · Retest · C1 target · Daily bias−0.064 (4,922)−0.147 (1,731)−0.106 (1,569)
4H on 15m · Retest · 2.5× leg · no filter−0.072 (9,884)−0.115 (3,684)−0.077 (3,208)
4H on 15m · Retest · 2.5× leg · Time−0.049 (6,279)−0.126 (2,270)−0.069 (2,004)
4H on 15m · Retest · 2.5× leg · Fast CISD−0.072 (6,583)−0.094 (2,464)−0.101 (2,183)
4H on 15m · Retest · 2.5× leg · Daily bias−0.070 (5,450)−0.137 (2,019)−0.067 (1,752)
4H on 15m · Retest · 4× leg · no filter−0.081 (11,488)−0.134 (4,312)−0.063 (3,786)
4H on 15m · Retest · 4× leg · Time−0.064 (7,489)−0.161 (2,710)−0.050 (2,428)
4H on 15m · Retest · 4× leg · Fast CISD−0.087 (8,127)−0.114 (3,089)−0.073 (2,744)
4H on 15m · Retest · 4× leg · Daily bias−0.071 (6,526)−0.143 (2,431)−0.073 (2,115)
1H on 5m · Early CISD · C1 target · no filter−0.207 (66,357)−0.197 (27,075)−0.142 (24,024)
1H on 5m · Early CISD · C1 target · Time−0.202 (48,310)−0.211 (19,519)−0.142 (17,333)
1H on 5m · Early CISD · C1 target · Fast CISD−0.210 (57,999)−0.197 (24,055)−0.143 (21,409)
1H on 5m · Early CISD · C1 target · Daily bias−0.219 (37,374)−0.209 (15,110)−0.163 (13,466)
1H on 5m · Early CISD · 2.5× leg · no filter−0.192 (69,471)−0.195 (28,385)−0.158 (24,943)
1H on 5m · Early CISD · 2.5× leg · Time−0.184 (51,490)−0.194 (20,840)−0.155 (18,278)
1H on 5m · Early CISD · 2.5× leg · Fast CISD−0.194 (61,336)−0.197 (25,390)−0.155 (22,419)
1H on 5m · Early CISD · 2.5× leg · Daily bias−0.202 (40,026)−0.201 (16,225)−0.164 (14,320)
1H on 5m · Early CISD · 4× leg · no filter−0.194 (65,009)−0.189 (26,533)−0.145 (23,323)
1H on 5m · Early CISD · 4× leg · Time−0.188 (49,161)−0.196 (19,963)−0.143 (17,506)
1H on 5m · Early CISD · 4× leg · Fast CISD−0.197 (58,196)−0.191 (24,029)−0.146 (21,243)
1H on 5m · Early CISD · 4× leg · Daily bias−0.198 (40,657)−0.205 (16,565)−0.157 (14,573)
1H on 5m · Confirmed · C1 target · no filter−0.165 (47,880)−0.181 (18,747)−0.133 (16,833)
1H on 5m · Confirmed · C1 target · Time−0.161 (29,285)−0.178 (11,196)−0.130 (10,097)
1H on 5m · Confirmed · C1 target · Fast CISD−0.169 (35,704)−0.191 (14,306)−0.136 (12,856)
1H on 5m · Confirmed · C1 target · Daily bias−0.181 (26,522)−0.198 (10,475)−0.158 (9,298)
1H on 5m · Confirmed · 2.5× leg · no filter−0.150 (49,841)−0.173 (19,505)−0.142 (17,271)
1H on 5m · Confirmed · 2.5× leg · Time−0.145 (32,325)−0.168 (12,321)−0.142 (11,074)
1H on 5m · Confirmed · 2.5× leg · Fast CISD−0.156 (35,646)−0.183 (14,241)−0.143 (12,671)
1H on 5m · Confirmed · 2.5× leg · Daily bias−0.162 (28,414)−0.183 (11,092)−0.154 (9,862)
1H on 5m · Confirmed · 4× leg · no filter−0.148 (58,565)−0.169 (23,221)−0.128 (20,679)
1H on 5m · Confirmed · 4× leg · Time−0.145 (38,938)−0.164 (15,182)−0.126 (13,661)
1H on 5m · Confirmed · 4× leg · Fast CISD−0.153 (44,446)−0.175 (17,941)−0.132 (16,085)
1H on 5m · Confirmed · 4× leg · Daily bias−0.150 (34,428)−0.183 (13,664)−0.142 (12,106)
1H on 5m · Retest · C1 target · no filter−0.175 (33,753)−0.215 (12,746)−0.154 (11,582)
1H on 5m · Retest · C1 target · Time−0.178 (21,015)−0.210 (7,722)−0.143 (7,078)
1H on 5m · Retest · C1 target · Fast CISD−0.181 (23,523)−0.234 (9,083)−0.161 (8,305)
1H on 5m · Retest · C1 target · Daily bias−0.178 (18,657)−0.218 (7,070)−0.176 (6,398)
1H on 5m · Retest · 2.5× leg · no filter−0.154 (38,925)−0.196 (14,872)−0.155 (13,286)
1H on 5m · Retest · 2.5× leg · Time−0.153 (25,817)−0.187 (9,605)−0.140 (8,749)
1H on 5m · Retest · 2.5× leg · Fast CISD−0.161 (26,614)−0.207 (10,412)−0.154 (9,326)
1H on 5m · Retest · 2.5× leg · Daily bias−0.159 (22,125)−0.197 (8,452)−0.159 (7,598)
1H on 5m · Retest · 4× leg · no filter−0.167 (43,330)−0.205 (16,715)−0.147 (15,057)
1H on 5m · Retest · 4× leg · Time−0.170 (29,050)−0.202 (10,979)−0.137 (9,993)
1H on 5m · Retest · 4× leg · Fast CISD−0.178 (30,961)−0.215 (12,223)−0.147 (11,094)
1H on 5m · Retest · 4× leg · Daily bias−0.161 (25,126)−0.208 (9,746)−0.155 (8,729)
Daily on 1H · Early CISD · C1 target · no filter−0.032 (4,361)−0.015 (1,731)−0.064 (1,572)
Daily on 1H · Early CISD · C1 target · Time−0.038 (2,878)+0.022 (1,110)−0.010 (1,053)
Daily on 1H · Early CISD · C1 target · Fast CISD−0.045 (3,776)−0.033 (1,521)−0.056 (1,371)
Daily on 1H · Early CISD · C1 target · Daily bias−0.070 (2,375)+0.036 (854)−0.090 (840)
Daily on 1H · Early CISD · 2.5× leg · no filter−0.044 (4,477)−0.035 (1,764)−0.058 (1,600)
Daily on 1H · Early CISD · 2.5× leg · Time−0.059 (2,901)−0.006 (1,122)−0.051 (1,061)
Daily on 1H · Early CISD · 2.5× leg · Fast CISD−0.050 (3,882)−0.037 (1,544)−0.045 (1,393)
Daily on 1H · Early CISD · 2.5× leg · Daily bias−0.065 (2,402)−0.013 (874)−0.088 (853)
Daily on 1H · Early CISD · 4× leg · no filter−0.020 (4,159)−0.063 (1,646)−0.046 (1,490)
Daily on 1H · Early CISD · 4× leg · Time−0.035 (2,829)−0.043 (1,100)−0.007 (1,012)
Daily on 1H · Early CISD · 4× leg · Fast CISD−0.023 (3,700)−0.048 (1,470)−0.051 (1,328)
Daily on 1H · Early CISD · 4× leg · Daily bias−0.061 (2,438)−0.037 (896)−0.093 (855)
Daily on 1H · Confirmed · C1 target · no filter−0.037 (2,228)−0.087 (845)+0.008 (752)
Daily on 1H · Confirmed · C1 target · Time−0.039 (1,071)−0.040 (350)+0.103 (342)
Daily on 1H · Confirmed · C1 target · Fast CISD−0.056 (1,723)−0.086 (654)+0.007 (567)
Daily on 1H · Confirmed · C1 target · Daily bias−0.054 (1,191)−0.070 (426)−0.018 (429)
Daily on 1H · Confirmed · 2.5× leg · no filter+0.008 (1,857)−0.090 (718)+0.028 (643)
Daily on 1H · Confirmed · 2.5× leg · Time+0.000 (783)−0.113 (237)+0.114 (270)
Daily on 1H · Confirmed · 2.5× leg · Fast CISD+0.013 (1,321)−0.103 (526)+0.014 (444)
Daily on 1H · Confirmed · 2.5× leg · Daily bias−0.034 (1,011)−0.059 (393)+0.014 (395)
Daily on 1H · Confirmed · 4× leg · no filter−0.004 (2,347)−0.085 (921)−0.009 (788)
Daily on 1H · Confirmed · 4× leg · Time−0.008 (1,121)−0.040 (378)+0.112 (383)
Daily on 1H · Confirmed · 4× leg · Fast CISD−0.004 (1,798)−0.069 (717)−0.025 (591)
Daily on 1H · Confirmed · 4× leg · Daily bias−0.030 (1,339)−0.058 (523)−0.021 (487)
Daily on 1H · Retest · C1 target · no filter−0.020 (1,589)−0.106 (597)−0.014 (543)
Daily on 1H · Retest · C1 target · Time−0.034 (737)−0.080 (222)+0.157 (220)
Daily on 1H · Retest · C1 target · Fast CISD−0.053 (1,175)−0.127 (438)−0.065 (386)
Daily on 1H · Retest · C1 target · Daily bias−0.050 (830)−0.063 (292)−0.097 (314)
Daily on 1H · Retest · 2.5× leg · no filter+0.032 (1,449)−0.084 (566)+0.071 (507)
Daily on 1H · Retest · 2.5× leg · Time+0.030 (609)−0.082 (187)+0.217 (202)
Daily on 1H · Retest · 2.5× leg · Fast CISD+0.020 (990)−0.106 (395)+0.051 (336)
Daily on 1H · Retest · 2.5× leg · Daily bias−0.019 (781)−0.010 (311)+0.045 (312)
Daily on 1H · Retest · 4× leg · no filter+0.023 (1,737)−0.093 (683)+0.010 (597)
Daily on 1H · Retest · 4× leg · Time+0.005 (797)−0.011 (270)+0.186 (269)
Daily on 1H · Retest · 4× leg · Fast CISD+0.010 (1,277)−0.072 (500)−0.036 (429)
Daily on 1H · Retest · 4× leg · Daily bias−0.022 (958)−0.062 (381)−0.052 (367)

In 2018–22, 9 of the 108 were above zero after costs, all on daily candles, the best at +0.032R per trade over 1,449 trades. Every intraday version was red. The three we carried forward then lost in 2023–24, positive in one market of seven each, so the main test stopped there: no validated edge.

2025–26 flatters the daily row, 15 of 36 above zero. But 34 of those 36 lost in 2023–24. We saw the same with the Engulfing Volume Desk: a rule that follows what markets happened to do, not an edge that carries across years.

Gold only: the final test

Many of our readers trade gold, so we registered a gold-only track too. One version passed 2023–24 on gold: daily candles, retest entry, 4× target, the extreme in the first half of C2 (46 trades, +0.104R per trade). We ran it once on January 2025 to September 2026.

CostsTradesAbove zeroNetR per tradeProfit factorDeepest fall
Base5019 (38%)−1.09R−0.0220.968.8R
Stressed, 1.5×5019 (38%)−1.37R−0.0270.958.9R

Random entries with the same stops and targets did better in 58% of 2,000 shuffles. Fail.

What the costs did

Before costs the model is a coin flip. After costs it only goes down, and the shorter the timeframe the faster.

Before costs it goes nowhere. After costs it only goes down.Cumulative R of the textbook version (confirmed entry, C1 target), seven markets pooled, January 2018 to September 2026.
2018–22 · choose2023–24 · check2025–26 · test−10,000R−5,000R0R201820192020202120222023202420252026−318R−13,546R
Table: cumulative R at each year end
ThroughBefore costsAfter costs
Dec 2018+59.9R−1,553R
Dec 2019+169R−3,319R
Dec 2020+49.1R−4,924R
Dec 2021+36.1R−6,558R
Dec 2022−15.7R−7,914R
Dec 2023−83.4R−9,492R
Dec 2024−332R−11,313R
Dec 2025−436R−12,721R
Sep 2026−318R−13,546R

The 5-minute textbook version averaged −0.004R per trade before costs over 83,460 trades. Costs then took about 0.17R from every trade, because a 5-minute stop is small next to a normal spread. It lost in every year from 2018 to 2026.

Against random entries with the same stops, targets and holding time, it was better by under 0.01R per trade (p = 0.01). Real, perhaps, and about twenty times smaller than its cost. The 4-hour and daily versions could not be told apart from random entries at all.

Check it on your own chart

Fractal Model Lab is a free TradingView strategy (Pine v6, MIT) with the same 108 settings. Here it is on the 15-minute gold chart, defaults on, with the study's cost in Properties.

TradingView Strategy Tester for Fractal Model Lab v1.0.0 on OANDA:XAUUSD 15-minute, 1 July to 3 October 2026, 0.20 USD per ounce per side commission: total P&L −749.53 USD (−7.50%), max drawdown 863.97 USD (8.54%), 29 of 83 trades profitable, profit factor 0.57, the cumulative P&L line falling from August
TradingView's Strategy Tester, Lab defaults (confirmed entry, C1 target), OANDA:XAUUSD 15-minute over the history TradingView loads on our plan (1 July to 3 October 2026), with 0.20 USD per ounce per side, the study's 0.40 round trip. A 10,000 USD account.

We checked the Lab against our research engine trade by trade on that chart, eight settings on the 15- and 5-minute timeframes: TradingView took 737 trades, and 736 matched the engine's entry time and price, 730 its exit too. The rest are candles where TradingView guesses whether the stop or the target came first, a Labor Day session that closed early, and one same-candle re-entry TradingView did not take.

Two of our own mistakes

That trade-by-trade check caught two errors in our research. Neither changes the verdict, and both are written into the study's amendments next to the plan as it was registered.

  • When the 4-hour candles start. We assumed TradingView starts gold's and the indices' 4-hour candles at 18:00 New York. It starts them at 17:00. Re-run that way, the 36 4-hour versions are still 0 of 36 above zero in every period.
  • A gap through the stop. On a Sunday open that jumped through both a retest order and its stop, our engine exited at the stop price, a small gain that could not happen. Fixed, 1,502 retest trades moved by at most 0.006R per trade per version, and the gold final test went from −1.09R to −1.14R.

What you can take from it

  • The mechanical skeleton carried no edge in 8¾ years of seven markets. That is not a verdict on TTrades, or on a trader who adds the parts that cannot be written down.
  • Lower timeframes make it worse. On the 1-hour/5-minute pairing, costs are a large share of every stop. Check yours.
  • It is still a clear way to read a chart: which candle swept which, where the run began, whether the close came back. That is what the free desk shows, with no buy or sell signal attached.

We are now following three daily versions forward, on data that did not exist when we registered them (fills from 5 October 2026). Monthly numbers will land here, with no verdict until October 2027.

Limits

One data vendor per market (bid prices; costs stand in for the spread), a fixed cost per market across eight years, no overnight financing, the stop counted first when a candle touches both levels, and our own reading of public TTrades material. Three periods are three samples of history, not a forecast. Nothing here is advice to trade, or not to trade, this model.

Source: ProEA Lab Fractal Model study, protocol fingerprint ad2e6616…0587, engine 33db1554…7c02 (v1 as registered) and 46db28e5…5d66ef (v1.1, amendment A2), registered 2026-10-02 before the first run.

Continue reading

Engulfing Volume Desk: a good 2025–26 on gold's 4-hour chart, and the 2023–24 test it failed

The plain engulfing-with-volume rule on OANDA gold 4H: 83 trades and a gain after costs and financing in 2025–26, then 134 trades and a loss on the 2023–24 history we had held back. Every number, how we measured it, and what changed along the way.

Oct 2 · ProEA Lab

Native TradingView capture, OANDA:XAUUSD on the 4-hour chart with Engulfing Volume Desk v0.6.1: engulfing setups labelled by side and volume grade, such as Short · Low volume and Long · High volume, with TradingView's Stop and Target exit markers.

Gold Sweep Desk: What We Measured Before Release.

Two pre-registered studies of a gold liquidity-sweep rule on 2026 data: every candidate, every period we ran, and why no setting became a tested default.

Oct 1 · ProEA Lab

Ink sketch on ivory paper: price falls into the Asia low, a candle wicks through it and closes back inside, a later close breaks up through the orange opposing gap, with the stop beyond the sweep's extreme and a 2R target above; the statement reads: two studies, no setting we could call tested.

We Built a Signal Tool. Then We Tested the Grade.

An options buyer asked for fewer, stronger calls. We built a graded signal desk, ran it with costs on, and let a model learn which factors paid. The plain count beat every clever gate. Here is the whole ledger, including what failed.

Sep 4 · ProEA Lab

Ink sketch on ivory paper: a pullback to a rising average and a strong close back above it with an orange BUY B label, five factor dots with four filled, and the question whether the letter ranked anything; the statement reads: we graded the signals, then we tested the grade.