VIX Backwardation Risk-Off Sleeve — Curve Ensemble, Smoothing, Short & Synthetic History (qm-4bx.15)
Rejected qm-4bx.15 · 2026-08-12
Decision: NO-SHIP frozen — investigate-only, do not admit to catalog/Meta. Commit: cef0c1d4 · Date: 2026-08-12 · Payload: research/findings/vix-backwardation-qm-4bx.15.json · Repro: python -m research.scripts.auditvixbackwardation --write
TL;DR VIX term-structure backwardation (spot VIX > VIX3M) and a 4-point curve ensemble (VIX9D 9d, VIX 30d, VIX3M 93d, VXV 6M synthetic) are classic risk-off signals. After maximal Yahoo+TradingView ingest (1990-2026), OLS synthetic extension for VIX3M/VIX9D pre-history (R² 0.95/0.94), and daily nextclose +10 bps via runbacktest, the canonical spot-vs-3M sma10 quantile-0.80 risk-off slee
Provenance
Equity vs S&P (aligned, rebased to 1.0)
Aligned window, both rebased to 1.0 at start — Aligned window, both rebased to 1.0 at start for fair comparison · S&P dashed, experiment solid. X = Date, Y = Equity (rebased to 1.0).
Signal driver & thresholds (x-aligned)
Curve ensemble quantile sweep (18 configs)
| cagr | equity_end | kind | max_dd | quantile | sharpe | turnover | vol | window |
|---|---|---|---|---|---|---|---|---|
| 0.07064569198857895 | 12.151148246272006 | neighbor | -0.47515877086964386 | 0.7 | 0.5578995224767417 | 4.537267080745341 | 0.1400293616917695 | 5 |
| 0.07730186006124828 | 15.243799910596785 | neighbor | -0.47515877086964386 | 0.8 | 0.5815923248572273 | 3.1706203696774673 | 0.1466116456269871 | 5 |
| 0.09492336875145435 | 27.59872536514585 | neighbor | -0.47515877086964386 | 0.9 | 0.6633973236974257 | 1.5306443163960188 | 0.15490075380090843 | 5 |
| 0.07956896957146387 | 16.46249116935854 | neighbor | -0.47515877086964386 | 0.7 | 0.6154928243905669 | 2.514629948364888 | 0.14053934635072765 | 10 |
| 0.09247945695445736 | 25.432227210228557 | neighbor | -0.47515877086964386 | 0.8 | 0.671931056751417 | 2.0226371323804533 | 0.14805381308597104 | 10 |
Ensemble of VIX9D/VIX/VIX3M/VXV, quantile 0.7-0.85, window 5-20
Stats
| CAGR | 9.78% | Sharpe | 61.51% |
|---|---|---|---|
| Sortino | 89.51% | maxDD | -55.19% |
Disposition
# VIX Backwardation Risk-Off Sleeve — Curve Ensemble, Smoothing, Short & Synthetic History (qm-4bx.15) **Decision:** `NO-SHIP frozen` — investigate-only, do not admit to catalog/Meta. **Commit:** `cef0c1d4` · **Date:** 2026-08-12 · **Payload:** `research/findings/vix-backwardation-qm-4bx.15.json` · **Repro:** `python -m research.scripts.audit_vix_backwardation --write` ## TL;DR VIX term-structure backwardation (spot VIX > VIX3M) and a 4-point curve ensemble (VIX9D 9d, VIX 30d, VIX3M 93d, VXV 6M synthetic) are classic risk-off signals. After maximal Yahoo+TradingView ingest (1990-2026), OLS
Follow-on work
- GARCH/Nelson–Siegel curve fitting rejected (OLS suffices to 1990; deeper than 1990 would need Shiller/CRSP variance-swap replication not validated).
- VXV/VXMT native daily remains insufficient_history without licensed VIX futures curve (CBOE).
- Alternative vehicles and levered variants not promoted; QQQ/IWM/TLT screens retained as notes.
Errors & data gaps
- GARCH/Nelson–Siegel curve fitting rejected (OLS suffices to 1990; deeper than 1990 would need Shiller/CRSP variance-swap replication not validated). - VXV/VXMT native daily remains insufficient_history without licensed VIX futures curve (CBOE). - Alternative vehicles and levered variants not promoted; QQQ/IWM/TLT screens retained as notes.
Follow-up
gh issue create --title "Follow-up VIX Backwardation Risk-Off Sleeve Curve Ensemble Smoothing" --body "Follow-up to qm-4bx.15: Decision: NO-SHIP frozen — investigate-only, do not admit to catalog/Meta. Commi" --label "priority:p2" --label "pipeline:research" --label "agent:ready"# deep-link