# Broad-universe fip_id IC research (Phase B) Generated: 2026-07-18T19:48:28.127710 ## Scope - **Research only** — production universe, gate, scanner, schedule unchanged. - Price-only signal harness; no sentiment/fundamentals on the broad tier. - Point-in-time liquidity mask: top **1500** by 63d median $vol, price ≥ **$5.0** at as-of. ## Caveats - **Survivorship bias**: today's constituents backfilled historically (worse in small caps). - **IEX volume undercount**: relative $vol rank only, not absolute floors. - **Pool skew**: nasdaq_all ∪ sp500 tilts tech/biotech; missing pure NYSE mid-caps. ## Fingerprint (505-name prod snapshot) - Expected: IC ≈ -0.045, t ≈ -2.9 - Observed: IC = -0.045, t = -2.91, weeks = 35, reliable = True - Pass: **True** ## Liquid-breadth signal_eval (fip_id) **Not run yet in this environment** (no Alpaca credentials to build `backtest_snapshots/research.sqlite`). Local machine with keys: ```bash python scripts/extend_snapshot_universe.py --force-copy python scripts/run_fip_breadth_research.py --skip-fingerprint --allow-spawn --workers 6 ``` (`--skip-fingerprint` only after a green fingerprint on this machine.) | metric | value | |---|---| | mean_ic | _pending_ | | ic_t_stat | _pending_ | | weeks | _pending_ | | avg_cross_section | _pending_ | | reliable | _pending_ | ## Verdict (iron rule) - **Fingerprint:** green (IC −0.045 / t −2.91 / reliable / 35 weeks). - **Breadth iron rule:** **pending** until research.sqlite run completes. - Green breadth would authorize a **follow-up proposal** only (two-tier universe / gate revalidation) — **not** production wire-in. ## Artifacts - Fingerprint report: `reports/fip-breadth-20260718-194828-fingerprint.json` (and summary `reports/fip-breadth-20260718-194828.json`) - Breadth report: _pending_