Option data

Hi Team,

are there any plans to add options data to the database? Similar to data in option screeners like Market Chameleon

Not necessarily to trade options but to use the data as factors in stock trading systems. Option markets can strongly impact the underlying (tail wagging the dog).

Simple data like "Are there options for this ticker?" could already be helpful expecially in microcap systems. IV and skew and greeks would open up even more possibilities.

Just an idea :slight_smile:

Cheers,
Tony

1 Like

Yes.

We're evaluating alpha vantage for a cost effective historical option data. Sample data here

It has the following limitations:

  • Only active stocks
  • We have to query each symbol to find out if options exis (AFAIK)

Below is one of IBM options with on 2017-11-15 with all the greeks. Historical option data is too massive to ingest wholly. We'd probably just add the following and make it available for backtesting:

  • Weekly snapshots
  • Active stocks only (that's all they have)
  • Only liquid options

So now the question is how would you use this data in a backtest ? How would you zero in on the option that you want to use to screen/rank/filter based on whatever greek?

Can you walk me through an example?

Thanks

Sample data snippet

{
"contractID": "IBM171208C00152500",
"symbol": "IBM",
"expiration": "2017-12-08",
"strike": "152.50",
"type": "call",
"last": "0.55",
"mark": "0.74",
"bid": "0.54",
"bid_size": "6",
"ask": "0.93",
"ask_size": "1",
"volume": "98",
"open_interest": "217",
"date": "2017-11-15",
"implied_volatility": "0.17090",
"delta": "0.21130",
"gamma": "0.04584",
"theta": "-0.04064",
"vega": "0.10681",
"rho": "0.01912"
},

Tbh, I personally would first keep it simple and restrict any research attempts to ATM put and call data including let's say for 5-, 30-, 90-day expiration. For those, having the data mentioned above for any given ticker already gives a lot of factors to play with (IV, Put-Call-Ratio, Put-Call-Parity, Implied Move, ...) and potential formulas like IV30D/TRSD30D, CurIV/HistoricIV or OptionVolume/StockVolume etc.

I would simply test these basic formulas in screens, ranking systems, AI Factor, etc. to find relationships.

From there, adding selected OTM option data e.g. of a selected set of Deltas would open up more and more possibilities.

But yeah, I would go step-by-step and imo the first step would be ATM option data.

PS: That would be the simple "Option market factors for stock selection" approach. For real option strategies (trading or hedging with options), it gets more complex and more powerful (see answer below).

1 Like

Let's say you want to build an option backtester, how would you do it?

Well, I would argue you would want to do it in much the same way we do it right now within Portfolio123 for equities: you would want to rank them. Let's focus on put options for the obvious benefit of hedging.

At each point in time I would want to have a Universe of all liquid put options available. At each point in time, I would also like to have the corresponding underlying stock data - which Portfolio123 already has - 'linked' to the option.

To test an option strategy, I would like to perform a ranking backtest (again, much like with equities). For each point in time (e.g. weekly), I would then rank all the options based on 'option'-factors.

What are option factors? Some ideas below:

  • The rank of the underlying stock within a equity ranking system (as we currently have) - higher better, assuming a short system
  • The price of the option alone (In your example data, this would be 'Last') - lower better
  • The price of the option divided by the Black-Scholes value of the option or the Binomial Price. The Black-Scholes and Binomial Price values can already be calculated within Portfolio123 data (given a certain strike price) - lower better
  • The historical volatility of the underlying divided by the Implied Volatility of the option - higher better
  • The Greek sensitivities (delta, gamma, etc.) divided by the price of the option (I would want more sensitivity to underlying for the price I pay for an option) - higher better
  • Rank the price of the option against options on equities in the same (sub)industry - lower better

and possibly more: price of the option divided by time to experiation (lower better), the price of the option now versus the price 4 weeks ago (higher better or perhaps lower better).

I would then want to run this ranking test over the last 20+ years and look for the best metrics to rank put options on. I would want to check for robustness over time periods and potentially over geographies (again, much like we do with equities today).

Finally, once I have 'working' option factors, I would want to combine it in a simulation (or a book) with one of my stock strategies with relatively realistic slippage. In a perfect world, I would be able to have a link with IBKR or an other broker where I can buy these liquid put options along with my long equity strategy.

As an investor, that would be huge. I mean, we already cover the long side in an effective way with Portfolio123. Assuming the Europe (and perhaps even the Asian) coverage comes through, I already have global coverage.

Combining that with a way to profit from the 'short'-side, would be a dream.

1 Like