Historical Implied Volatility Data - Market Chameleon?

Discussion in 'Data Sets and Feeds' started by Statistical Trader, Jul 8, 2022.

  1. I'm looking for some historical implied volatility data (not to be confused with historical volatility data) and found Market Chameleon.

    Does anyone have knowledge of the data quality of Market Chameleon data, the implied vol data in particular?

    I'm open to other suggestions for good historical implied vol data as well.

    EDIT: I want it for US equities and equity indexes to start.
     
    Last edited: Jul 8, 2022
  2. Matt_ORATS

    Matt_ORATS Sponsor

    Those MC guys are good.

    We have historical implied volatility data too.

    Here’s a link to our data API explorer: https://docs.orats.io/data-explorer/index.html

    If you are looking for historical quotes, the API is not appropriate for that and we would provide access to our FTP for near end-of-day files back to 2007.

    Here is a sample of our near end-of-day file that we have back to 2007: http://s3.amazonaws.com/assets.orats.com/ORATS_SMV_Strikes_20200420.zip

    Here are some links for the data API:
    https://docs.orats.io/datav2-api-guide/
    https://www.orats.com/data-api/
    https://www.orats.com/historical-quotes/
    https://blog.orats.com/hs-search-results?term=data+api&type=BLOG_POST&id=6125614442

    Here are some tutorial videos:
    backtesting
    fhttps://youtu.be/vltz55YyFzw trading
    scanner
    Data API
     
    Gambit, Baron and Statistical Trader like this.
  3. ET180

    ET180

    I pull implied volatility through IB API. You get a different implied volatility for each strike and expiration. I think the IB IV is the ATM IV for the front month or averaged over the first couple expirations...not sure.
     
    Statistical Trader likes this.
  4. Thanks @ET180. Just to be clear, you pull *historical* IV through the IB API or just current IV?

    In other words, suppose I want daily data of what the IV *was* on the past for a specific equity over the past X years... is that the sort of data you're pulling?

    I don't care about the IV on specific strikes and expirations for this specific analysis - averaged IV is fine. (I do care about the IV on specific strikes and expirations when I'm looking only at *today's* IV and am about to place an order, but that's a different story.)
     
  5. MrMuppet

    MrMuppet


    If a rolling 30d ATM IV is enough, there is a ton of data available out there MC, ORATS, ivolatility, quantcha, Quandl, Finpricing, yada yada.

    HOWEVER!:
    Data quality in options heavily erodes the less volume an individual chain has. At least I started using option book data and calculate the simple metrics from bid/ask midpoint for that reason.

    Also the question is how the average is calculated and which maturities and deltas you want to be included. Do you want to have a VIX style calculation that includes the entire chain or do you want the 50 delta call?

    In the long run it is always the best to set up your own database and collect bid/offer prices. Mongo DB and jupyter notebook is sufficient. For me all the cursing and "wasted time" was totally worth it.
     
  6. Matt_ORATS

    Matt_ORATS Sponsor

    Good points. We work hard to utilize historical data, score bid-ask quality, and smooth the volatility surface in order to get quality constant maturity, constant delta IV readings.
    https://docs.orats.io/datav2-api-guide/core-research.html#the-smile

    Below are a smattering of SMV Summary data definitions.

    Field Definition
    ticker underlying symbol
    annActDiv annual dividend from the next year of expected dividends
    annIdiv annual implied dividend given options prices put call parity
    borrow30 implied hard-to-borrow interest rate at 30 days to expiration given options prices put call parity
    borrow2y implied hard-to-borrow interest rate at two years to expiration given options prices put call parity
    confidence total weighted confidence from the monthly implied volatilities derived from each month’s number of options and bid ask width of the options markets
    exErnIv10d implied 10 calendar day interpolated implied volatility with earnings effect out
    exErnIv20d implied 20 calendar day interpolated implied volatility with earnings effect out
    exErnIv30d implied 30 calendar day interpolated implied volatility with earnings effect out
    exErnIv60d implied 60 calendar day interpolated implied volatility with earnings effect out
    exErnIv90d implied 90 calendar day interpolated implied volatility with earnings effect out
    exErnIv6m implied 6 month interpolated implied volatility with earnings effect out
    exErnIv1y implied one year interpolated implied volatility with earnings effect out
    ieeEarnEffect implied earnings effect (percentage of expected normal move) to make the best-fit term structure of the month implied volatilities
    impliedMove percentage stock move in the implied earnings effect to make the best-fit term structure of the month implied volatilities
    impliedNextDiv next implied dividend given options prices put call parity
    iv10d 10 calendar day interpolated implied volatility
    iv20d 20 calendar day interpolated implied volatility
    iv30d 30 calendar day interpolated implied volatility
    iv60d 60 calendar day interpolated implied volatility
    iv90d 90 calendar day interpolated implied volatility
    iv6m 6 month interpolated implied volatility
    iv1y one year interpolated implied volatility
    mwAdj30 ATM weighted market width in implied volatility terms interpolated to 30 calendar days to expiration
    mwAdj2y ATM weighted market width in implied volatility terms interpolated to 2 years to expiration
    nextDiv next dividend amount
    rDrv30 derivative or curvature of the monthly strikes at 30 day interpolated. The derivative is the change in the slope for every 10 delta increase in the call delta
    rDrv2y derivative infinite implied
    rSlp30 best-fit regression line through the strike volatilities adjusted to the tangent slope at the 50 delta. The slope is the change in the implied volatility for every 10 delta increase in the call delta
    rSlp2y implied infinite slope
    rVol30 implied volatility at 30 days interpolated
    rVol2y implied volatility at 2 year interpolated
    rip dollar amount of options to start ignoring in delta calculation
    riskFree30 continuous interest (risk-free) rate interpolated to 30 calendar days to expiration
    riskFree2y continuous interest (risk-free) rate interpolated to 2 years to expiration
    skewing Skewing is the difference between rVol30 and adjusted rVol2y where sqrtMinDays is 45 * 0.5. ((rVol30 - rVol2y * (1 - 1/sqrtMinDays)) * sqrtMinDays)
    contango short-term contango of at-the-money implied volatilities ex-earnings
    totalErrorConf total weighted squared error times the confidence in the monthly implied volatility
    dlt5Iv10d 10 calendar day interpolated implied volatility at the 5 delta
    dlt5Iv20d 20 calendar day interpolated implied volatility at the 5 delta
    dlt5Iv30d 30 calendar day interpolated implied volatility at the 5 delta
    dlt5Iv60d 60 calendar day interpolated implied volatility at the 5 delta
    dlt5Iv90d 90 calendar day interpolated implied volatility at the 5 delta
    dlt5Iv6m 180 calendar day interpolated implied volatility at the 5 delta
    dlt5Iv1y 365 calendar day interpolated implied volatility at the 5 delta
    exErnDlt5Iv10d 10 calendar day interpolated implied volatility at the 5 delta with earnings effects removed
    exErnDlt5Iv20d 20 calendar day interpolated implied volatility at the 5 delta with earnings effects removed
    exErnDlt5Iv30d 30 calendar day interpolated implied volatility at the 5 delta with earnings effects removed
    exErnDlt5Iv60d 60 calendar day interpolated implied volatility at the 5 delta with earnings effects removed
    exErnDlt5Iv90d 90 calendar day interpolated implied volatility at the 5 delta with earnings effects removed
    exErnDlt5Iv6m 180 calendar day interpolated implied volatility at the 5 delta with earnings effects removed
    exErnDlt5Iv1y 365 calendar day interpolated implied volatility at the 5 delta with earnings effects removed
    dlt25Iv10d 10 calendar day interpolated implied volatility at the 25 delta
    dlt25Iv20d 20 calendar day interpolated implied volatility at the 25 delta
    dlt25Iv30d 30 calendar day interpolated implied volatility at the 25 delta
    dlt25Iv60d 60 calendar day interpolated implied volatility at the 25 delta
    dlt25Iv90d 90 calendar day interpolated implied volatility at the 25 delta
    dlt25Iv6m 180 calendar day interpolated implied volatility at the 25 delta
    dlt25Iv1y 365 calendar day interpolated implied volatility at the 25 delta
    exErnDlt25Iv10d 10 calendar day interpolated implied volatility at the 25 delta with earnings effects removed
    exErnDlt25Iv20d 20 calendar day interpolated implied volatility at the 25 delta with earnings effects removed...
     
    Statistical Trader likes this.
  7. Matt_ORATS

    Matt_ORATS Sponsor

    With consistent and thorough methods of calculating IV and HV you can see some interesting phenomenon in the market. For example, the put-call skew we call slope is very shallow (bottom red horizontal line below) vs historical right now. I think this is owing to the interest rate plays in the market now, ie buying calls, selling puts, selling underlying betting on rising rates.

    Also, the RobinHood effect, retail buying way OTM calls had significantly moved the skew but that is reverting as seen by the 2nd chart in green showing the 5 delta IV divided by the 75 delta call IV.
    [​IMG]
     
    Statistical Trader and MrMuppet like this.
  8. ET180

    ET180

    I pull this:

    upload_2022-7-12_14-6-14.png

    https://interactivebrokers.github.io/tws-api/historical_bars.html
     
    Statistical Trader likes this.