I've been doing some digging, and this question has been asked many times in various forms over the years -
In particular I am interested in spread trading. From these I've gathered backtesting these strategies is pretty much relegated to commercial tools, or professionals writing their own. I understand the basic idea of backtesting, and I'd like to make my own. Partially because right now I'm just a hobbyist who doesn't yet have the capital to afford a really nice tool, and partially because I would like to learn exactly how it works from the inside.
One post mentions that an options backtester is not much different than an equity backtester. It's possible that this is true - but I don't understand how. For options backtesting, we'd need historical options data (to get the bid/ask, strike, expiration, delta, imp. vol., etc), and also historical data for the underlying contract in order to generate signals. We would also need to properly expire the options. Perhaps I am over-complicating it.
Is there any resources that really dive in depth to how their backtester was made? Some of the papers in the 4th link go into it a little bit in the methodology section, but it seemed to me there wasn't too much to chew on in most of them. Most likely because discussion of the backtester itself is tangential to the actual paper.
Answer
Alright this is a good question. I've been there before. As you said, backtesting options will be almost the same as stocks, but with more data to play with (Greeks, volatility, theoretical prices, etc)
The most important thing here will be your historical data. Your source of data. In order to backtest options, usually you need to have the whole historical option chain.
You won't find this on Internet for free (Don't even try it) However, there are some companies offering this, and let me tell you is not cheap at all.
Personally, I ended up writing another software that periodically will scan the whole option market, collecting the data from the chains. This is a "huge" database that I hold for my backtesting projects.
So I suggest you do the same. First focus on the data.
Good luck
No comments:
Post a Comment