Lab API
SVI Parameters
SVI Surface Parameters API
Live SVI-fitted volatility surface for a symbol: the calibrated (a, b, ρ, m, σ) parameters per expiry slice, with ATM total variance and ATM IV.
Endpoint
Auth required (
X-Api-Key)
Rate Limited: Yes
Alpha plan+
Parameters
| Name | In | Required | Default | Description |
|---|---|---|---|---|
symbol |
path | yes | - | Underlying ticker (case-insensitive; normalized to uppercase). |
curl -H "X-Api-Key: YOUR_API_KEY" \
"https://lab.flashalpha.com/v1/surface/svi/SPY"
import requests
resp = requests.get(
"https://lab.flashalpha.com/v1/surface/svi/SPY",
headers={"X-Api-Key": "YOUR_API_KEY"}
)
data = resp.json()
print(f"Front rho: {data['svi_parameters'][0]['rho']}")
const resp = await fetch(
"https://lab.flashalpha.com/v1/surface/svi/SPY",
{ headers: { "X-Api-Key": "YOUR_API_KEY" } }
);
const data = await resp.json();
console.log("Front rho: " + data.svi_parameters[0].rho);
Response
{
"symbol": "SPY",
"underlying_price": 542.18,
"as_of": "2026-06-05T14:32:10.123Z",
"market_open": true,
"svi_parameters": [
{
"expiry": "2026-06-20",
"days_to_expiry": 15,
"forward": 542.91,
"a": 0.001204,
"b": 0.142318,
"rho": -0.612045,
"m": 0.018221,
"sigma": 0.094117,
"atm_total_variance": 0.002918,
"atm_iv": 16.42
}
]
}
Key Response Fields
| Field | Type | Description |
|---|---|---|
underlying_price | number | Mid of the underlying |
market_open | boolean | Whether the market is open |
svi_parameters[] | array | Per-expiry slices, ordered by days_to_expiry |
days_to_expiry | integer | Calendar days to the expiry |
forward | number | Per-expiry forward price |
a, b, rho, m, sigma | number | Raw SVI parameters for the slice |
atm_total_variance | number | ATM total variance for the slice |
atm_iv | number | ATM implied vol as a percentage |
Errors
| Status | Description |
|---|---|
403 | tier_restricted - Tier below Alpha. Requires Alpha or higher. |
404 | symbol_not_found - No data for the symbol. Message notes when the market is closed (9:30 AM – 4:00 PM ET). |
About
Returns the live SVI-fitted volatility surface for a symbol - the calibrated (a, b, ρ, m, σ) parameters per expiry slice, with ATM total variance and ATM IV. It is a lightweight subset of the full advanced-volatility payload for clients that reconstruct the surface themselves.
underlying_price is the mid of the underlying. svi_parameters is ordered by days_to_expiry; each slice gives the raw SVI parameters, the per-expiry forward, the ATM total variance, and the ATM implied vol as a percentage.
Common Use Cases
- Reconstruct the IV surface client-side - evaluate the raw
(a, b, rho, m, sigma)per slice to rebuild total variance at any log-moneyness without re-fitting - Price arbitrary strikes and expiries - interpolate off the calibrated
svi_parameters[]slices and each slice'sforwardto value contracts not directly quoted - Read skew and curvature - track
rhofor the skew sign andsigmafor smile curvature across expiries to characterize surface shape - Spot term-structure dislocations - compare
atm_total_varianceandatm_ivacross slices to find a kinked or inverted front-to-back vol term structure - Monitor calibration drift - snapshot the parameter vector over time and alert when
borrhojumps, signaling a re-shaped surface or a fit on thin quotes - Feed a vol-arb or risk model - supply the calibrated slices as a compact, arbitrage-aware surface input to a relative-value or scenario engine
Related
Related reading
- SVI & curve fitting: building a modern IV surface - how the (a, b, ρ, m, σ) parameters shape each slice
- Engineering arbitrage-free volatility surfaces - the no-arbitrage constraints behind a calibrated surface
Complementary endpoints
- Advanced Volatility (SVI) - the full surface payload these raw parameters are a subset of
- Volatility - ATM IV and term structure without reconstructing the surface
- Skew Term Structure - read skew directly instead of deriving it from
rho
Ready to build?
Get your free API key and start pulling live options data in 30 seconds.