Lab API
Narrative Analysis
Narrative Analysis API
Get AI-generated plain-English briefings on the current options exposure landscape - regime, key levels, flow, vanna, charm, and outlook.
Works with CME index futures.
Pass
ES=F or NQ=F and URL-encode the = as %3D - e.g. /v1/exposure/narrative/ES%3DF. Options-on-futures are priced with Black-76 using the CME multiplier ($50/pt ES, $20/pt NQ); CME index futures are Growth-tier. See the futures hub.
Endpoint
Auth required (
X-Api-Key)
Rate Limited: Yes
Growth plan+
Parameters
| Name | In | Required | Default | Description |
|---|---|---|---|---|
symbol |
path | yes | - | Underlying symbol |
curl -H "X-Api-Key: YOUR_API_KEY" \
"https://lab.flashalpha.com/v1/exposure/narrative/SPY"
import requests
resp = requests.get(
"https://lab.flashalpha.com/v1/exposure/narrative/SPY",
headers={"X-Api-Key": "YOUR_API_KEY"}
)
data = resp.json()
print(data['narrative']['regime'])
print(data['narrative']['outlook'])
const resp = await fetch(
"https://lab.flashalpha.com/v1/exposure/narrative/SPY",
{ headers: { "X-Api-Key": "YOUR_API_KEY" } }
);
const data = await resp.json();
console.log(data.narrative.regime);
console.log(data.narrative.outlook);
Response
{
"symbol": "SPY",
"underlying_price": 597.505,
"as_of": "2026-02-28T16:30:45Z",
"narrative": {
"regime": "Dealers are long gamma (net GEX +$2.9B) - expect mean-reverting, range-bound price action.",
"gex_change": "Net GEX increased from +$2.6B to +$2.9B (+11.5%) - gamma cushion strengthening.",
"key_levels": "Call wall at 600, Put wall at 595, Gamma flip at 595.25.",
"flow": "Top OI changes: +5,000 call OI at 600 strike, -2,000 put OI at 595 strike.",
"vanna": "Positive vanna (+$1.2B) with VIX at 18.5 - vol compression supports upside.",
"charm": "Positive charm (+$850M) - time decay pushing dealers to buy, providing support.",
"zero_dte": "0DTE accounts for 10% of total GEX - minimal intraday impact.",
"outlook": "Positive gamma regime with strengthening cushion. Testing 600 call wall.",
"data": {
"net_gex": 2850000000,
"net_gex_prior": 2600000000,
"net_gex_change_pct": 9.6,
"vix": 18.5,
"gamma_flip": 595.25,
"call_wall": 600.0,
"put_wall": 595.0,
"regime": "positive_gamma",
"zero_dte_pct": 10.0,
"top_oi_changes": [{"strike": 600.0, "type": "C", "oi_change": 5000, "volume": 1250}]
}
}
}
Key Response Fields
| Field | Type | Description |
|---|---|---|
symbol | string | Underlying symbol |
underlying_price | number | Current price of underlying |
as_of | string | ISO 8601 timestamp |
narrative.regime | string | Plain-English gamma regime description |
narrative.gex_change | string | Day-over-day GEX change narrative |
narrative.key_levels | string | Key price levels summary |
narrative.flow | string | Notable options flow activity |
narrative.vanna | string | Vanna exposure interpretation |
narrative.charm | string | Charm exposure interpretation |
narrative.zero_dte | string | 0DTE impact assessment |
narrative.outlook | string | Overall market outlook summary |
narrative.data | object | Raw numeric data backing each narrative section |
What Is Narrative Analysis?
The Narrative endpoint translates raw options exposure data into a structured, plain-English market briefing. Instead of interpreting numbers yourself, you get ready-to-use sections covering the gamma regime, day-over-day GEX changes, key price levels, notable flow activity, vanna and charm effects, 0DTE significance, and an overall outlook. The response also includes the raw numeric data backing each narrative section, so you can combine human-readable text with quantitative analysis.
Common Use Cases
- Auto-generate morning briefings - concatenate
narrative.regime,key_levels, andoutlookinto a pre-market report without hand-interpreting numbers - Drop into client research - paste the
narrative.*sections straight into newsletters or client-facing notes as finished prose - Feed chat assistants - pipe
narrative.outlookandnarrative.flowinto a trading chatbot so it answers in plain English - Enrich alerts with context - attach
narrative.gex_changeto an exposure alert so recipients see why the move matters - Combine text with raw numbers - render the prose to humans while routing
narrative.data(net_gex, vix, call_wall, put_wall) to your quant logic - Score qualitative signals - map
narrative.regimeto a directional bias and backtest it alongside quantitative indicators
Related
Related reading
- AI trade alerts: automated market commentary - turn the narrative endpoint into automated, scheduled market commentary
Complementary endpoints
- Exposure Summary - the structured numbers behind the narrative prose
- Key Levels - the exact gamma flip, call wall, and put wall the narrative references
- Gamma Exposure (GEX) - the per-strike detail behind the regime narrative
- Flow Summary - quantify the flow activity the narrative calls out
Ready to build?
Get your free API key and start pulling live options data in 30 seconds.