Repository navigation
fix(notebook,#18124): research_asset_class_momentum -- local research path + real 12y top-3 backtest replace placeholder - #18162
Conversation
… path + real 12y top-3 backtest replace placeholder SOTA repair (1st of the placeholder set in the #18124 audit): - The notebook was QuantBook-only (unrunnable locally) and ended in a fake "BACKTEST RESULTS" placeholder with unverified "expected characteristics". - Added the honest local research path used across the family: the same 5 asset-class ETFs (SPY/EFA/BND/VNQ/GSG) via yfinance, tz-normalized, same `close` frame downstream on both paths. - Replaced the placeholder with a REAL vectorized backtest of the strategy itself: monthly top-3 by 252d momentum, equal weight, next-month holding, 132 months measured -- CAGR 10.25%, Sharpe 0.76, MaxDD -30.05% vs SPY 15.38% and equal-weight-5 8.51% on the same window. - Honest findings written in: momentum beats the naive equal-weight but trails SPY buy&hold over this window, and the measured MaxDD (-30%) exceeds the placeholder's optimistic "expected 15-25%" -- the old claims were design expectations, not results. Executed 9/9 cells, 0 errors, all execution_count set (C.1/C.2). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Notebook PR Validation: PASS
Checks: H.1 (no errors), H.3 (execution_count), C.1 (no banned patterns) |
Golden-Set Execution (H.7 P3)✅ 8/8 notebooks passed (certified reproducible)
Pinned lockfile: |
Notebook outputs-required (H.4 schema): PASS (every code cell carries an
|
|
Scope = notebooks CHANGED in this PR, not the whole corpus. Explicit |
…, 3.11 -> 3.13 to match series env)
…python3 (3.11) kernel to match base stamp
|
Cette PR depasse le seuil de couverture review (par defaut 300 additions) et n'a recu aucune review -- ni bot, ni humaine. Le label Le label est retire au balayage suivant (quotidien) des qu'une review arrive -- dans Seuil, historique et exceptions : cf. |
|
[ADJOINT PREFLIGHT] Note de lecture (informatif, ne change pas le verdict) : le commentaire sticky |
Grain: MED/notebook-python -- lane myia-po-2026:CoursIA -- prev: #18160
Summary
SOTA repair of
Research-Executor/research_asset_class_momentum.ipynb(1st ofthe placeholder set in the #18124 audit).
"BACKTEST RESULTS" placeholder printing unverified "expected
characteristics" (CAGR ~8-12%, MaxDD ~15-25%, Sharpe ~0.6-0.9).
SPY/EFA/BND/VNQ/GSG via yfinance, tz-normalized per env-gotchas, unified
closeframe on both QC/local paths) and a real vectorized backtest ofthe strategy itself: at each month-end rank by 252d momentum, hold top 3
equal-weight next month, 132 months measured.
Honest measured findings (SOTA-OK)
the same window: SPY buy&hold 15.38%, equal-weight-5 8.51% (final
equity 2.92x / 4.81x / 2.45x).
over this 12y window -- stated as measured, no spin.
15-25%": the previous claims were design expectations, not results.
reference -- stated in the closing note.
Validation
execution_countset (C.2)raise NotImplementedError/assert False/1/0(verified)committed outputs are the real outputs
See #18124 (partial: 4 of 10; remaining from this lane:
defensive_etf_rotation, long_short_harvest).
🤖 Generated with Claude Code