1
$\begingroup$

I’ve tried to find a good answer for this but had no luck so I’m bringing it here: potentially beginner question, but how much accuracy would I be sacrificing by backtesting an options strategy with underlying price and IV data only (no historical option prices) with Black Scholes? I.e., how big is my trade off by “estimating” option prices historically? This would involve extensive IV data that would cover different maturities and moneyness levels, so not terribly basic data.

I’m having trouble trying to benchmark this idea; I know it’s not as good as full chain data, but I am curious to get some thoughts on whether such an assumption would completely break a backtest, or just be a small sacrifice in accuracy.

Thanks in advance for offering advice.

$\endgroup$
4
  • $\begingroup$ I don't think you can simulate P&Ls meaningfully without knowing the historical prices (levels..) of the underlying(s). Even if the strategy is assumed to be dynamically hedged to have no material sensitivity to the level of the underlying at all times, you'd still need to know the cost if your hedging activities. $\endgroup$ Jan 13 at 2:17
  • $\begingroup$ @Dimitri Vulis my mistake, just edited to clarify that I would have have underlying data. I am mainly just concerned that estimating historical option prices with robust IV data and Black Scholes would be unreasonably far off from real-world prices. $\endgroup$
    – benjabee10
    Jan 13 at 3:26
  • $\begingroup$ For some practicalities, this post from my blog might be helpful: blog.ephorie.de/backtesting-options-strategies-with-r $\endgroup$
    – vonjd
    Jan 14 at 14:16
  • 1
    $\begingroup$ @vonjd I came across your post (plus the Madoff replication paper) before posting this question, thinking of using some of your ideas as reference (though I use python primarily). Thanks for sharing and for the helpful comment! $\endgroup$
    – benjabee10
    Jan 14 at 17:41
0
$\begingroup$

I would say it depends on the frequency of the strategy you trade. For low frequency (weeks) strategy (e.g. hold the position to maturity, delta-hedged of course) from my experience I believe it is quite accurate. For higher frequency strategy probably not, but I have no experience on that myself.

$\endgroup$
0
$\begingroup$

There is a statistically and economically significant difference between option implied volatility ("IV") and (underlying) historical asset price volatility, calculated as the standard deviation of log return time series at some time horizon. The difference is on average positive (IV > volatility).

(Underlying) volatility is a measure of the past performance of the stock in the spot market whereas the implied volatility is a measure derived from a different market - the option market. Highly simplified, the first is backwards looking, the second is forward looking.

I do not suggest to base any kind of option strategy backtesting on such a data set alone.

PS: In the Black-Scholes world, you can even estimate the error from hedging (thus pricing) at wrong volatilities: delta hedging errors with implied vs historical volatility.

$\endgroup$
0
$\begingroup$

Not necessarily an answer but far too long for comments.

I am surprised no one asked about the underlying or what exactly you intend to backtest?

Since you write option chains, I would assume it's listed products? You also write moneyness, which rules out FX in my opinion. Strictly speaking, FX would be Garman Kohlhagen and most commodity would use Black. However, people (and vendors like Bloomberg) frequently just write Black Scholes, when in fact it is Garman Kohlhagen for example.

If it is listed, I am a bit surprised why you have access to IV data, but not the actual prices. The later is way simpler to obtain.

Generally, if you do it all properly, which is harder than most people think, having a reliable vol surface (and all other data needed for the asset to price an option; assuming it is equity, you will need dividends and interest rates on top of the underlying price and IV) will in my opinion be almost better than having listed prices in many cases. Frequently, listed option data is not particularly reliable for illiquid options and as long as there was no actual trade (zero volume or even open interest), option prices can be quite unwieldly.

Now, if it is commodity, and you try to backtest actual listed options with IV data, it will very much depend on the nature of this IV dataset. E.g. constant tenors will be a problem with fixed date expiries from the exchange (google Samuelson effect).

Long story short, as long as you have all market data needed to price an option, I think there should be no material difference, provided your IV data is good. Bear in mind that many option markets have different opening and closing times compared to spot markets, so your datasets may have a time mismatch which can complicate this.

Edit

Everyone who has access to BBG should have access to the same API. If you get this via API - forget Bloomberg in my opinion. The IVOL_MONEYNESS fields are what is called LIVE on OVDV (OVDV defaults to BVOL, but that cannot be used in API unless you use additional services). LIVE is very unreliable.

The entire option chain is available without much hazzle from 2012 onwards (or so, did not test that now - help desk can help with that). Also, OVME BT (backtest tab) backtests entire strategies with bid/ask and actual listed options (or if OTC with better IVOL called BVOL). Moreover, these IVOL fields will only give you a fraction of what is needed. They are fixed term and moneyness, so you will need to interpolate this all yourself. Plus, I am honestly not sure how to get reliable Dividend data for option pricing into the BBG API.

You could also create a strategy in OVME, save it, and use that ID to load the market value at any given day (which uses BVOL). You cannot run BDH, but use BDP with overrides like OPT_TRADE_DATE (or something along the line, have not tested that now).

Bottom line, setting up a backtest with LIVE moneyness fields will be very rudimentary and most likely useless (given there is so much else you also need to consider - like getting interest rate and dividend for your deals will be very tricky, and even the underlying price is subject to a lot of settings how dividends, splits, spin-offs etc are handled). In my opinion, simply use OVME. Either backtest with it, or save the deals. The help desk can certainly help with that.

$\endgroup$
3
  • $\begingroup$ The OP does have underlying price data (as stated in the comment of the question). I totally agree with you as long as one has reasonable dividend and interest rate input. $\endgroup$
    – MainCom
    Jan 14 at 4:26
  • $\begingroup$ Thank you so much for the help; I am realizing that I should have clarified a lot more in initial post, but was trying to keep things brief. I want to backtest equity option strategies (defined list of <50 stocks), and I have access to a Bloomberg terminal but have struggled with trying to get historical chains programmatically (I don’t have full API access etc), but I know IV historical data is easier to obtain, so I wanted to explore that route rather than trying to figure out the hassle of hist. chains with Bloomberg. Based on what you said, sounds like the approximation will be close, thx! $\endgroup$
    – benjabee10
    Jan 14 at 17:14
  • $\begingroup$ The reason I mentioned moneyness levels is because I will need to construct option spreads based on certain factors, so for example, I might need to price a 6month AAPL call at 110% OTM (or something), so I was hoping that if I could get the 6m 110% moneyness IV for AAPL on that day (daily frequency backtest), it would be close enough to approximate the market on that day. It makes sense in my head, but wanted to get some extra thoughts. Thanks again, I would upvote but don’t have enough rep. $\endgroup$
    – benjabee10
    Jan 14 at 17:17

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.