# Options-flow direction factors — pre-registration (frozen 2026-09-09 14:45, before the bulk pull) ## Question Does net options premium (Unusual Whales) carry NQ direction — pre-open from the prior session, or at 10:10 from the first 40 minutes — usable as an opportunity trigger? ## Data (pulled after this file) - `/api/stock/QQQ/net-prem-ticks?date=D`: per-minute increments 09:30–16:14 ET; net premium = net_call_premium − net_put_premium (signed, $). - `/api/market/market-tide?date=D`: market-wide cumulative net call/put premium at 5-minute steps 09:30–16:10. - Excluded: flow-alerts and options-volume (ignore `date`), dark pool (no side field; pagination cost). NQ 1m bars from the X10 archive; quad-witching excluded. Sample 2023-10-11 → 2026-09-08 (~700 sessions). ## Factors Pre-open (known by 09:30): F3 = prior-session QQQ net premium (full day); F4 = prior-session market-tide net premium at 16:10; F5 = prior-session QQQ net premium over the last 30 minutes (15:45–16:14). At 10:10: F1 = QQQ net premium 09:30–10:10; F2 = market-tide net premium at 10:10. Each factor is standardised by its rolling 60-session median absolute value (known at signal time); "strong" = |z| ≥ 1. ## Descriptive (no verdict) Up-share and mean NQ return by factor tercile for: 09:30→10:30 and 09:30→16:00 (pre-open factors), 10:10→16:00 (10:10 factors); walk-forward AUC as in the open-factor sweep. ## Policies (Part A fill rules: next 1m open after the signal, 0.25 slip, stop max(12, 2×ATR3 5m), 1.5R, cap 60 min) - **FL1** at 10:10: side = sign(F1) when strong. - **FL2** at 10:10: side = sign(F2) when strong. - **FL3** at 09:35 (first 5m close): side = sign(F3) when strong. Decision rule per policy: mean R > 0, one-sided p < 0.0167 (Bonferroni over 3), positive in both halves (split 2025-03-15), n ≥ 100. No variants, no threshold tuning; failed policies are closed.