VRP Analytics API - Volatility Risk Premium Dashboard | FlashAlpha
Lab API VRP Analytics

VRP Analytics API ALPHA+

Real-time Volatility Risk Premium dashboard - VRP spreads across windows, z-scores, directional VRP, GEX-conditioned regime analysis, strategy suitability scores, and dealer flow risk.

α Alpha+ Plan Required

These endpoints require the Alpha+ plan. View pricing →

New to VRP? The Practical Guide to Trading VRP covers z-scores, directional decomposition, GEX-conditioned regimes, and strategy selection.
Works with CME futures. Pass ES=F or NQ=F and URL-encode the = as %3D - e.g. /v1/vrp/ES%3DF. Options-on-futures are priced with Black-76 using the CME multiplier ($50/pt ES, $20/pt NQ); CME futures are Growth-tier. See the futures hub.

VRP Dashboard

GET /v1/vrp/{symbol}
Auth required (X-Api-Key) Rate Limited: Yes Alpha+ plan

Parameters

Name In Required Description
symbol path yes Underlying symbol (e.g. SPY, TSLA, AAPL)
date query no Historical date (yyyy-MM-dd). Returns the persisted VRP snapshot for that date instead of the live dashboard; 404 if no snapshot exists.
curl -H "X-Api-Key: YOUR_API_KEY" \
  "https://lab.flashalpha.com/v1/vrp/SPY"
import requests

resp = requests.get(
    "https://lab.flashalpha.com/v1/vrp/SPY",
    headers={"X-Api-Key": "YOUR_API_KEY"}
)
data = resp.json()
print(f"VRP 30d: {data['vrp']['vrp_30d']}%")
print(f"Z-score: {data['vrp']['z_score']}")
print(f"Regime: {data['regime']['gamma']}")
const resp = await fetch(
  "https://lab.flashalpha.com/v1/vrp/SPY",
  { headers: { "X-Api-Key": "YOUR_API_KEY" } }
);
const data = await resp.json();
console.log(`VRP 30d: ${data.vrp.vrp_30d}%`);
console.log(`Z-score: ${data.vrp.z_score}`);
console.log(`Regime: ${data.regime.gamma}`);

Dashboard Response

{
  "symbol": "SPY",
  "underlying_price": 580.51,
  "as_of": "2026-03-27T15:30:00Z",
  "market_open": true,
  "vrp": {
    "atm_iv": 18.45,
    "rv_5d": 15.33, "rv_10d": 13.60, "rv_20d": 13.04, "rv_30d": 12.67,
    "vrp_5d": 3.12, "vrp_10d": 4.85, "vrp_20d": 5.41, "vrp_30d": 5.78,
    "z_score": 1.34, "percentile": 82, "history_days": 252
  },
  "variance_risk_premium": 0.042,
  "convexity_premium": 2.15,
  "fair_vol": 20.60,
  "directional": {
    "put_wing_iv_25d": 21.03, "call_wing_iv_25d": 16.82,
    "downside_rv_20d": 13.68, "upside_rv_20d": 12.61,
    "downside_vrp": 7.35, "upside_vrp": 4.21
  },
  "term_vrp": [
    { "dte": 7, "iv": 15.89, "rv": 12.77, "vrp": 3.12 },
    { "dte": 14, "iv": 17.22, "rv": 12.37, "vrp": 4.85 },
    { "dte": 30, "iv": 18.45, "rv": 12.67, "vrp": 5.78 }
  ],
  "gex_conditioned": {
    "regime": "positive_gamma",
    "harvest_score": 0.82,
    "interpretation": "Dealers long gamma - dampening moves, supportive for premium selling."
  },
  "vanna_conditioned": {
    "outlook": "Supportive - vol compression accelerating",
    "interpretation": "Positive vanna with spot above flip: compression strengthening."
  },
  "regime": {
    "gamma": "positive_gamma",
    "vrp_regime": "elevated",
    "net_gex": 4200000000,
    "gamma_flip": 572.50
  },
  "strategy_scores": {
    "short_put_spread": 78,
    "short_strangle": 82,
    "iron_condor": 85,
    "calendar_spread": 61
  },
  "net_harvest_score": 78,
  "dealer_flow_risk": 15,
  "warnings": [],
  "macro": {
    "vix": 16.42, "vix_3m": 17.85, "vix_term_slope": 1.087,
    "dgs10": 4.33, "hy_spread": 3.17, "fed_funds": 3.64
  }
}

