# Easiest possible way to backtest a semi dynamic options strategy

I have a few options strategies Id like to backtest and I have some familiarity with Python. In particular Id like to backtest a "semi-dynamic" long vol. strategy putting on $$0$$ cost backspreads in the direction of the market after a say $$5$$% movement within a month.

A backspread is an option combo where one sells an option ATM and goes down in OTM until the premium of buying two matches that premium obtained from the selling. In this way the position is $$0$$ cost to enter, with twice as many options bought as sold.

Any ideas? Packages and so on.

Also feel free do run this backtest and give me the result! This would indeed be the easiest way.

• gouthamanbalaraman.com/blog/… – Lisa Ann Aug 23 at 13:54
• I'm not aware of any canned routines to do this. Goes without saying calcing performance of an option portfolio is a little more complicated than cash equities. Assuming you have historical options data though, it's a fairly straightforward implementation, I'd just code it myself if I were you. – Chris Aug 23 at 19:04
• In my experience, most well known python packages (eg. backtrader, zipline) are mostly optimised for 'cash'-style intraday trading where you know the securities of interest in advance and know their prices, but need to loop over many, many intraday bars. From your question, I think you're happy with daily frequency but instead will need to optimise around the decision strategy and building the vol surfaces at each period. I don't know of any package that is built for this, but would love to hear if there is anything out there. – StackG Aug 24 at 1:05
• @StackG I dont even wanna optimize anything, just wanna see what happens if i roll backspreads on that signal historically. – Vlad Aug 24 at 11:49
• @StackG Added some info to question – Vlad Aug 26 at 12:48