Zilla Arena record / H1, sealed six months
GBPUSDBritish Pound / US Dollar
The strongest cell in the matrix: a design that made money across the sealed window and then survived every robustness check we could run against it.
DeepSeek Reasoner · Sensitive RSI extreme mean reversion with volatility floor
graded positive
The design, in plain words
The winning design is a mean reversion rule. It watches the RSI, a standard gauge of overbought and oversold, shortened to 10 periods so it reacts within a few hours, and it enters when price exits an extreme, trading back toward the middle of the range. The training window measured this market as low efficiency chop, the regime where fading extremes beats chasing them.
Two filters guard the entries, and both are reasoned, not fitted. A volatility floor requires the average true range to sit between 0.08% and 0.3% of price, which keeps the rule out of dead hours where the spread eats the bounce before it happens. A news gate refuses any entry within 30 minutes of a scheduled high impact release, because a release candle is a coin toss that can run straight through a 1.5 ATR stop before the rule can respond. Profits come off on a ladder: half the position banks at one unit of risk and the stop moves to breakeven, the rest targets two.
The exact rule, as the engine ran it
RSI 10 30/70 · stop 1.5xATR(14) · 2R ladder 1R@0.5/2R@0.5 · market · ATR 0.08-0.3% · no entry 30m before/30m after high news
Every parameter the engine received
- strategy
- "rsi_reversal"
- atr_period
- 14
- order_type
- "market"
- targets
- [[1,0.5],[2,0.5]]
- breakeven_after_target
- 1
- valid_bars
- 12
- cooldown_bars
- 5
- rsi_period
- 10
- rsi_oversold
- 30
- rsi_overbought
- 70
- sl_atr_mult
- 1.5
- rr
- 2
- atr_pct_min
- 0.08
- atr_pct_max
- 0.3
- news_filter
- "avoid"
- news_impact
- "high"
- news_before_minutes
- 30
- news_after_minutes
- 30
The model’s own stated reasoning, verbatim
“The 35/65 all-hour variant generated too many weak signals and lost. I return to 30/70 RSI extremes, which produced a positive (though tiny-sample) result in the first configuration. To get a measurable number of trades without using weak thresholds, I shorten RSI to 10, remove the session restriction, reduce the news buffer, lower cooldown, and add a mild ATR-percent floor to filter dead quiet bars. The stop, target ladder, and breakeven structure stay unchanged.”
How it got there: the accepted configurations, in order
- 03London session RSI mean reversion+0.249R on 8 trades in training
- 05Broad RSI moderate extreme mean reversion-0.210R on 28 trades in training
- 06Sensitive RSI extreme mean reversion with volatility floor-0.058R on 27 trades in training
4 further replies produced no valid configuration and were rejected; the record keeps them.
The measurement
Month by month
| Month | Trades | Net P&L |
|---|---|---|
| Feb 2026 | 11 | -$41 |
| Mar 2026 | 21 | +$380 |
| Apr 2026 | 19 | +$25 |
| May 2026 | 25 | -$40 |
| Jun 2026 | 20 | +$714 |
| Jul 2026 | 23 | +$317 |
| Aug 2026 | 6 | +$176 |
The rest of the scorecard
- Win rate
- 56.8% (71W 54L)
- Expectancy per unit of risk
- +0.125R
- Profit factor
- 1.27
- Longest losing streak
- 4 trades
- Average risk per trade, delivered
- 1.1% (peak 3.9%)
- Expectancy without the 5 best trades
- +0.063R
- Share of gross wins in the 5 best
- 11.6%
- Final balance
- $11,531
Robustness, checked after the fact
After the window was scored, the locked design was deliberately stress tested on the same window. Each parameter was moved about ten percent in each direction, one at a time, and the design was rescored. It stayed profitable in all eighteen variants, so the result does not sit on a knife edge of one magic number.
Removing each filter shows what it was for: without the news gate the edge shrinks, and without the volatility floor it shrinks too, so both filters earned their keep on unseen data. Transplanted unchanged onto other markets, the rule stayed positive on the two currency pairs that trade most like this one and lost on the yen and the Canadian dollar. A rule that won everywhere would be suspicious; a rule that wins where its logic applies is what an edge looks like.
These diagnostics ran only after the sealed window had been opened and scored, so they could not pick a different winner; they can only qualify the claim. Trades were written under a diagnostic label the house record excludes.
One parameter moved at a time: 18 of 18 stayed positive
| Variant | Closed | Expectancy | Net P&L |
|---|---|---|---|
| atr_period = 13 | 125 | +0.125R | +$1,522 |
| atr_period = 15 | 127 | +0.118R | +$1,477 |
| cooldown_bars = 4 | 128 | +0.133R | +$1,677 |
| cooldown_bars = 6 | 116 | +0.173R | +$2,094 |
| news_after_minutes = 15 | 130 | +0.111R | +$1,417 |
| news_after_minutes = 45 | 125 | +0.125R | +$1,531 |
| news_before_minutes = 15 | 126 | +0.108R | +$1,332 |
| news_before_minutes = 45 | 125 | +0.125R | +$1,531 |
| rr = 1.8 | 125 | +0.125R | +$1,531 |
| rr = 2.2 | 125 | +0.125R | +$1,531 |
| rsi_overbought = 63 | 162 | +0.060R | +$1,026 |
| rsi_overbought = 77 | 83 | +0.099R | +$933 |
| rsi_oversold = 27 | 108 | +0.105R | +$1,052 |
| rsi_oversold = 33 | 139 | +0.099R | +$1,701 |
| rsi_period = 11 | 104 | +0.171R | +$1,776 |
| rsi_period = 9 | 143 | +0.138R | +$2,056 |
| sl_atr_mult = 1.35 | 125 | +0.114R | +$1,369 |
| sl_atr_mult = 1.65 | 125 | +0.150R | +$1,848 |
Each filter removed outright
| Ablation | Closed | Expectancy | Net P&L |
|---|---|---|---|
| no-news | 132 | +0.089R | +$1,124 |
| no-volband | 129 | +0.101R | +$1,222 |
The same rule transplanted onto other markets
| Market | Closed | Expectancy | Net P&L |
|---|---|---|---|
| AUDUSD | 133 | +0.090R | +$1,267 |
| BTCUSD | 5 | +0.244R | +$423 |
| EURUSD | 119 | +0.045R | +$544 |
| USDCAD | 47 | -0.038R | -$454 |
| USDJPY | 70 | -0.025R | -$698 |
| XAUUSD | 1 | -1.000R | -$107 |
Every entrant, not just the winner
Every model that was called, with the design it locked and what the sealed window did to it. Three of the six called designs lost money here. The board ranks by expectancy per unit of risk, the statistic the arena scores.
| Rank | Model | Design | Closed | Expectancy | Net P&L | Max DD | Verdict |
|---|---|---|---|---|---|---|---|
| 1 | DeepSeek Reasoner | Sensitive RSI extreme mean reversion with volatility floor RSI 10 30/70 · stop 1.5xATR(14) · 2R ladder 1R@0.5/2R@0.5 · market · ATR 0.08-0.3% · no entry 30m before/30m after high news Its stated reasoning“The 35/65 all-hour variant generated too many weak signals and lost. I return to 30/70 RSI extremes, which produced a positive (though tiny-sample) result in the first configuration. To get a measurable number of trades without using weak thresholds, I shorten RSI to 10, remove the session restriction, reduce the news buffer, lower cooldown, and add a mild ATR-percent floor to filter dead quiet bars. The stop, target ladder, and breakeven structure stay unchanged.” | 125 | +0.125R | +$1,531 | 6.2% | graded positive |
| 2 | GPT-4.1 (OpenAI) | RSI Reversal, Responsive, London Session RSI 8 32/68 · stop 1.3xATR(12) · 1.5R · market · session 07-17 UTC · ATR 0.05-0.19% · no entry 30m before/30m after high news Its stated reasoning“Previous configs were too selective, resulting in very few trades and negative expectancy. To increase trade count and responsiveness in a choppy, mean-reverting window, I shortened the RSI period to 8 and set oversold/overbought to 32/68, making the reversal trigger more frequently but still outside the noise band. ATR period set to 12 for moderately responsive stops, with stop at 1.3 ATR and RR at 1.5 to balance win rate and reward. Session filter 7-17 UTC targets the most active hours. ATR percent filter (0.05-0.19) allows more trades in a range of volatility conditions. News avoidance (high impact, 30m before/after) remains. Cooldown of 6 bars to prevent clustering. No trend filter, as mean-reversion is the intent. No targets ladder for simplicity. This config aims for more trades and a better balance of win rate and expectancy in a choppy GBPUSD H1 window.” | 87 small sample | +0.058R fragile: fails the best five check (-0.027R without them) | +$1,116 | 8.5% | graded positive |
| 3 | MiniMax M3 | GBPUSD H1 RSI Mean-Reversion RSI 14 30/70 · stop 1.5xATR(14) · 2R ladder 1R@0.5/2R@0.5 · market · session 07-17 UTC · ATR 0.08-0.3% · no entry 30m before/30m after high news Its stated reasoning“Training window reads choppy / mean-reverting (DE 0.049, well below the 0.12 chop threshold) with 53% of bars above EMA200 and a 27% rise in ATR into the second half — directional rules get whipsawed, so the chosen rule is RSI reversal, evaluated on the EXIT from the extreme, not on the extreme itself. London+NY hours (07-17 UTC) carry the bulk of the mean range (06-15 UTC all above 0.00154); 21-06 UTC is where the 1R stop gets eaten by spread without a bounce materialising, so the session filter drops it. ATR% band of 0.08-0.30% brackets the 0.118% mean and excludes both the 03-05 UTC dead zone and the post-news spikes that turn mean-reversion trades into trend casualties. News 'avoid' with a 30-min buffer is consistent with the same reasoning — high-impact GBP/USD events create directional legs that the rule is not designed to ride. Targets ladder banks half at 1R and moves stop to breakeven, which is the configuration I expect to do the most work: 1R is where mean-reversion bounces statistically distribute their mass, and the second half is a free option. Submitted unchanged as final because the closed-trade count is 8 — the brief itself flags below ~30 positions as noise, and any parameter tweak I made after seeing this scorecard would be fitting 8 outcomes. The config was built from structural market statistics (regime, hour profile, ATR distribution) that describe market behaviour rather than this particular sequence of trades.” | 28 noise sample | +0.312R | +$915 | 3.4% | graded positive |
| 4 | Claude Opus 4.5 (Anthropic) | RSI Mean Reversion Simple RSI 14 30/70 · stop 1.5xATR(14) · 2R · market · session 07-16 UTC · no entry 30m before/30m after high news Its stated reasoning“Keeping the same configuration. The result shows 8 trades with +0.061R expectancy and profit factor 1.10. This is still a very small sample (the scorecard correctly notes it's noise), but the design logic remains sound: RSI reversal is appropriate for a market measured at 0.0486 directional efficiency (explicitly choppy/mean-reverting). The 37.5% win rate with 1.83R average win vs 1.0R average loss is the expected shape for a mean-reversion strategy with 2:1 RR - you lose more often but wins are larger. I'm resisting the temptation to tune parameters based on 8 trades. The core thesis hasn't changed: standard RSI levels (30/70) have broad applicability, session filter captures liquid London/NY hours where the hourly data shows highest ranges, news avoidance prevents entries during scheduled volatility. Any change I make now would be fitting to this specific 8-trade sample rather than improving the underlying logic. The design is simple, the reasoning is defensible from first principles, and further iteration risks overfitting to noise. Setting final.” | 23 noise sample | -0.127R | -$284 | 7.0% | graded negative |
| 5 | Grok 4 (xAI) | rsi_rev_choppy RSI 14 30/70 · stop 1.5xATR(14) · 2R · market · session 07-16 UTC · EMA50 counter-trend Its stated reasoning“Choppy regime (dir eff 0.0486) favors mean-reversion via rsi_reversal over ema_cross. Session 7-16 captures peak ranges (12-14 UTC). Counter trend_ema(50) suppresses with-trend signals. Cooldown prevents over-trading. Market ATR and volatility stats used for sizing only.” | 27 noise sample | -0.148R | -$403 | 8.4% | graded negative |
| 6 | Qwen3-Max (Alibaba) | GBPUSD_RSI_TrendFiltered RSI 14 30/70 · stop 1.8xATR(14) · 2.2R · market · session 06-16 UTC · EMA200 with-trend · ATR 0.08-inf% · no entry 30m before/30m after high news Its stated reasoning“The training window shows a choppy regime (directional efficiency 0.0486), so pure trend-following like ema_cross is unlikely to work. RSI reversal aligns with mean-reversion in choppy markets. Filtering for London/NY overlap (6-16 UTC) captures highest volatility hours (mean range peaks at 14:00). Trend filter 'with' EMA(200) ensures we only take longs above and shorts below the slow trend, avoiding whipsaws — 53.4% of bars closed above EMA(200), confirming slight bullish bias. Volatility floor (ATR% >= 0.08) avoids low-movement traps; no ceiling needed as volatility rose 27% in second half. News avoidance around high-impact events reduces adverse fills during spikes. Stop at 1.8x ATR and RR 2.2 balances win rate and reward given typical bar ranges (~0.0016–0.003). Cooldown prevents overtrading.” | 2 noise sample | -1.000R | -$206 | 2.1% | graded negative |
| Gemini 2.5 Pro (Google) | Not called: no API key was configured for this provider. Listed so the size of the field is not overstated. | ||||||
| Kimi K2.5 (Moonshot) | Not called: no API key was configured for this provider. Listed so the size of the field is not overstated. | ||||||
How this was measured
- Training window, visible to the models
- Dec 22 2025 to Jan 31 2026 (652 H1 bars)
- Embargo between training and scoring
- 12.5 days, equal to the engine's settle margin, so no training trade can still be open when scoring starts
- Sealed scoring window
- Feb 13 2026 to Aug 14 2026 (4368 H1 bars), opened exactly once per locked design
- Search before the seal broke
- 150 candidate configurations scored on training windows across all 8 markets; 16 on this market; every candidate is stored in the record with its training score
- Capital and intended risk
- $10,000 per design, 1% of account intended per trade
- Costs charged
- spread, once per position, taken from the ask recorded on the fill bar, with a measured fallback
- Costs not charged
- commission, swap and slippage beyond the next bar open; thin margins over break even do not survive them, and the verdicts say so
- Record
- GBPUSD H1, ref a7512e00, committed under backend/arena_matrix_out
Everything above is a measurement of one past window on our own candles, with spread charged and commission and swap not charged. It is history, not a forecast. None of it annualises, and none of it says anything about the next window.