Implied Volatility

API TraderAPI QuantAPI DeveloperRequires options add-on

Track what the options market expects a stock to do. Implied volatility is the volatility that, put into an option pricing model, reproduces the market price of the stock's listed options. It is annualized and quoted in percent, so it compares directly with historic (realized) volatility.

Every row carries at-the-money implied volatility at three constant maturities (30, 60 and 90 calendar days) and four readings of the 30-day smile: the 25-delta put and call volatilities, their difference (the 25-delta skew), and the volatility at strikes of 90% and 110% of the stock price.

Available Data Points:

  • Date: The trading date the readings are as of (YYYY-MM-DD format).
  • IV 30D: At-the-money implied volatility at a constant 30-day maturity, in percent.
  • IV 60D: At-the-money implied volatility at a constant 60-day maturity, in percent.
  • IV 90D: At-the-money implied volatility at a constant 90-day maturity, in percent.
  • IV Put 25D 30D: Implied volatility of the 25-delta put at 30 days, in percent.
  • IV Call 25D 30D: Implied volatility of the 25-delta call at 30 days, in percent.
  • Skew 25D 30D: IV Put 25D 30D minus IV Call 25D 30D, in volatility points.
  • IV 90 Moneyness 30D: Implied volatility at a strike of 90% of the stock price, 30 days, in percent.
  • IV 110 Moneyness 30D: Implied volatility at a strike of 110% of the stock price, 30 days, in percent.

Method

Computed each trading day from the end-of-day US option chain. Listed expiries move through time, so a reading taken from whichever expiry is nearest 30 days jumps every time that expiry rolls off. Each maturity here is instead interpolated between the two listed expiries either side of it, linearly in total variance (volatility squared times time), the method used for the VIX; total variance is additive in time, which is what keeps the series continuous through an expiry roll. Expiries less than 7 days out are not used. Where no expiry lies beyond a target, the nearest expiry within half the target's length again is used as it stands; further away the value is null.

Smile and skew

Each expiry's smile is read from out-of-the-money options (puts below the forward price, calls above it), with contracts that have no bid left out. At-the-money is at the forward price, implied from put-call parity on the strikes nearest the stock price, so an upcoming dividend does not tilt it. The 25-delta strikes use Black-Scholes-Merton deltas with each contract's own implied volatility. The skew is the 25-delta put volatility minus the 25-delta call volatility: positive when downside protection costs more than upside, the normal state for indices and most large stocks. Wing and moneyness readings are only interpolated between quoted strikes, never extrapolated past the last one.

Coverage

US-listed stocks and ETFs with listed options; a non-US listing is answered with 400 instrumentNotCovered. History starts in January 2012. A reading is null where that day's chain cannot support it: no strikes either side of the money, the 25-delta point or the moneyness level, or no expiry near enough the maturity. Expect more nulls for thinly traded names and before 2022, when the vendor's chains were less complete. A trading day appears once its end-of-day chain has been processed, normally the following morning (UTC).

Try it out! You can test the API with the trial key TEST. Simply include it in your request headers; either here, or add the header "Ortex-Api-Key": "TEST" to your http request.

Trial key restrictions: Trial keys may be limited to a specific date range and set of regions. Requests outside the allowed regions or entirely outside the allowed date range are rejected; a date window that partially overlaps the allowed range is trimmed to it, reported in meta.restriction.

Get full access! Get a key at app.ortex.com/apis

Path Params
string
required

Where to find the instrument: a venue (exchange symbol, MIC or ISO-2 country) or an identifier scheme (tid, sid, cid, isin, figi). See Identifying an instrument.

string
required

The ticker on that venue, or the value in that scheme. An ISIN, sid, cid or share-class FIGI answers for the main listing only; reference/listings lists the others. See Identifying an instrument.

Query Params
date
required

Inclusive start of the returned date window. Format: YYYY-MM-DD.

Also selects the instrument: the ticker resolves to the listing that held it on the exchange in the URL path on this date. To retrieve a delisted or renamed company, use its former exchange and ticker with a from_date from when it was listed. An identifier path (/stock/isin|figi|sid|cid/<value>/…) resolves at this date too. The instrument block in the response names the company the data belongs to.

date

Inclusive end of the returned date window (defaults to today). Format: YYYY-MM-DD.

integer

Page number within the paginated result set. Must be >= 1. Defaults to 1.

integer

Number of rows per page. The default and the maximum allowed depend on the API tier; a value above the tier maximum is rejected with 400 invalidPageSize.

string
enum
Defaults to json

Response format. "json" (default) or "csv".

Allowed:
Headers
string
enum
Defaults to application/json

Generated from available response content types

Allowed:
Responses

Language
Credentials
Header
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json
text/csv
*/*