Does x_brent_momentum_20 below 0 work on DJI30? 2023 to 2026 backtest
DJI30 long when BRENT 20-bar change (its ATR) is below the threshold, tested at five thresholds taken from the feature’s own distribution on DJI30 over this window: its 10th, 25th, 50th, 75th and 90th percentiles. Window 2023-09-30 to 2026-09-30, the last 30 percent held out of sample; stop 2 ATR, target 2.5 R, held overnight, max spread 50 pips, one-minute confirmation 80 pips, no hour filter. Fills and spread as measured on a demo fleet (how a result is judged). The direction and the exit are the ones the research catalogue carried for this pair; the thresholds are not.
Five thresholds, one rule shape
Percentile
Condition
In sample R / trades
Out of sample R / trades
t
Trades to confirm
Last quarter R / trades
Verdict
p10
x_brent_momentum_20 < -4
-211.9 R / 1428
-93.4 R / 611
-2.4
420
-35.3 R / 174
Active, net negative
p25
x_brent_momentum_20 < -2.154
-389.6 R / 2573
-123.0 R / 1168
-2.3
917
-45.3 R / 323
Active, net negative
p50
x_brent_momentum_20 < 0
-592.4 R / 3819
-308.2 R / 1693
-4.8
295
-86.2 R / 494
Active, net negative
p75
x_brent_momentum_20 < 2.188
-779.4 R / 4655
-394.4 R / 2051
-5.6
265
-137.6 R / 636
Active, net negative
p90
x_brent_momentum_20 < 4.098
-830.4 R / 4903
-428.6 R / 2186
-5.9
255
-160.5 R / 702
Active, net negative
R is the risk on one trade. The out-of-sample split carries the verdict: below 100 trades it is “no edge shown” whatever the t; a positive mean with t below 2 is “net positive, not yet distinguishable from chance”; the last column is how many trades that mean would need to reach t = 2.
Each threshold in full
x_brent_momentum_20 < -4 (p10)
Honesty panelActive, net negative
Traded 611 times out of sample, net negative beyond chance (-93.4 R, -0.153 R per trade, t = -2.4); still active in the last quarter (-35.3 R over 174 trades).
In sample
2023-09-30 to 2025-11-05
-211.9 R
1428 trades · 34% wins
-0.148 R per trade · t = -3.6, beyond chance
about 449 trades to confirm this mean (-0.148 R per trade) at t = -2 · shown: 1428
spread 0.099 R per trade
Out of sample
2025-11-05 to 2026-09-30
-93.4 R
611 trades · 33% wins
-0.153 R per trade · t = -2.4, beyond chance
about 420 trades to confirm this mean (-0.153 R per trade) at t = -2 · shown: 611
spread 0.092 R per trade
Last quarter
last 91 days of the window
-35.3 R
174 trades · 32% wins
-0.203 R per trade · t = -1.7, within chance
about 237 trades to confirm this mean (-0.203 R per trade) at t = -2 · shown: 174
spread 0.109 R per trade
Costs. Spread 0.097 R per trade at 1.25 times the bar’s minimum. Fill offset 0.14 stop-distances on every entry, measured on 931 demo fills. At 1.5 times the bar’s minimum the out-of-sample figure would read -104.6 R (-0.171 R per trade over 611 trades).
Entry: stop order 2 pips past the signal close, cancelled after 4 bars; 2,083 signals placed, 2,039 filled, 44 expired; trigger state, an entry on every bar the conditions hold while flat.
Exit: stop 2 ATR (mean 574.9 pips, 2.00 ATR); target 2.5 R; exits 65% at the stop, 28% at the target, 7% at the day end.
Filters: signals on every weekday; no entries 22:00 to 01:00 broker time (11,360 bars); max spread 50 pips (2,140 bars over it); M1 confirmation 80 pips (3,561 signals rejected).
x_brent_momentum_20 < -2.154 (p25)
Honesty panelActive, net negative
Traded 1168 times out of sample, net negative beyond chance (-123.0 R, -0.105 R per trade, t = -2.3); still active in the last quarter (-45.3 R over 323 trades).
In sample
2023-09-30 to 2025-11-05
-389.6 R
2573 trades · 33% wins
-0.151 R per trade · t = -4.9, beyond chance
about 431 trades to confirm this mean (-0.151 R per trade) at t = -2 · shown: 2573
spread 0.099 R per trade
Out of sample
2025-11-05 to 2026-09-30
-123.0 R
1168 trades · 33% wins
-0.105 R per trade · t = -2.3, beyond chance
about 917 trades to confirm this mean (-0.105 R per trade) at t = -2 · shown: 1168
spread 0.087 R per trade
Last quarter
last 91 days of the window
-45.3 R
323 trades · 32% wins
-0.140 R per trade · t = -1.6, within chance
about 506 trades to confirm this mean (-0.140 R per trade) at t = -2 · shown: 323
spread 0.104 R per trade
Costs. Spread 0.095 R per trade at 1.25 times the bar’s minimum. Fill offset 0.14 stop-distances on every entry, measured on 931 demo fills. At 1.5 times the bar’s minimum the out-of-sample figure would read -143.3 R (-0.123 R per trade over 1168 trades).
Entry: stop order 2 pips past the signal close, cancelled after 4 bars; 3,805 signals placed, 3,741 filled, 64 expired; trigger state, an entry on every bar the conditions hold while flat.
Exit: stop 2 ATR (mean 581.9 pips, 2.00 ATR); target 2.5 R; exits 65% at the stop, 28% at the target, 8% at the day end.
Filters: signals on every weekday; no entries 22:00 to 01:00 broker time (7,797 bars); max spread 50 pips (1,777 bars over it); M1 confirmation 80 pips (6,622 signals rejected).
x_brent_momentum_20 < 0 (p50)
Honesty panelActive, net negative
Traded 1693 times out of sample, net negative beyond chance (-308.2 R, -0.182 R per trade, t = -4.8); still active in the last quarter (-86.2 R over 494 trades).
In sample
2023-09-30 to 2025-11-05
-592.4 R
3819 trades · 33% wins
-0.155 R per trade · t = -6.1, beyond chance
about 415 trades to confirm this mean (-0.155 R per trade) at t = -2 · shown: 3819
spread 0.100 R per trade
Out of sample
2025-11-05 to 2026-09-30
-308.2 R
1693 trades · 32% wins
-0.182 R per trade · t = -4.8, beyond chance
about 295 trades to confirm this mean (-0.182 R per trade) at t = -2 · shown: 1693
spread 0.085 R per trade
Last quarter
last 91 days of the window
-86.2 R
494 trades · 31% wins
-0.175 R per trade · t = -2.5, beyond chance
about 325 trades to confirm this mean (-0.175 R per trade) at t = -2 · shown: 494
spread 0.100 R per trade
Costs. Spread 0.095 R per trade at 1.25 times the bar’s minimum. Fill offset 0.14 stop-distances on every entry, measured on 931 demo fills. At 1.5 times the bar’s minimum the out-of-sample figure would read -337.0 R (-0.199 R per trade over 1693 trades).
Entry: stop order 2 pips past the signal close, cancelled after 4 bars; 5,597 signals placed, 5,512 filled, 85 expired; trigger state, an entry on every bar the conditions hold while flat.
Exit: stop 2 ATR (mean 580.5 pips, 2.00 ATR); target 2.5 R; exits 66% at the stop, 27% at the target, 7% at the day end.
Filters: signals on every weekday; no entries 22:00 to 01:00 broker time (5,385 bars); max spread 50 pips (1,792 bars over it); M1 confirmation 80 pips (9,380 signals rejected).
x_brent_momentum_20 < 2.188 (p75)
Honesty panelActive, net negative
Traded 2051 times out of sample, net negative beyond chance (-394.4 R, -0.192 R per trade, t = -5.6); still active in the last quarter (-137.6 R over 636 trades).
In sample
2023-09-30 to 2025-11-05
-779.4 R
4655 trades · 33% wins
-0.167 R per trade · t = -7.2, beyond chance
about 357 trades to confirm this mean (-0.167 R per trade) at t = -2 · shown: 4655
spread 0.101 R per trade
Out of sample
2025-11-05 to 2026-09-30
-394.4 R
2051 trades · 31% wins
-0.192 R per trade · t = -5.6, beyond chance
about 265 trades to confirm this mean (-0.192 R per trade) at t = -2 · shown: 2051
spread 0.083 R per trade
Last quarter
last 91 days of the window
-137.6 R
636 trades · 31% wins
-0.216 R per trade · t = -3.5, beyond chance
about 206 trades to confirm this mean (-0.216 R per trade) at t = -2 · shown: 636
spread 0.096 R per trade
Costs. Spread 0.096 R per trade at 1.25 times the bar’s minimum. Fill offset 0.14 stop-distances on every entry, measured on 931 demo fills. At 1.5 times the bar’s minimum the out-of-sample figure would read -428.4 R (-0.209 R per trade over 2051 trades).
Entry: stop order 2 pips past the signal close, cancelled after 4 bars; 6,815 signals placed, 6,706 filled, 109 expired; trigger state, an entry on every bar the conditions hold while flat.
Exit: stop 2 ATR (mean 576.6 pips, 2.00 ATR); target 2.5 R; exits 67% at the stop, 27% at the target, 6% at the day end.
Filters: signals on every weekday; no entries 22:00 to 01:00 broker time (4,223 bars); max spread 50 pips (1,663 bars over it); M1 confirmation 80 pips (11,325 signals rejected).
x_brent_momentum_20 < 4.098 (p90)
Honesty panelActive, net negative
Traded 2186 times out of sample, net negative beyond chance (-428.6 R, -0.196 R per trade, t = -5.9); still active in the last quarter (-160.5 R over 702 trades).
In sample
2023-09-30 to 2025-11-05
-830.4 R
4903 trades · 32% wins
-0.169 R per trade · t = -7.5, beyond chance
about 350 trades to confirm this mean (-0.169 R per trade) at t = -2 · shown: 4903
spread 0.102 R per trade
Out of sample
2025-11-05 to 2026-09-30
-428.6 R
2186 trades · 31% wins
-0.196 R per trade · t = -5.9, beyond chance
about 255 trades to confirm this mean (-0.196 R per trade) at t = -2 · shown: 2186
spread 0.083 R per trade
Last quarter
last 91 days of the window
-160.5 R
702 trades · 30% wins
-0.229 R per trade · t = -3.9, beyond chance
about 184 trades to confirm this mean (-0.229 R per trade) at t = -2 · shown: 702
spread 0.097 R per trade
Costs. Spread 0.096 R per trade at 1.25 times the bar’s minimum. Fill offset 0.14 stop-distances on every entry, measured on 931 demo fills. At 1.5 times the bar’s minimum the out-of-sample figure would read -464.8 R (-0.213 R per trade over 2186 trades).
Entry: stop order 2 pips past the signal close, cancelled after 4 bars; 7,199 signals placed, 7,089 filled, 110 expired; trigger state, an entry on every bar the conditions hold while flat.
Exit: stop 2 ATR (mean 577.2 pips, 2.00 ATR); target 2.5 R; exits 67% at the stop, 27% at the target, 6% at the day end.
Filters: signals on every weekday; no entries 22:00 to 01:00 broker time (3,877 bars); max spread 50 pips (1,526 bars over it); M1 confirmation 80 pips (12,191 signals rejected).
What x_brent_momentum_20 measures
BRENT 20-bar change (its ATR) (atr), on M5 bars. BRENT close minus its close 20 bars earlier, in multiples of the BRENT ATR(14).
Test your own variant
Rule Collider runs one rule on one symbol over years of broker M5 data with the fills and the spread a demo fleet measured, and shows the out-of-sample figure first. Early access goes to the waitlist in signup order.
Historical simulation on broker M5 data with a measured fill offset, a measured spread factor, swap and a one-minute confirmation model. Past results do not predict future results. This is a research tool, not investment advice. Hours are broker time, the chart time in MT5. Built 2026-11-04 from runs ending 2026-09-30; refreshed monthly.