Updated daily, the ORATS professional grade database of implied and historical volatility information covers all US equity options.
ORATS (Option Research & Technology Services) is a premier options analytics vendor committed to uncovering untapped alpha-generating strategies through best-of-breed quantitative research, options-related data feeds, and customized options trading decision support solutions. ORATS utilizes an advanced, proprietary volatility analysis to produce implied, forecast, and historical volatilities that have been proven to be more accurate market summarizations than those obtained from most commonly available sources.
Welcome to the ORATS professional grade database of implied option and historical volatility. The database includes implied volatilities for standard expiration option month 1 through month 4, interpolated volatilities at 30, 60 and 90 days, short term and infinite strike slope and derivative, standard historical volatility and ORATS’ proprietary tick-based historical volatility. Updated daily, ORATS database covers all US equity options over 4000 symbols. A complete implied surface can be constructed from these readings and effectively compared to historical volatility. Further details are available in the supplementary documentation.
The Quandl code for ORATS Volatility Surface data is:
|Apple Volatility Surface
|IBM Volatility Surface
The full database is searchable from the Data tab on this page. The Metadata tab contains a list of all stock tickers for which Volatility Surface data is available. Any dataset can be directly accessed from a browser using its Quandl code. For example, IBM volatility surface: www.quandl.com/OPT/IBM
||date of the skew reading for market prices
||Stock price average bid ask near the close.
||the 30 day interpolated implied volatility
||the 60 day interpolated implied volatility
||the 90 day interpolated implied volatility
||Implied volatility for month1
||days to expiration in month1 (no weekly or quarterly expirations)
||Implied volatility for month2
||days to expiration in month2 (no weekly or quarterly expirations)
||Implied volatility for month3
||days to expiration in month3 (no weekly or quarterly expirations)
||Implied volatility for month4
||days to expiration in month4 (no weekly or quarterly expirations)
||best-fit regression line through the strike volatilities adjusted to the tangent slope at the 50 delta
||derivative or curvature of the monthly strikes at 28 day interpolated
||implied infinite slope
||derivative infinite implied
||the 10 day historical close to close volatility
||the 20 day historical close to close volatility
||the 60 day historical close to close volatility
||the 120 day historical close to close volatility
||the 252 day historical close to close volatility
||the 10 day historical tick volatility
||the 20 day historical tick volatility
||the 60 day historical tick volatility
||the 120 day historical tick volatility
||the 252 day historical tick volatility
Calculating Implied Volatilities
The implied volatility for each strike is derived from the at-the-money implied volatility, strike slope (steepness of strike skew), and derivative (curvature of strike skew) using the following method:
First, a call delta is calculated for the strike using a standard option pricing model (not provided). Second, the slope and derivative for the expiration are calculated given the interpolated slope and derivative for that expiration. Third, the implied volatility formula is used to determine the strike implied.
IV = ATMIV * (1 + (slope/1000 + (deriv/1000 * (delta*100-50)/2) )* (delta*100-50))
IV: Implied Volatility
ATMIV: At-The-Money Implied Volatility
Assume the following values:
m1atmiv = 30
slope = 1
deriv = .1
delta = .75
Since we are finding the month 1 volatility, the 30-day slope and derivative can be used.
IV = 30 * (1 + (1/1000 + (0.1/1000 * (0.75*100-50)/2)) * (0.75*100-50)) = 31.688
m2atmiv = 32
slope = 1
deriv = .08
slopeInf = 2
derivInf = .08
delta = .25
In this example, we first need to interpolate the slope and derivative between the 30 day and the infinite. This is done by weighting the 30-day slope by 71% and the infinite by 29% (see below).
slope = 0.71*1 + 0.29*2 = 1.293
derivative = 0.71*.1 + 0.29*.08 = 0.094
IV25 = 32 * (1+(1.293/1000+(0.059/1000*(0.25*100-50)/2)) * (0.25*100-50)) = 31.907
IV25: Implied Volatility at 25-Delta
The weighting for the 30-day is found by the following formula:
weighting = 1/sqrt(E/365) / (1/Sqrt(E30/365))
E: days to expiry for the desired month
E30: 30-day expiry
Using the above numbers:
weighting = (1/sqrt(60/365)) / (1/sqrt(30/365)) =~ .71
The weighting for the infinite is the complement percentage of the 30-day.
Subscribers can download the entire database at any time at:
The above request will re-direct you to a temporary URL referencing a ZIP file. Download the zip file which will contain a CSV representation of the entire database. Batch download is ideal for maintaining a local version of this database or for screening and/or filtering requirements. (e.g. find all stock meeting some criteria.) The format of the csv is slightly different from Quandl's csv api. It has an added first column for the Quandl code of that row's data.
||'partial' downloads only latest date from each series
The full ORATS Volatility Surface database is accessible via the Quandl API. The database is also available via Quandl's free libraries for R, Python, Matlab, Excel and other tools. For complete API documentation, see quandl.com/docs/api API examples specific to this database follow.
This database is premium. You must append
&api_key=YOURTOKEN to all calls to this database.
To get the last 10 values of 30 day interpolated volatility for Apple in JSON:
The Quandl code for this dataset is the stock's ticker:
|This truncates the result to include only the first three rows (quarters) of data
|This ensures the result includes the latest day first
|This tells the server to send only column 2 (iv30)
With all columns:
API and Library Helpers
To quickly generate API calls or library calls, you can visit any ORATS data page (AAPL for example). On the right side of the screen are buttons that help you build API calls based on what you are looking at on the screen.
See also for more information: General Quandl API Documentation 3. Quandl Libraries
Support: Email Premium support is available for this database: email@example.com