Options · Exposure, levels, volatility and OI
Options volatility drift
/v1/options/volatility/driftoptionsVolatilityDriftThe at-the-money implied volatility of one expiration through the session on two clocks (calendar time and trading-variance time) next to the adjusted realized volatility of the underlying and the 30-day constant-maturity volatility. Volatilities are decimals; a value is null where it could not be determined. Sessions older than the retained timelines are not available.
Example request
curl -sS --get "https://api.ordermap.si/v1/options/volatility/drift" \
-H "Authorization: Bearer $ORDERMAP_API_KEY" \
--data-urlencode underlying_symbol=SPXWconst params = new URLSearchParams({
underlying_symbol: "SPXW",
});
const res = await fetch(`https://api.ordermap.si/v1/options/volatility/drift?${params}`, {
headers: { Authorization: `Bearer ${process.env.ORDERMAP_API_KEY}` },
});
if (!res.ok) throw new Error(`${res.status} ${await res.text()}`);
const { data, meta } = await res.json();
console.log(data, meta.coverage);Set ORDERMAP_API_KEY to your key. Replace the dates with a recent trading date.
Parameters
5 parameters, 1 required.
| Parameter | Type and limits | Description |
|---|---|---|
underlying_queryrequired | stringat most 8 characterspattern ^[A-Za-z][A-Za-z0-9.]{0,7}$ | Option root or family: SPX covers the SPX and SPXW roots, SPXW only the weekly root, QQQ, NDXP, RUTW, XSP ... |
datequeryoptional | stringdate | Trading date (YYYY-MM-DD). Default: the current session, else the most recent completed one. |
sessionqueryoptional | stringrthgthdefault rth | Trading session: rth is the regular session, gth the overnight (global trading hours) session before the trading date. Overnight data requires the Pro plan and exists only for underlyings with an overnight session; GET /v1/options/sessions shows which. |
date_queryoptional | stringdate | The expiration whose volatility is tracked. Default: the nearest. |
intervalqueryoptional | string1m5mdefault 1m | Bucket length: 1m or 5m. |
Response
| Status | Meaning | Body |
|---|---|---|
200 | Successful response. | Schema below |
400 | Invalid, unknown or repeated parameters, or an invalid cursor. | Error object |
401 | Missing or invalid API key. | Error object |
403 | The plan, dataset release or account state does not allow this request. | Error object |
422 | The request is valid but no data exists for it. | Error object |
429 | Rate limit, burst limit or cooldown; wait Retry-After seconds.Retry-After | Error object |
500 | Internal error. | Error object |
503 | Data temporarily unavailable; retry after Retry-After seconds.Retry-After | Error object |
504 | The request timed out. | Error object |
Authenticated responses carry the X-RateLimit-* headers (see rate limits); 429 and 503 add Retry-After.
200 response body
dataobjectrequiredIntraday volatility drift.16 fields insidedate_of_expirystringdaterequiredThe expiration tracked.intervalstringrequiredBucket length.1m5mpointsarray<object>requiredBuckets with a value.6 fields insideadjusted_realized_volatilitynumber | nullrequiredAdjusted realized volatility of the underlying.implied_volatilitynumber | nullrequiredAt-the-money implied volatility on the calendar clock.implied_volatility_30dnumber | nullrequired30-day constant-maturity implied volatility.implied_volatility_trading_clocknumber | nullrequiredThe same on the trading-variance clock.timestampintegerunix-msrequiredTime of the bucket. Unix epoch milliseconds (UTC).underlying_pricenumber | nullrequiredUnderlying price.
realized_volatility_basisobjectrequiredHow the adjusted realized volatility is built.3 fields insidedaysintegerrequiredDays of history used.default_usedbooleanrequiredThe default session share was used for lack of history.regular_session_sharenumber | nullrequiredShare of the day's variance attributed to the regular session.
sessionstringrequiredSession.rthgthcurballtrading_datestringdaterequiredTrading date.underlying_symbolstringrequiredThe requested underlying.
metaobjectrequiredMeta object
Example response
{
"data": {
"date_of_expiry": "2026-10-16",
"interval": "1m",
"points": [
{
"adjusted_realized_volatility": 0.118,
"implied_volatility": 0.142,
"implied_volatility_30d": 0.171,
"implied_volatility_trading_clock": 0.139,
"timestamp": 1792161000000,
"underlying_price": 6021.4
}
],
"realized_volatility_basis": {
"days": 20,
"default_used": false,
"regular_session_share": 0.8
},
"session": "rth",
"trading_date": "2026-10-16",
"underlying_symbol": "SPX"
},
"meta": {
"as_of": 1760659200123,
"coverage": {
"complete": true
},
"delay_ms": 0,
"delayed": false,
"request_id": "0199f0c2-5a1e-7c3b-9d4e-2b6f8a1c3d5e",
"source": "opra"
}
}Values are illustrative. Missing values are null, never 0.