Window: 2017-11-10 .. 2026-06-26 (2166 daily bars) Walk-forward: IS=504d OOS=126d step=252d embargo=5d windows=3 Checkpoints: 15 | seeds=[0, 1, 2, 3, 4] Constraints: {'min_sleeve': 0.0, 'max_sleeve': 0.4, 'max_cash': 0.3, 'max_daily_change': 0.05, 'max_daily_turnover': 0.1, 'no_trade_band_bps': 100.0, 'rebalance_every_n_days': 7} Cost model: {'commission_bps_per_side': 1.0, 'half_spread_bps': 5.0, 'slippage_bps': 5.0, 'impact_coef_bps': 5.0} Reward: {'lambda_var': 0.0, 'lambda_dd': 2.0, 'lambda_turnover': 1.0, 'lambda_cost': 1.0, 'dd_threshold': 0.15, 'var_window': 5}
Per-cell scoreboard
| Window | Seed | OOS start | OOS end | Agent net Sharpe | EW net Sharpe | RP net Sharpe | Uplift vs EW | p(net>EW) | Agent maxDD | Mean turnover | Mean cost bps |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | 0 | 2023-11-22 00:00:00 | 2024-05-23 00:00:00 | +2.278 | +2.277 | +3.554 | +0.001 | 0.501 | -15.29% | 0.0005 | 0.03 |
| 0 | 1 | 2023-11-22 00:00:00 | 2024-05-23 00:00:00 | +2.277 | +2.277 | +3.554 | +0.000 | 0.512 | -14.90% | 0.0002 | 0.01 |
| 0 | 2 | 2023-11-22 00:00:00 | 2024-05-23 00:00:00 | +2.278 | +2.277 | +3.554 | +0.001 | 0.501 | -15.39% | 0.0000 | 0.00 |
| 0 | 3 | 2023-11-22 00:00:00 | 2024-05-23 00:00:00 | +2.291 | +2.277 | +3.554 | +0.014 | 0.508 | -14.75% | 0.0002 | 0.03 |
| 0 | 4 | 2023-11-22 00:00:00 | 2024-05-23 00:00:00 | +2.300 | +2.277 | +3.554 | +0.023 | 0.511 | -14.80% | 0.0000 | 0.02 |
| 1 | 0 | 2024-11-22 00:00:00 | 2025-05-28 00:00:00 | -0.888 | -0.861 | -1.814 | -0.027 | 0.502 | -17.00% | 0.0002 | 0.01 |
| 1 | 1 | 2024-11-22 00:00:00 | 2025-05-28 00:00:00 | -0.863 | -0.861 | -1.814 | -0.002 | 0.501 | -16.98% | 0.0002 | 0.02 |
| 1 | 2 | 2024-11-22 00:00:00 | 2025-05-28 00:00:00 | -0.855 | -0.861 | -1.814 | +0.006 | 0.497 | -17.00% | 0.0003 | 0.02 |
| 1 | 3 | 2024-11-22 00:00:00 | 2025-05-28 00:00:00 | -0.877 | -0.861 | -1.814 | -0.015 | 0.500 | -16.94% | 0.0002 | 0.01 |
| 1 | 4 | 2024-11-22 00:00:00 | 2025-05-28 00:00:00 | -0.874 | -0.861 | -1.814 | -0.013 | 0.501 | -17.13% | 0.0002 | 0.01 |
| 2 | 0 | 2025-11-26 00:00:00 | 2026-05-29 00:00:00 | +4.739 | +4.712 | +2.929 | +0.027 | 0.551 | -3.02% | 0.0004 | 0.03 |
| 2 | 1 | 2025-11-26 00:00:00 | 2026-05-29 00:00:00 | +4.705 | +4.712 | +2.929 | -0.007 | 0.501 | -3.24% | 0.0000 | 0.00 |
| 2 | 2 | 2025-11-26 00:00:00 | 2026-05-29 00:00:00 | +4.685 | +4.712 | +2.929 | -0.027 | 0.536 | -3.12% | 0.0005 | 0.03 |
| 2 | 3 | 2025-11-26 00:00:00 | 2026-05-29 00:00:00 | +4.692 | +4.712 | +2.929 | -0.020 | 0.524 | -3.15% | 0.0002 | 0.01 |
| 2 | 4 | 2025-11-26 00:00:00 | 2026-05-29 00:00:00 | +4.676 | +4.712 | +2.929 | -0.036 | 0.509 | -3.24% | 0.0002 | 0.01 |
Aggregate
- Cells: 15 (windows=3 × seeds=5)
- Median Sharpe uplift (agent_net - EW_net): -0.002
- Mean Sharpe uplift: -0.005
- Best / worst uplift: +0.027 / -0.036
- Bootstrap p(agent_net > EW_net) — median: 0.502, max: 0.551
- Bootstrap p(agent_gross > EW_gross) — median: 0.501
- Worst-window agent maxDD: -17.13%
- Mean agent turnover (per day): 0.0002
- Mean agent cost (bps): 0.02
- Cells with positive net alpha vs EW: 40%
Per-seed median uplift (no-single-seed check)
| Seed | Median uplift |
|---|---|
| 0 | +0.001 |
| 1 | -0.002 |
| 2 | +0.001 |
| 3 | -0.015 |
| 4 | -0.013 |
- Seeds with positive median uplift: 2 / 5
Pre-registered acceptance gate
- Sharpe uplift >= +0.1: False (got -0.002)
- Bootstrap p (max across windows) <= 0.05: False (got 0.551)
- Worst maxDD >= -30%: True (got -17.13%)
- Mean turnover <= 10%: True (got 0.0002)
- Positive net alpha in >= 50% of cells: False (got 40%)
- No single seed responsible (>=3 seeds positive): False (got 2 / 5)
- Realistic costs applied (mean cost > 0): True (got 0.02 bps)
Verdict: REJECTED
elapsed: 120.9s | cells=15