# Edge-Discovery Sprint Implementation Plan

> **For agentic workers:** REQUIRED SUB-SKILL: superpowers:subagent-driven-development. Steps use `- [ ]`.

**Goal:** Widen the book with more genuinely-uncorrelated edges (+ raise return). Build + gauntlet a batch of candidates, keep the survivors that are uncorrelated to the existing 4 edges.

**Discipline (non-negotiable):** every candidate → PIT survivorship-free backtest → gauntlet (DSR/OOS, crypto periods_per_year=365) → PRE-REGISTERED kill: net DSR<0.5, OR edge only in uninvestable thin names, OR |correlation| > 0.6 to the existing book (multi-premia / crypto-momentum / funding / xsfunding). A sleeve earns a slot ONLY if uncorrelated. Report each survivor's correlation + return contribution.

**Tech:** Python 3.12, numpy; reuse the `crypto_pit` panel + the cross-sectional machinery (`eligible_asof`, `construction_weights`, `robust_z`, `realized_vol_from_closes`, `daily_returns_for_weights`, the gauntlet `compute_stats`/`evaluate`/`per_period_sharpe`). pytest, strict mypy, NO live network in tests, commit per task (do NOT push), trailer `Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>`.

## Candidates
**Stream A — crypto, data-in-hand (`crypto_pit` panel = {sym:{day:(close[perp], qvol, funding)}}):**
1. Crypto **TS momentum/trend** (directional — return engine).
2. XS **short-term reversal** (market-neutral).
3. XS **low-volatility** (market-neutral).
4. XS **illiquidity/volume** (market-neutral; cost-fragile — flag).

**Stream B — non-crypto diversifier (liquid multi-asset ETFs, data-in-hand via the multistrat source):**
5. **Cross-asset trend** (managed-futures style on SPY/IEF/GLD/PDBC/DBMF/+) — crisis-alpha tail-hedge.

## Build order (max reuse first; discovery is emergent — drop a candidate if the gauntlet kills it)
1. **Crypto XS price-factor domain** — `xs_reversal_score`, `xs_lowvol_score`, `xs_illiquidity_score` (pure, on the panel; reuse robust_z + realized_vol_from_closes).
2. **CryptoFactorBacktestRunner** — PIT cross-sectional, pluggable score fn, books PRICE returns (reuse `daily_returns_for_weights` on the close panel) − liquidity-scaled cost; `evaluate_factor_matrix` (gauntlet per construction × factor). 
3. **RUN** the 3 XS factors (long_tilt + market_neutral) → verdicts (controller).
4. **TS-trend domain + runner** — per-asset trend signal (multi-horizon TSMOM, vol-scaled) → directional book; reusable for crypto + ETF panels.
5. **RUN crypto TS-trend** on crypto_pit → verdict (controller).
6. **ETF panel adapter** (reuse multistrat's ETF source) + **RUN cross-asset TS-trend** → verdict (controller).
7. **Correlation check + synthesis** — generate the existing edges' return series, correlate each survivor, report the widened book + which earn a slot.

Each build task: TDD, full suite + mypy green, commit. Each RUN task: controller runs locally on data-in-hand, applies kill criteria, reports the verdict honestly (expect several to die — that's the loop working).