Dashboard Fields

Section Field Description
VRPvrp.atm_ivATM implied volatility (%)
VRPvrp.rv_5d .. rv_30dRealized volatility across 4 windows (5d, 10d, 20d, 30d)
VRPvrp.vrp_5d .. vrp_30dIV minus RV across 4 rolling windows (percentage points) - see volatility risk premium
VRPvrp.z_scoreVRP z-score vs trailing 252-day history (null if insufficient history)
VRPvrp.percentileVRP percentile rank (0-100) over lookback window (null if insufficient history)
VRPvrp.history_daysNumber of days of VRP history available for z-score/percentile calculation
Top Levelvariance_risk_premiumVariance risk premium as a decimal (e.g. 0.042 = 4.2%) - see VRP
Top Levelconvexity_premiumConvexity premium in vol points - wing richness vs ATM
Top Levelfair_volModel-estimated fair vol from variance-swap integration
Directionaldirectional.put_wing_iv_25d25-delta put implied volatility
Directionaldirectional.call_wing_iv_25d25-delta call implied volatility
Directionaldirectional.downside_rv_20d20-day downside realized vol proxy
Directionaldirectional.upside_rv_20d20-day upside realized vol proxy
Directionaldirectional.downside_vrpPut-side VRP - see directional VRP
Directionaldirectional.upside_vrpCall-side VRP - see directional VRP
Term VRPterm_vrp[].dteDays to expiry for term VRP bucket (7, 14, 30)
Term VRPterm_vrp[].iv, rv, vrpImplied vol, realized vol, and term VRP spread for each DTE bucket
GEX Conditionedgex_conditioned.regimeCurrent GEX-conditioned regime - positive_gamma or negative_gamma
GEX Conditionedgex_conditioned.harvest_scorePremium harvest suitability score (0-1)
GEX Conditionedgex_conditioned.interpretationHuman-readable regime interpretation for VRP context
Vanna Conditionedvanna_conditioned.outlookVanna-driven vol outlook summary
Regimeregime.gammaGamma regime label - positive_gamma or negative_gamma
Regimeregime.net_gexNet gamma exposure in dollars
Regimeregime.gamma_flipPrice level where gamma regime flips
Strategy Scoresstrategy_scoresStrategy scores (0-100) for short strangle, iron condor, calendar spread - null if insufficient data
Top Levelnet_harvest_scoreHarvest score as a 0-100 integer. The screener exposes the same value as harvest_score; this is distinct from the 0-1 gex_conditioned.harvest_score sub-score.
Top Leveldealer_flow_riskDealer flow risk score (0-100) - higher means more dealer rebalancing risk
WarningswarningsArray of risk flags (e.g. negative_gamma, FOMC imminent, earnings, low liquidity)
Macromacro.vixCurrent VIX level
Macromacro.vix_3m3-month VIX level
Macromacro.vix_term_slopeVIX / VIX3M ratio - below 1.0 indicates contango, above 1.0 indicates backwardation
Macromacro.dgs1010-year Treasury yield
Macromacro.hy_spreadHigh-yield credit spread
Macromacro.fed_fundsFederal funds rate

Use Cases

  • Time premium-selling entries - read the VRP z_score and percentile to fire short-vol structures only when the premium is statistically rich
  • Pick the richer side - compare upside vs downside VRP to decide whether to sell puts or calls and lean skew trades the right way
  • Gate on the gamma regime - pair the VRP spread with the GEX-conditioned regime to confirm whether dealers are suppressing or amplifying realized vol before sizing
  • Avoid trading into trapped risk - check the dealer risk level and warnings array to skip names where the premium reflects genuine event risk, not edge
  • Frame against macro - use the macro context (dgs10, hy_spread, fed_funds) to size short-vol exposure for the rate and credit backdrop
  • Seed your own history - archive daily /v1/vrp snapshots via cron to build a backtestable VRP time series, or read VRP History directly

Related reading

Complementary endpoints

  • VRP History - the daily VRP time series for charting and backtesting
  • Realized Volatility - the RV leg of the spread across windows
  • Volatility - IV, IV-RV spreads, skew, and term structure context
  • Expected Move - the straddle-implied move the premium is paying for

Ready to build with FlashAlpha?

Get your free API key and start pulling live options data in 30 seconds.

No credit card required Setup in 60 seconds Secure & reliable