research: interpret prod book universe x horizon matrix; ignore candidate cache

Four-arm results: 505 stays positive (softer on deep history); liquid breadth
destroys book under current knobs. Stop tracking 1.3GB pkl cache under reports/.cache.
This commit is contained in:
2026-07-19 14:25:06 +02:00
parent a4d5ed7a93
commit 1c38a94dd0
2 changed files with 49 additions and 9 deletions
+1
View File
@@ -46,3 +46,4 @@ backtest_snapshots/
# Rebuildable pickle caches are local accelerators, not decision evidence. # Rebuildable pickle caches are local accelerators, not decision evidence.
reports/*.pkl reports/*.pkl
reports/*.pk1 reports/*.pk1
reports/.cache/
+48 -9
View File
@@ -71,18 +71,57 @@ or depth changes the risk story.
## Results ## Results
Generated: `2026-07-19T14:07:37.458454` Generated: `2026-07-19T14:07:37` · artifact
`reports/prod-book-universe-horizon-20260719-140737.json`
Snapshot: MacBook deep `research.sqlite` (506 prod + breadth prices; 2.39M raw
GTL candidates). Strategy knobs = live production (residual 80, 80/20 high-vol
rank, ATR trail 3×, hold 30, gate-reset, `fill_mode=close`).
| arm | universe | entry start | Sharpe | SE | CAGR % | max DD % | trades | > Survivorship: today's constituents backfilled. **Compare arms relatively.**
|---|---|---|---:|---:|---:|---:|---:| > Absolute deep CAGR/Sharpe are not deployable forecasts.
| A_prod_4y_505 | prod_505 | 2022-07-01 | 1.32 | 0.49 | 31.8 | 18.9 | 374 |
| B_prod_4y_505_liquid | prod_plus_liquid | 2022-07-01 | 0.14 | 0.499 | -1.8 | 55.3 | 706 |
| C_prod_2016_505 | prod_505 | 2016-07-01 | 0.88 | 0.314 | 16.7 | 24.4 | 763 |
| D_prod_2016_505_liquid | prod_plus_liquid | 2016-07-01 | -0.06 | 0.316 | -7.0 | 73.9 | 1567 |
Full report: `reports/prod-book-universe-horizon-20260719-140737.json` | arm | universe | entries from | Sharpe | SE | CAGR % | max DD % | total ret % | trades | win % | vs SPY |
|---|---|---|---:|---:|---:|---:|---:|---:|---:|---:|
| **A** | 505 only | 2022-07-01 | **1.32** | 0.49 | **31.8** | **18.9** | +205 | 374 | 35.6 | +96.5 |
| **B** | 505 + liquid 1500 | 2022-07-01 | 0.14 | 0.50 | 1.8 | 55.3 | 7 | 706 | 29.3 | +95.0 |
| **C** | 505 only | 2016-07-01 | **0.88** | 0.31 | **16.7** | **24.4** | +369 | 763 | 36.7 | +257 |
| **D** | 505 + liquid 1500 | 2016-07-01 | 0.06 | 0.32 | 7.0 | 73.9 | 52 | 1567 | 28.0 | +254 |
Qualified longs: A 1448 · B 6587 · C 2450 · D 11551.
### Read (relative only)
1. **Same strategy, broader liquid universe kills the book** (A→B and C→D).
Sharpe collapses; DD roughly triples; win rate drops ~68pp; trade count
~doubles. This matches earlier breadth IC work: the production residual +
high-vol package is a **large-cap / prod-universe** edge, not a
“more names = better” edge.
2. **Longer history on 505 stays positive but softer** (A→C). Sharpe 1.32 → 0.88,
CAGR 32% → 17%, DD 19% → 24%. Still well above the liquid-breadth arms.
Levels are optimistic (survivorship); the useful message is “edge does not
vanish when 2018/2020 are included,” not “expect 17% CAGR forever.”
3. **Arm A vs older PhaseA / short-window controls** (~Sharpe 1.72.1): this
matrix re-ranked on deep research.sqlite with a fixed entry start; numbers
need not match prior reports row-for-row. Use **this table for AD
comparisons**, not for rewriting the production baseline number.
4. **No production change implied.** Keep the live ~505 universe. Do not broaden
the tradable set to liquid Nasdaq under current knobs without a new
pre-registered design (and almost certainly a different rank/tilt package).
## Verdict ## Verdict
**PENDING_HUMAN** — descriptive only; production knobs unchanged. **Descriptive matrix complete.**
| question | answer from this matrix |
|---|---|
| Prod book @ ~4y / 505 | Positive (arm A) |
| Same + liquid Nasdaq | **No** — large degradation (arm B) |
| Prod book since 2016 / 505 | Still positive, milder (arm C) |
| Same + liquid Nasdaq deep | **No** — worst arm (arm D) |
**PENDING_HUMAN** only for whether to log “universe broaden under current knobs”
as rejected in the main research index. Strategy knobs unchanged either way.