If my math is correct, if I construct the following portfolio of options the worst that I can do regardless of what the underlying does is profit $1.74 (less commissions).
Is this correct? Are there any risks that I'm not taking into account? How likely are those risks to occur?
- SELL 2 SPY150918P00225000 FOR 17.50 (444 open)
- SELL 1 SPY150918C00169000 FOR 39.44 (105 open)
- SELL 1 SPY150918C00168000 FOR 40.44 (104 open)
- BUY 1 SPY150918P00170000 FOR 0.05 (1500 open)
- BUY 1 SPY150918P00167000 FOR 0.04 (1500 open)
- BUY 1 SPY150918C00224000 FOR 0.03 (3010 open)
- BUY 1 SPY150918C00226000 FOR 0.02 (1192 open)
Originally, I was trying to find arbitrage opportunities in options with the same underlying and the same expiration using a linear programming toy I was working on at the time. It would do this:
- Go through each ticker on the S&P 500
- Go through each option expiration period
- Build an LP model that combines buying / selling puts / calls so that the model is profitable regardless what happens to the underlying (falls to 0, or goes to ~infinity)
The model discovered a strategy that worked like this (my post on trade-king forums at the time):
First find a call and put option (sell 1, buy the other) with the same strike and expiration that if executed today would be profitable. If you're selling a put, prepare to sell 100 shares of the underlying short. When you do, your profit is locked in. Set up a trigger to sell short the stocks when the underlying falls to a certain point. It seems like this would create a synthetic call option that you get paid to get into. If you come into a situation where you buy a put and sell a call; be prepared to buy 100 shares (margin?). This would create a synthetic put. If you're lucky enough to find this situation on the same stock at the same expiration; you could do a synth-straddle.
...and why it doesn't work:
Unfortunately it looks like ex-div date nukes this concept. 96% of the stocks that show up in my screener as being profitable through this trade have an ex-div date < option expiration date. Oh well...
Hope this helps someone