← all research

Window: 2006-08-14..2026-08-12; XLK from 2020-01-01; SI from 2021-06-15 (PIT availableDate). All proxies lag-1. Targets: SPY close-to-close, EqMom BASE L126/H21 top50 net@10bps next-open.

ProxyTargetNcorr20lead1lead5lead1_early<2024lead1_late>=2024tercile_p
ratio_z60SPY1601+0.137+0.014+0.030+0.010+0.0230.3575
ratio_z60EqMom_BASE_H211601+0.016-0.013+0.008+0.001-0.0240.6195
vixSPY5029+0.120+0.016+0.016+0.013+0.0900.1930
vixEqMom_BASE_H215029+0.024+0.007+0.009+0.004+0.0720.1690
spreadSPY5029-0.040-0.000+0.001+0.003+0.0440.5840
spreadEqMom_BASE_H215029+0.066-0.016-0.015-0.013+0.0350.7365
curveSPY5029+0.455-0.005-0.004-0.002+0.0060.6335
curveEqMom_BASE_H215029+0.548-0.003-0.001+0.001+0.0330.4630
si_meanSPY1288+0.356+0.013+0.030-0.035+0.0440.3220
si_meanEqMom_BASE_H211288+0.065+0.030+0.027-0.050+0.0650.1300

Pre-registered PROMOTE bar

Stable |lead1|>0.05 in BOTH early and late windows AND tercile p<0.05 → Phase-2 OOS hunt. Else KILL.

Verdicts (fill after run)

  • ratio_z60 x SPY: KILL (early +0.010 late +0.023 p 0.3575).
  • ratio_z60 x EqMom_BASE_H21: KILL (early +0.001 late -0.024 p 0.6195).
  • vix x SPY: KILL (early +0.013 late +0.090 p 0.1930).
  • vix x EqMom_BASE_H21: KILL (early +0.004 late +0.072 p 0.1690).
  • spread x SPY: KILL (early +0.003 late +0.044 p 0.5840).
  • spread x EqMom_BASE_H21: KILL (early -0.013 late +0.035 p 0.7365).
  • curve x SPY: KILL (early -0.002 late +0.006 p 0.6335).
  • curve x EqMom_BASE_H21: KILL (early +0.001 late +0.033 p 0.4630).
  • si_mean x SPY: KILL (early -0.035 late +0.044 p 0.3220).
  • si_mean x EqMom_BASE_H21: KILL (early -0.050 late +0.065 p 0.1300).

Corrtrack extension (schema, not live rows)

Add to production/correlation_tracker.py HISTORY + 20d corrs: xlk_spy_ratio, xlk_spy_z60, si_mean_daysToCover (FINRA PIT join). Live history.csv has <20 rows — backfill daily before trusting 20d corr.

ALL DONE