E-12. Rotation walk-forward (2026-07-13)
- 1st run: no positions in any window (+0.0%×32) — warm-up bug (validation slice 730 bars < indicator warm-up 2,160 bars). Lesson: a "too clean null result" is as much a bug signal as -108%. Fix: signals are computed including training-period context; fills and aggregation use only the validation slice (eval_start).
- 2nd run (32 windows, 384 total searches recorded): OOS Sharpe 0.581 / +46.22% / MDD -41.16% — barely passes the preregistered rule (≥0.5).
- Diagnosis: fatal return concentration — excluding w22 (2024-11, +57.4%), the rest sum to -7.1%, window median ~0. Chains of losing windows (w25~w27 etc.) amplify the combined MDD relative to the worst individual window (-20%) by 2x. This reconfirms the momentum-factor structure where "one month feeds 3 years".
- Verdict: D-014 — conditional progress (measure reduced sizing → D-010 gate); a capital-constraint issue emerged.
Source and migration evidence
Source: backtest/docs/experiment-log.md#E-12
Original SHA-256: 069c4aaaf53a20930ca8d94ba6365b4ce2b6bc560171d662a4c179ea55a6857c
Raw data and account information are not part of the public package. The original results do not replace statistical or scientific revalidation. The English text is a translation; numbers, tables and charts are carried over unchanged.