Equity curve
Drawdown (R)
Best filter combinations
Searched 5,516 filter combinations (1–3 filters, at least 25 trades). Found on trades up to 2025-12-10 (2,292 in-sample trades), then checked on the 983 trades after that date. Rank = lower bound of the 95% confidence interval of the in-sample win rate, so small lucky samples sink. Trust only rows marked “Held up out-of-sample”.
No combination reached 60% win rate with at least 25 in-sample trades. Showing the strongest combinations by expectancy instead.
| # | Filters | In-sample trades | In-sample win rate | 95% low | Avg R | Out-of-sample trades | OOS win rate | OOS avg R | Verdict |
|---|---|---|---|---|---|---|---|---|---|
| 1 | RSI(14) range = 50-70 + Price vs EMA50 = Below EMA50 + Hour block (UTC) = 08-12 | 25 | 48.0% | 30.0% | +0.78 | 8 | 0.0% | -0.85 | Too few out-of-sample trades |
| 2 | Session (UTC) = London + RSI(14) range = 50-70 + Price vs EMA50 = Below EMA50 | 35 | 45.7% | 30.5% | +0.68 | 12 | 0.0% | -0.90 | Failed out-of-sample |
| 3 | Direction = BUY + Day of week = Fri + Volatility (ATR14 vs its median) = Low | 26 | 50.0% | 32.1% | +0.67 | 6 | 16.7% | -0.28 | Too few out-of-sample trades |
| 4 | Price vs EMA200 = Below EMA200 + Day of week = Sat + Volatility (ATR14 vs its median) = Medium | 27 | 40.7% | 24.5% | +0.62 | 8 | 12.5% | -0.20 | Too few out-of-sample trades |
| 5 | Price vs EMA200 = Below EMA200 + Day of week = Fri + Volatility (ATR14 vs its median) = Low | 25 | 44.0% | 26.7% | +0.53 | 7 | 42.9% | +0.29 | Too few out-of-sample trades |
| 6 | Session (UTC) = London + EMA 20/50/200 stack = Bearish stack + Day of week = Fri | 27 | 37.0% | 21.5% | +0.51 | 12 | 33.3% | +0.21 | Failed out-of-sample |
| 7 | Day of week = Fri + Volatility (ATR14 vs its median) = Low + Stop size = >3 ATR | 29 | 41.4% | 25.5% | +0.50 | 8 | 37.5% | +0.29 | Too few out-of-sample trades |
| 8 | Session (UTC) = London + EMA 20/50/200 stack = Bearish stack + Stop size = 2-3 ATR | 49 | 46.9% | 33.7% | +0.49 | 31 | 35.5% | +0.06 | Failed out-of-sample |
| 9 | Session (UTC) = Sydney + Day of week = Thu | 25 | 40.0% | 23.4% | +0.45 | 13 | 7.7% | -0.72 | Failed out-of-sample |
| 10 | Trade vs EMA200 trend = With trend + Day of week = Mon + Hour block (UTC) = 04-08 | 35 | 34.3% | 20.8% | +0.45 | 14 | 28.6% | +0.35 | Failed out-of-sample |
| 11 | EMA 20/50/200 stack = Bullish stack + Day of week = Tue + Entry confirmation = Same candle | 41 | 34.1% | 21.6% | +0.45 | 25 | 16.0% | -0.28 | Failed out-of-sample |
| 12 | Session (UTC) = London + EMA 20/50/200 stack = Bearish stack + Hour block (UTC) = 04-08 | 41 | 36.6% | 23.6% | +0.45 | 24 | 29.2% | +0.08 | Failed out-of-sample |
| 13 | EMA 20/50/200 stack = Mixed + Day of week = Thu + Hour block (UTC) = 12-16 | 25 | 40.0% | 23.4% | +0.44 | 13 | 30.8% | +0.06 | Failed out-of-sample |
| 14 | Price vs EMA200 = Below EMA200 + Hour block (UTC) = 08-12 + Stop size = 2-3 ATR | 63 | 46.0% | 34.3% | +0.43 | 26 | 23.1% | -0.28 | Failed out-of-sample |
| 15 | RSI(14) range = 30-50 + Hour block (UTC) = 08-12 + Stop size = 2-3 ATR | 65 | 46.2% | 34.6% | +0.43 | 21 | 28.6% | -0.14 | Failed out-of-sample |
| 16 | EMA 20/50/200 stack = Bearish stack + Hour block (UTC) = 08-12 + Stop size = 2-3 ATR | 39 | 46.2% | 31.6% | +0.42 | 21 | 33.3% | +0.00 | Failed out-of-sample |
| 17 | Session (UTC) = London + Day of week = Fri + Stop size = >3 ATR | 43 | 32.6% | 20.5% | +0.42 | 13 | 23.1% | +0.12 | Failed out-of-sample |
| 18 | Session (UTC) = London + EMA 20/50/200 stack = Bearish stack + Day of week = Tue | 31 | 41.9% | 26.4% | +0.41 | 19 | 21.1% | -0.09 | Failed out-of-sample |
| 19 | Session (UTC) = London + Price vs EMA200 = Below EMA200 + Day of week = Fri | 35 | 37.1% | 23.2% | +0.41 | 15 | 26.7% | +0.09 | Failed out-of-sample |
| 20 | Session (UTC) = London + Price vs EMA200 = Below EMA200 + Stop size = 2-3 ATR | 79 | 44.3% | 33.9% | +0.40 | 40 | 27.5% | -0.16 | Failed out-of-sample |
| 21 | Direction = SELL + Hour block (UTC) = 08-12 + Stop size = 2-3 ATR | 60 | 45.0% | 33.1% | +0.40 | 31 | 35.5% | +0.09 | Failed out-of-sample |
| 22 | RSI(14) range = 30-50 + Day of week = Fri + Volatility (ATR14 vs its median) = Low | 26 | 42.3% | 25.5% | +0.39 | 4 | 25.0% | -0.25 | Too few out-of-sample trades |
| 23 | Price vs EMA50 = Above EMA50 + Day of week = Tue + Volatility (ATR14 vs its median) = High | 60 | 25.0% | 15.8% | +0.38 | 31 | 16.1% | -0.06 | Failed out-of-sample |
| 24 | Session (UTC) = Asian + Price vs EMA200 = Above EMA200 + Day of week = Mon | 46 | 34.8% | 22.7% | +0.38 | 28 | 17.9% | -0.18 | Failed out-of-sample |
| 25 | Price vs EMA50 = Below EMA50 + Hour block (UTC) = 08-12 + Stop size = 2-3 ATR | 62 | 43.5% | 31.9% | +0.38 | 17 | 11.8% | -0.65 | Failed out-of-sample |
Failure patterns
Overall loss rate: 60.7%. Conditions below lose noticeably more often.
Loss anatomy
| What happened | Losses | % |
|---|---|---|
| Stopped out within 3 candles (45 min) Entry too early / zone not respected — consider waiting for a 2nd confirmation candle. | 324 | 16.3% |
| Never moved +0.2R in profit before stop Setup was wrong from the start — check which filters these share (table above). | 863 | 43.4% |
| Reached +0.5R before losing Partial profit at +0.5R–1R would have reduced these losses. | 675 | 34.0% |
| Reached +1R before losing A move-to-breakeven at +1R would have turned these into 0R trades (upper bound: on M15 we can't see if a winner also dipped back to entry). | 262 | 13.2% |
- Winners that dipped to −0.7R or worse before hitting TP: 152 (21.4% of winners)
- Timeouts (no TP/SL in 100 bars): 577, average +0.33R
- Average candles held — winners 36.3, losers 24.3
Single conditions with high loss rate
| Condition | Trades | Loss rate | vs avg | Avg R |
|---|---|---|---|---|
| Stop size = 1-2 ATR | 517 | 70.4% | +9.7 pts | -0.134 |
| Day of week = Sun | 360 | 69.4% | +8.7 pts | -0.249 |
| Stop size = 2-3 ATR | 1050 | 68.9% | +8.2 pts | -0.167 |
| Pair = TON_USDT | 78 | 67.9% | +7.2 pts | -0.325 |
Two-condition loss clusters
| Condition | Trades | Loss rate | vs avg | Avg R |
|---|---|---|---|---|
| Day of week = Sun + Stop size = 2-3 ATR | 108 | 80.6% | +19.9 pts | -0.466 |
| Volatility (ATR14 vs its median) = Low + Day of week = Sun | 155 | 76.1% | +15.4 pts | -0.354 |
| RSI(14) range = 50-70 + Day of week = Sun | 163 | 74.2% | +13.5 pts | -0.365 |
| Volatility (ATR14 vs its median) = Low + Stop size = 2-3 ATR | 200 | 74.0% | +13.3 pts | -0.252 |
| Session (UTC) = Sydney + Stop size = 2-3 ATR | 100 | 74.0% | +13.3 pts | -0.290 |
| Day of week = Sun + Entry confirmation = Next candle | 233 | 73.0% | +12.3 pts | -0.316 |
| Trade vs EMA200 trend = With trend + Stop size = 1-2 ATR | 231 | 72.7% | +12.0 pts | -0.196 |
Win rate by condition
Bar colour: green = 10+ points above break-even (33.3%), amber = above break-even, red = below.
Session (UTC)
| Trades | Win rate | Avg R | Total R | PF | |
|---|---|---|---|---|---|
| Asian | 932 | 22.0% | -0.142 | -132.2 | 0.78 |
| London | 736 | 25.3% | -0.038 | -27.9 | 0.94 |
| New York | 1283 | 19.3% | -0.139 | -178.2 | 0.77 |
| Sydney | 324 | 22.2% | -0.125 | -40.4 | 0.80 |
RSI(14) range
| Trades | Win rate | Avg R | Total R | PF | |
|---|---|---|---|---|---|
| <30 | 50 | 16.0% | -0.014 | -0.7 | 0.97 |
| 30-50 | 1617 | 22.9% | -0.091 | -147.7 | 0.85 |
| 50-70 | 1547 | 20.9% | -0.148 | -228.3 | 0.77 |
| >70 | 61 | 14.8% | -0.033 | -2.0 | 0.93 |
Price vs EMA50
| Trades | Win rate | Avg R | Total R | PF | |
|---|---|---|---|---|---|
| Above EMA50 | 1611 | 20.4% | -0.151 | -243.9 | 0.76 |
| Below EMA50 | 1664 | 22.9% | -0.081 | -134.8 | 0.87 |
Price vs EMA200
| Trades | Win rate | Avg R | Total R | PF | |
|---|---|---|---|---|---|
| Above EMA200 | 1615 | 21.4% | -0.117 | -189.7 | 0.81 |
| Below EMA200 | 1660 | 22.0% | -0.114 | -189.0 | 0.82 |
Trade vs EMA200 trend
| Trades | Win rate | Avg R | Total R | PF | |
|---|---|---|---|---|---|
| With trend | 1752 | 22.4% | -0.091 | -160.0 | 0.85 |
| Against trend | 1523 | 20.9% | -0.144 | -218.7 | 0.78 |
EMA 20/50/200 stack
| Trades | Win rate | Avg R | Total R | PF | |
|---|---|---|---|---|---|
| Bullish stack | 1163 | 21.8% | -0.105 | -122.7 | 0.83 |
| Bearish stack | 1131 | 22.5% | -0.118 | -133.1 | 0.81 |
| Mixed | 981 | 20.7% | -0.125 | -122.9 | 0.80 |
Day of week
| Trades | Win rate | Avg R | Total R | PF | |
|---|---|---|---|---|---|
| Mon | 534 | 22.1% | -0.079 | -42.3 | 0.87 |
| Tue | 599 | 22.9% | -0.074 | -44.6 | 0.88 |
| Wed | 567 | 21.3% | -0.146 | -82.5 | 0.77 |
| Thu | 466 | 22.3% | -0.140 | -65.5 | 0.78 |
| Fri | 525 | 21.0% | -0.090 | -47.0 | 0.85 |
| Sat | 224 | 20.5% | -0.033 | -7.3 | 0.94 |
| Sun | 360 | 20.6% | -0.249 | -89.5 | 0.65 |
Hour of day (UTC)
| Trades | Win rate | Avg R | Total R | PF | |
|---|---|---|---|---|---|
| 00:00 | 144 | 25.7% | -0.063 | -9.0 | 0.90 |
| 01:00 | 184 | 21.7% | -0.140 | -25.8 | 0.79 |
| 02:00 | 163 | 22.7% | -0.144 | -23.5 | 0.78 |
| 03:00 | 125 | 20.8% | -0.194 | -24.2 | 0.72 |
| 04:00 | 85 | 18.8% | -0.189 | -16.1 | 0.71 |
| 05:00 | 100 | 26.0% | -0.047 | -4.7 | 0.92 |
| 06:00 | 131 | 17.6% | -0.220 | -28.9 | 0.67 |
| 07:00 | 179 | 26.3% | -0.013 | -2.4 | 0.98 |
| 08:00 | 162 | 28.4% | +0.005 | +0.8 | 1.01 |
| 09:00 | 137 | 24.1% | -0.080 | -11.0 | 0.87 |
| 10:00 | 133 | 21.1% | -0.100 | -13.3 | 0.84 |
| 11:00 | 125 | 25.6% | -0.017 | -2.1 | 0.97 |
| 12:00 | 155 | 21.3% | -0.119 | -18.4 | 0.81 |
| 13:00 | 229 | 19.2% | -0.173 | -39.7 | 0.73 |
| 14:00 | 225 | 21.3% | -0.093 | -21.0 | 0.85 |
| 15:00 | 191 | 24.1% | +0.000 | +0.1 | 1.00 |
| 16:00 | 149 | 14.8% | -0.199 | -29.6 | 0.67 |
| 17:00 | 93 | 8.6% | -0.486 | -45.2 | 0.36 |
| 18:00 | 91 | 18.7% | -0.004 | -0.4 | 0.99 |
| 19:00 | 69 | 17.4% | -0.079 | -5.5 | 0.86 |
| 20:00 | 81 | 21.0% | -0.229 | -18.5 | 0.66 |
| 21:00 | 104 | 25.0% | -0.046 | -4.7 | 0.92 |
| 22:00 | 130 | 22.3% | -0.122 | -15.8 | 0.81 |
| 23:00 | 90 | 18.9% | -0.221 | -19.9 | 0.67 |
Volatility (ATR14 vs its median)
| Trades | Win rate | Avg R | Total R | PF | |
|---|---|---|---|---|---|
| Low | 619 | 23.3% | -0.154 | -95.2 | 0.77 |
| Medium | 1576 | 23.5% | -0.091 | -143.2 | 0.85 |
| High | 1080 | 18.1% | -0.130 | -140.3 | 0.78 |
Entry confirmation
| Trades | Win rate | Avg R | Total R | PF | |
|---|---|---|---|---|---|
| Same candle | 1089 | 21.4% | -0.059 | -64.2 | 0.90 |
| Next candle | 2186 | 21.8% | -0.144 | -314.6 | 0.78 |
Stop size
| Trades | Win rate | Avg R | Total R | PF | |
|---|---|---|---|---|---|
| <1 ATR | 47 | 23.4% | -0.298 | -14.0 | 0.61 |
| 1-2 ATR | 517 | 28.2% | -0.134 | -69.3 | 0.81 |
| 2-3 ATR | 1050 | 25.0% | -0.167 | -175.5 | 0.76 |
| >3 ATR | 1661 | 17.5% | -0.072 | -119.9 | 0.87 |
Direction
| Trades | Win rate | Avg R | Total R | PF | |
|---|---|---|---|---|---|
| BUY | 1658 | 21.4% | -0.117 | -193.8 | 0.81 |
| SELL | 1617 | 22.0% | -0.114 | -184.9 | 0.82 |
Market
| Trades | Win rate | Avg R | Total R | PF | |
|---|---|---|---|---|---|
| Forex | 1250 | 24.2% | -0.047 | -58.4 | 0.92 |
| Crypto | 2025 | 20.1% | -0.158 | -320.3 | 0.75 |
Pair
| Trades | Win rate | Avg R | Total R | PF | |
|---|---|---|---|---|---|
| USD_JPY | 109 | 30.3% | +0.219 | +23.8 | 1.45 |
| EUR_USD | 118 | 31.4% | +0.132 | +15.6 | 1.24 |
| XAU_USD | 117 | 27.4% | +0.079 | +9.2 | 1.14 |
| GBP_JPY | 104 | 26.9% | +0.061 | +6.3 | 1.11 |
| AUD_USD | 129 | 26.4% | -0.018 | -2.3 | 0.97 |
| ADA_USDT | 131 | 21.4% | -0.037 | -4.8 | 0.94 |
| BCH_USDT | 132 | 22.0% | -0.041 | -5.4 | 0.93 |
| LINK_USDT | 119 | 25.2% | -0.051 | -6.0 | 0.91 |
| GBP_USD | 109 | 25.7% | -0.115 | -12.5 | 0.83 |
| TRX_USDT | 101 | 16.8% | -0.130 | -13.2 | 0.79 |
| NZD_USD | 144 | 20.1% | -0.093 | -13.4 | 0.85 |
| AVAX_USDT | 114 | 22.8% | -0.120 | -13.7 | 0.81 |
| EUR_JPY | 95 | 22.1% | -0.146 | -13.9 | 0.78 |
| POL_USDT | 84 | 19.0% | -0.170 | -14.3 | 0.74 |
| DOT_USDT | 139 | 22.3% | -0.116 | -16.2 | 0.81 |
| SOL_USDT | 144 | 23.6% | -0.125 | -18.0 | 0.81 |
| USD_CAD | 129 | 21.7% | -0.142 | -18.3 | 0.78 |
| BNB_USDT | 173 | 21.4% | -0.130 | -22.4 | 0.79 |
| USD_CHF | 114 | 20.2% | -0.218 | -24.8 | 0.68 |
| TON_USDT | 78 | 14.1% | -0.325 | -25.4 | 0.53 |
| DOGE_USDT | 146 | 16.4% | -0.188 | -27.5 | 0.71 |
| EUR_GBP | 82 | 11.0% | -0.344 | -28.2 | 0.48 |
| LTC_USDT | 159 | 18.2% | -0.219 | -34.8 | 0.68 |
| XRP_USDT | 142 | 19.7% | -0.271 | -38.5 | 0.61 |
| ETH_USDT | 176 | 19.9% | -0.219 | -38.6 | 0.67 |
| BTC_USDT | 187 | 17.6% | -0.223 | -41.6 | 0.65 |
Monthly results
| Month | Trades | Win rate | Total R |
|---|---|---|---|
| 2023-11 | 78 | 25.6% | -4.6 |
| 2023-12 | 111 | 26.1% | +4.3 |
| 2024-01 | 98 | 22.4% | -13.0 |
| 2024-02 | 73 | 19.2% | -6.7 |
| 2024-03 | 74 | 25.7% | +1.8 |
| 2024-04 | 98 | 24.5% | -15.0 |
| 2024-05 | 94 | 23.4% | -1.9 |
| 2024-06 | 76 | 25.0% | -1.2 |
| 2024-07 | 65 | 16.9% | -16.1 |
| 2024-08 | 80 | 22.5% | -2.5 |
| 2024-09 | 87 | 28.7% | +6.9 |
| 2024-10 | 80 | 18.8% | -6.2 |
| 2024-11 | 102 | 27.5% | +4.8 |
| 2024-12 | 92 | 16.3% | -25.5 |
| 2025-01 | 112 | 20.5% | -15.5 |
| 2025-02 | 92 | 23.9% | -5.2 |
| 2025-03 | 73 | 21.9% | -16.3 |
| 2025-04 | 97 | 18.6% | -18.9 |
| 2025-05 | 107 | 21.5% | -14.0 |
| 2025-06 | 84 | 28.6% | +20.4 |
| 2025-07 | 98 | 22.4% | -13.9 |
| 2025-08 | 102 | 19.6% | -9.4 |
| 2025-09 | 96 | 21.9% | -9.8 |
| 2025-10 | 98 | 16.3% | -32.0 |
| 2025-11 | 96 | 15.6% | -28.8 |
| 2025-12 | 80 | 17.5% | -30.2 |
| 2026-01 | 85 | 14.1% | -30.1 |
| 2026-02 | 76 | 25.0% | -1.0 |
| 2026-03 | 103 | 26.2% | -1.1 |
| 2026-04 | 85 | 17.6% | -18.5 |
| 2026-05 | 87 | 13.8% | -17.0 |
| 2026-06 | 97 | 20.6% | -7.6 |
| 2026-07 | 113 | 14.2% | -39.1 |
| 2026-08 | 80 | 26.2% | +0.2 |
| 2026-09 | 104 | 27.9% | +2.5 |
| 2026-10 | 94 | 23.4% | -18.2 |
| 2026-11 | 8 | 25.0% | -0.2 |
Settings used
Pairs: EUR_USD, GBP_USD, USD_JPY, USD_CAD, AUD_USD, NZD_USD, USD_CHF, EUR_GBP, EUR_JPY, GBP_JPY, XAU_USD, BTC_USDT, ETH_USDT, BNB_USDT, XRP_USDT, SOL_USDT, ADA_USDT, DOGE_USDT, AVAX_USDT, DOT_USDT, LINK_USDT, LTC_USDT, TRX_USDT, TON_USDT, POL_USDT, BCH_USDT · M15 · 2023-11-05 → 2026-11-03
Indicator: {"leftS": 5, "rightS": 5, "leftM": 2, "rightM": 2, "maxBeyond": 10, "maxWait": 300, "useIDM": false, "idmLeft": 3, "idmRight": 3, "idmVol": 0.0, "idmMaxWait": 500, "obLookback": 50, "fvgExtend": 3}
Rules: TP 2.0R · SL beyond sweep extreme + 0.1×ATR · max 100 bars · overlap off (1 trade per pair) · same-candle TP+SL = loss · forex: spread per pair · crypto: 0.1% Binance fee per side
Distance units: pips for forex, bp (0.01% of price) for crypto