Spot-Vol Beta — ^GSPC vs. ^VIX
Rolling regression between spot returns and implied volatility changes
What does this page show? —
Spot-Vol beta measures how strongly volatility (VIX) reacts to price moves in the index: by how many percent the VIX changes on average per 1% index return. Falling prices usually come with rising vol. The page shows the regression, the rolling beta, how unusual the last trading day was relative to the regression line, and what followed extremes historically. Sidebar: index/vol pair, period and thresholds.
Methodology
Data Basis
- Data source: Supabase (Yahoo Finance), updated daily; returns from the stored daily return (changes of the price basis do not count)
- 3 fixed pairs (only meaningful combinations):
- • VIX → ^GSPC or SPY (S&P 500)
- • VXN → ^NDX or QQQ (Nasdaq 100)
- • OVX → USO (the OVX is calculated from USO options)
- Period: 3–20 years or Max (since 1990). Calculations always run on the full history; the period filters the display, the regression and the quintiles. Events do not depend on the period.
- Freshness: the last completed NYSE session is evaluated (from 30 minutes after the close). If it is missing in one series, this is shown above and the last-day figures are not determinable. Trading days follow the NYSE calendar; a return spanning a data gap does not count.
Calculation
- Returns: percentage or log (selectable) for the regression and rolling beta; forward returns, buckets and the last-day comparison always in percent
- Return product: Spot return × Vol change (not a beta)
- Total Beta: OLS regression y = α + βx, with y=Vol change, x=Spot return
- R²: Share of vol variance explained by spot returns
- Rolling Beta: OLS slope over exactly 60 trading days; a window with a data gap yields no value
Interpretation
- β = vol change in % per 1% spot return. For the VIX clearly negative since 1990 (several percent per 1%); the value for the selected period is shown above.
- Regime: current rolling-60 beta against its 20th and 80th percentile in the period — below, vol reacts more strongly than usual, above, more weakly; above zero it is anomalous. Descriptive, not a signal.
- Last trading day: distance of the vol change from the period's regression line (estimated without that day), in percentage points and as a z value, plus the number of days that lay further above the line.
- Percent, not points: vol changes are measured in percent. A move in vol points scales with the level (+3.5 points is about +22% at VIX 16 but only +10% at VIX 35), so calm and hectic phases would not be comparable.
Regime Turning Points
- Vol Spike: vol index close ≥ threshold — spot return afterwards
- Vol Complacency: vol index close ≤ threshold — spot return afterwards
- Beta Stress: rolling-60 beta ≤ chosen percentile of all earlier rolling betas (from 252 prior values on, no future data)
- Event = first trading day on which the condition holds after it did not hold the day before; at least 10 trading days after the previous event. At 20 and 60 days the windows can overlap, so the cases are not independent.
Note
- The Spot-Vol relationship is not stationary — it can change abruptly during crisis periods
- Historical regressions are no guarantee for the future