1. Architecture audit (verified, not asserted)
- RL placement today: research ONLY (allocators v2-v6, all rejected; zero production runners). Supervised ML in production: flagship walk-forward scores + pooled transfer (observe).
- Leakage controls: framework lag>=1 + perturbation guards (incl. new env/bandit causality tests); walk-forward + 5d embargo; costs inside envs since v4; multi-seed; frozen baselines + pre-registered judge gate.
- Costs: 4-component model in RL envs (commission/spread/slip/impact); 10bps one-way + turnover netting in backtests.
- New in this study: shared-universe baseline battery (A/B/C/D/F), RL scoped to position management on validated entries (this file), bandit-before-deep-RL head-to-head.
2. Battery (sqrt365; D staggering grid note: F trains yearly)
| Strategy | IS Sh | IS DD | OOS Sh | OOS DD | Sortino | Calmar |
|---|---|---|---|---|---|---|
| A momentum (frozen) | 0.88 | -54.7% | 1.74 | -28.5% | 2.30 | 1.81 |
| B mean-revert | 0.75 | -61.9% | 1.38 | -22.7% | 1.99 | 1.60 |
| C breakout | 0.34 | -70.5% | 2.14 | -22.1% | 3.20 | 3.15 |
| D trend | 0.75 | -53.0% | 1.59 | -16.4% | 2.23 | 1.58 |
| F gbm-rank | 1.07 | -46.8% | 1.58 | -27.0% | 2.34 | 1.73 |
| RL-sizing (3-seed mean) | 0.88 | -17.0% | 1.60 | -8.0% | 2.09 | 1.49 |
| BANDIT LinUCB | 0.94 | -42.2% | 1.84 | -17.7% | 2.61 | 3.28 |
| RL-sizing s2 | 0.88 | -17.0% | 1.60 | -8.0% | 2.09 | 1.49 |
| RL-sizing s0 | 0.88 | -17.0% | 1.60 | -8.0% | 2.09 | 1.49 |
| RL-sizing s1 | 0.88 | -17.0% | 1.60 | -8.0% | 2.09 | 1.49 |
3. Gate verdicts vs frozen v1
judge: B mean-revert vs frozen baseline v1 (overlap 5030d)
| leg | base Sharpe | cand Sharpe | base maxDD | cand maxDD | | IS | 0.88 | 0.75 | -54.7% | -61.9% | | OOS | 1.74 | 1.38 | -28.5% | -22.7% | IS bootstrap p=0.337 | IS p<0.05: NO | OOS Sharpe >= base: NO | OOS DD within +5pp: OK verdict: FAIL — move on
judge: C breakout vs frozen baseline v1 (overlap 5030d)
| leg | base Sharpe | cand Sharpe | base maxDD | cand maxDD | | IS | 0.88 | 0.34 | -54.7% | -70.5% | | OOS | 1.74 | 2.14 | -28.5% | -22.1% | IS bootstrap p=0.946 | IS p<0.05: NO | OOS Sharpe >= base: OK | OOS DD within +5pp: OK verdict: FAIL — move on
judge: D trend vs frozen baseline v1 (overlap 5030d)
| leg | base Sharpe | cand Sharpe | base maxDD | cand maxDD | | IS | 0.88 | 0.75 | -54.7% | -53.0% | | OOS | 1.74 | 1.59 | -28.5% | -16.4% | IS bootstrap p=0.989 | IS p<0.05: NO | OOS Sharpe >= base: NO | OOS DD within +5pp: OK verdict: FAIL — move on
judge: F gbm-rank vs frozen baseline v1 (overlap 5030d)
| leg | base Sharpe | cand Sharpe | base maxDD | cand maxDD | | IS | 0.88 | 1.07 | -54.7% | -46.8% | | OOS | 1.74 | 1.58 | -28.5% | -27.0% | IS bootstrap p=0.119 | IS p<0.05: NO | OOS Sharpe >= base: NO | OOS DD within +5pp: OK verdict: FAIL — move on
judge: RL-sizing (3-seed mean) vs frozen baseline v1 (overlap 5030d)
| leg | base Sharpe | cand Sharpe | base maxDD | cand maxDD | | IS | 0.88 | 0.88 | -54.7% | -17.0% | | OOS | 1.74 | 1.60 | -28.5% | -8.0% | IS bootstrap p=0.998 | IS p<0.05: NO | OOS Sharpe >= base: NO | OOS DD within +5pp: OK verdict: FAIL — move on
judge: BANDIT LinUCB vs frozen baseline v1 (overlap 5030d)
| leg | base Sharpe | cand Sharpe | base maxDD | cand maxDD | | IS | 0.88 | 0.94 | -54.7% | -42.2% | | OOS | 1.74 | 1.84 | -28.5% | -17.7% | IS bootstrap p=0.157 | IS p<0.05: NO | OOS Sharpe >= base: OK | OOS DD within +5pp: OK verdict: FAIL — move on
4. Verdicts + Step-12 kill list (2026-09-09)
ADOPT: nothing. Scoreboard: 46 judged, 0 adopted, 1 watchlisted.
- B/C/D — FAIL. C's OOS 2.14 with IS 0.34 (p=0.946 against) is the textbook temptation the gate exists to refuse. D trend also fails.
- F gbm-rank — FAIL, best IS of the battery (1.07) but p=0.119. Supervised ML doesn't clear the bar either. The flagship's ML edge (21d Spearman on its own cache/universe) does not transfer to generic rankers on the broad universe.
- RL-sizing — FAIL as alpha, KILLED per Step 12. All 3 seeds independently converged to constant 25% size (1260/1260 actions) — not a bug: verified via action histograms. verdict: RL discovered fractional exposure, i.e. insurance, with zero timing content (IS Sharpe ties BASE exactly at 1/3 the DD). Demote/remove from consideration; do not promote to any runner.
- BANDIT — FAIL, KILLED per Step 12. Pulls show why: IS balanced (62/67/54, no signal), OOS tilted breakout (18/42) — it rode breakout's hot OOS that IS called terrible. Luck, not learning. Step-7 comparison: bandit (1.84) > PPO-sizing (1.60) OOS, but neither significant — simpler wins among losers; both stay out.
- Kept: BASE momentum (frozen), flagship ML, PEAD sleeve, insurance controls as controls. The 12-step program's deliverable is substantially this negative result: RL's legitimate openings (sizing, selection) were built fairly, costed honestly, and lost to doing nothing clever.