Daily Tempest history per symbol
https://api.skylit.ai/v1/vol/historyOne row per stored session, at that session's close (15:59 ET): OHLC,
SVX per tenor and weekend-adjusted, ATM vol, term slope,
30-day risk reversal / butterfly / ATM vol / skew slope, tilt, chain
depth (n_used), calc_v. Columnar: dates[] plus one array per
field in columns. Every value was knowable at that session's close;
features from session D predict D+1 onward. History starts where
Tempest's backfill does (up to about two years); /v1/vol/symbols
shows each symbol's last stored session.
Expected move at each close. Every row also carries the one-standard-deviation (1-sigma) move options priced at that session's close for the span to the next session's close, so each past day's priced range can be replayed:
| Column | Meaning |
|---|---|
em_1d_pct | The 1-sigma move, in % of that session's close |
em_1d | The same move in $ (close * em_1d_pct / 100) |
range_1d_low | close - em_1d |
range_1d_high | close + em_1d |
em_1d_event | 1 when an earnings report falls inside the span and its priced move is counted in full, else 0 |
It is the same next-day move as the Tempest cone at that close: the
nearest expiry's priced variance, split by trading time, so a Friday
close prices the weekend. The band is symmetric (no skew). The values
are null where a session has no reading, and for VIX.
Cost: per symbol-day: 1 credit per 10 symbol-weekdays in the requested window, rounded up, minimum 1 (1 symbol x the default month is 3; 10 symbols x one year is 261). Computed from the request, so known before the call; holidays are not discounted.
Authorization
Authorization: Bearer <your API key>Required. A missing header returns 401; an invalid, revoked or expired key returns 403.
Query parameters
symbolsstringrequiredComma-separated Tempest symbols (up to 10). Tempest keys the S&P complex on the option root
SPXWand Nasdaq-100 onNDXP; see/v1/vol/symbols.fromstringdateFirst session (
YYYY-MM-DD, ET). Default one month beforeto.tostringdateLast session, inclusive. Default today (ET). At most 800 calendar days after
from.fieldsstringComma-separated columns to return (default all).
Responses
- 200
OK.
- 400
Request validation failed.
- 401
Missing API key (
unauthorized), sent by the gateway. - 402
Out of credits (
insufficient_credits). - 403
As
Forbidden, ornot_entitled: Tempest data is not enabled for this account (it is in preview). Refunded. - 404
Unknown symbol, no data available, or none of the requested
expirationsexist for the symbol (code: expiration_not_found). - 429
Per-minute rate limit exceeded.
- 503
Tempest data is loading (
warming_up, withRetry-After) or not configured (unavailable). Refunded. - 504
The request did not finish in time (
gateway_timeout). Refunded; retry, or narrow the request.
Response fields
dataobjectrequiredfromstringdaterequiredtostringdaterequiredsymbolsobject[]requiredmissingobject[]required
metaobjectrequiredmodulestringrequiredWhich endpoint answered (iv, cones, screener, ...).
asOfstringdate-timeWhen Tempest computed the newest value in this response.
sessionDatestringdateThe trading session (ET) that asOf belongs to. The close state is stamped 15:59 ET and always belongs to its own session.
marketStatestringrequiredUS equity session at request time.
pre_openopenpost_closeclosedfrozenbooleanrequiredTrue while Tempest serves the previous close (outside regular hours).
publishedAtstringdate-timeWhen Tempest last published to the API.
cachedbooleanrequiredattributionobjectWhether and how this response's data may be published. See
/legal/api#sharing. An Agent or MCP client should never publish data whereshareableis false, regardless ofshareClass.required,license,shareableandshareClassare always sent on/v1/options/*and absent from the short form.
Last updated