ALPHA TIER HISTORICAL LEAK-FREE

Historical VRP Data API

Volatility Risk Premium with leak-free percentiles & z-scores — by design. Percentile history is date-bounded so any historical query at at only sees data with SnapshotDate < at.Date. No lookahead bias. Same shape as live /v1/vrp. Why this matters →

Coverage
2018-04-16 → 2026-04-02
Granularity
1 minute
Tier
Alpha+
Format
JSON (REST)

Endpoint

GET/v1/vrp/{symbol}?at=...
Host: historical.flashalpha.comAuth: X-Api-KeyTier: Alpha
curl -H "X-Api-Key: YOUR_API_KEY" \
  "https://historical.flashalpha.com/v1/vrp/SPY?at=2026-03-05T15:30:00"

Response

{
  "symbol": "SPY",
  "underlying_price": 679.46,
  "as_of": "2026-03-05T15:30:00",
  "vrp": {
    "atm_iv": 18.37,
    "rv_5d":  11.38,
    "rv_20d": 10.26,
    "vrp_5d": 6.99,
    "vrp_20d": 8.11,
    "z_score":   2.84,
    "percentile": 100,
    "history_days": 60
  },
  "variance_risk_premium": 0.0232,
  "convexity_premium":     5.43,
  "fair_vol":              23.8,
  "term_vrp":      [ { "dte": 7, "iv": "...", "rv": "...", "vrp": "..." } ],
  "directional":   { "downside_vrp": "...", "upside_vrp": "..." },
  "gex_conditioned":   { "regime": "...", "harvest_score": "..." },
  "vanna_conditioned": { "outlook": "...", "interpretation": "..." },
  "regime":            { "gamma": "positive_gamma", "vrp_regime": "...", "gamma_flip": 677.5 },
  "strategy_scores":   { "short_put_spread": "...", "short_strangle": "...", "iron_condor": "...", "calendar_spread": "..." },
  "macro": { "vix": 23.75, "vix_3m": "...", "vix_term_slope": "...", "dgs10": "...", "hy_spread": 3.5 }
}

Field gap vs live: macro.hy_spread is hard-coded to 3.5 (live reads DailyMacroSnapshots.HighYieldSpread; the historical macro_daily table doesn't carry it yet).

What This Unlocks

  • Backtest vol-selling strategies honestly — percentile + z-score reflect only data knowable at the as-of timestamp. No accidental forward-leaking.
  • Validate "VRP > X percentile" entry rules against the actual historical sequence.
  • Replay regime-conditioned VRP (positive vs negative gamma) for strategy harvest scoring.