Vanna Exposure (VEX) API - Volatility-Delta Sensitivity - FlashAlpha Lab API
Lab API Vanna Exposure (VEX)

Vanna Exposure (VEX) API

Quantify how dealer delta changes when implied volatility moves, revealing vol-driven hedging flows and their impact on the underlying.

What Is Vanna Exposure?

Vanna exposure (VEX) measures how much dealer delta changes in response to a shift in implied volatility (dDelta/dVol). When IV drops (vol crush), positive vanna means dealers gain delta and must sell shares to hedge — creating a tailwind for prices. When IV rises, the reverse happens. VEX is critical around events like FOMC, earnings, and VIX expiration, where implied volatility can move sharply. The endpoint includes an interpretation field that summarizes the directional implication in plain English.

Common Use Cases

  • Pre-event positioning — anticipate how an IV crush or spike after earnings/FOMC will trigger dealer hedging flows
  • Vol regime analysis — positive VEX in a declining-vol environment is a bullish signal (dealers buying the underlying)
  • VIX correlation trades — combine VEX with VIX levels to time entries around volatility mean-reversion
  • Portfolio hedging timing — use VEX to gauge when vol-driven flows will push the underlying in your favor
  • Multi-greek dashboards — pair VEX with GEX and CHEX for a complete picture of second-order dealer flows

When to Use This Endpoint

Use VEX when implied volatility is the key driver — before earnings, FOMC, or any scheduled vol event. For price-driven hedging flows, use GEX. For time-driven flows, use CHEX. The Summary endpoint returns all four exposures at once if you need the full picture without separate calls.

Endpoint

GET /v1/exposure/vex/{symbol}
Auth required (X-Api-Key) Rate Limited: Yes

Parameters

Name In Required Default Description
symbol path yes Underlying symbol
expiration query no all Filter by expiry date yyyy-MM-dd, or 0dte for same-day only
curl -H "X-Api-Key: YOUR_API_KEY" \
  "https://lab.flashalpha.com/v1/exposure/vex/SPY"
import requests

resp = requests.get(
    "https://lab.flashalpha.com/v1/exposure/vex/SPY",
    headers={"X-Api-Key": "YOUR_API_KEY"}
)
data = resp.json()
print(f"Net VEX: ${data['net_vex']:,.0f}")
print(f"Interpretation: {data['vex_interpretation']}")
const resp = await fetch(
  "https://lab.flashalpha.com/v1/exposure/vex/SPY",
  { headers: { "X-Api-Key": "YOUR_API_KEY" } }
);
const data = await resp.json();
console.log(`Net VEX: $${data.net_vex.toLocaleString()}`);
console.log(`Interpretation: ${data.vex_interpretation}`);

Response

{
  "symbol": "SPY",
  "underlying_price": 597.505,
  "as_of": "2026-02-28T16:30:45Z",
  "net_vex": 1200000000,
  "vex_interpretation": "Positive vanna — benefits from vol compression",
  "strikes": [
    {
      "strike": 575.0,
      "call_vex": 2300000,
      "put_vex": 1800000,
      "net_vex": 4100000
    }
  ]
}

Key Response Fields

Field Type Description
symbolstringUnderlying symbol
underlying_pricenumberCurrent price of underlying
as_ofstringISO 8601 timestamp
net_vexnumberAggregate net vanna exposure in dollars
vex_interpretationstringPlain-English directional interpretation of vanna exposure
strikesarrayPer-strike breakdown
strikes[].strikenumberStrike price
strikes[].call_vexnumberCall vanna exposure at this strike
strikes[].put_vexnumberPut vanna exposure at this strike
strikes[].net_vexnumberNet (call + put) vanna exposure
FlashAlpha
© FlashAlpha. All rights reserved.