SPY Short Put 0 DTE Leveraged Options Backtest

In this post we’ll take a look at the backtest results of opening one SPY short put 0 DTE leveraged position each trading day from Jan 3 2007 through Sep 26 2019 and see if there are any discernible trends. We’ll also explore the profitable strategies to see if any outperform buy-and-hold SPY.
There are 10 backtests in this study evaluating over 11,500 SPY short put 0 DTE leveraged trades.
Let’s dive in!
Contents
Summary
Systematically opening SPY short put 0 DTE leveraged positions was profitable no matter which strategy was selected.
All 30D and 50D strategies outperformed buy-and-hold SPY with regard to total return.
Methodology
Strategy Details
- Symbol: SPY
- Strategy: Short Put
- Days Till Expiration: 0 DTE +/- 3, closest to 0
- Start Date: 2007-01-03
- End Date: 2019-09-26
- Positions opened per trade: 1
- Entry Days: daily
- Entry Signal: N/A
- Timing: 3:46pm ET
- Strike Selection
- 5 delta +/- 4.5 delta, closest to 5
- 10 delta +/- 5 delta, closest to 10
- 16 delta +/- 6 delta, closest to 16
- 30 delta +/- 8 delta, closest to 30
- 50 delta +/- 8 delta, closest to 50
- Trade Entry
- 5D short put
- 10D short put
- 16D short put
- 30D short put
- 50D short put
- Trade Exit
- 50% max profit or expiration, whichever occurs first
- Hold till expiration
- Max Margin Utilization Target (short option strats only): 100% | 5x leverage
- Max Drawdown Target: 99% | account value shall not go negative
Assumptions
- Margin requirement for short CALL and PUT positions is 20% of notional
- Margin requirement for short STRADDLE and STRANGLE positions is 20% of the larger strike
- Margin requirement for short VERTICAL SPREAD positions is the difference between the strikes
- Margin requirement for short CALENDAR SPREAD positions, where the short option expires after the long option, is 20% of the short option
- Margin requirement for long CALENDAR SPREAD positions, where the short options expires before the long option, is the net cost of the spread
- Early assignment never occurs
- There is ample liquidity at all times
- Margin calls never occur (starting capital is set using hindsight bias so that max margin utilization never exceeds 100%)
- Apply a 20% discount to displayed results. For example, if a strat depicts a CAGR of 10%, assume that it’ll yield 8% in practice.
Mechanics
- Prices are in USD
- Prices are nominal (not adjusted for inflation)
- All statistics are pre-tax, where applicable
- Margin collateral is invested in 3mo US treasuries and earns interest daily
- Option positions are opened at 3:46pm ET
- Option positions are closed at 3:46pm ET (4:00pm if closed on the date of expiration)
- Commission to open, close early, or expire ITM is 1.00 USD per non-index underlying (eg: SPY, IWM, AAPL, etc.) contract
- Commission to open, close early, or expire ITM is 1.32 USD per index underlying (eg: SPX, RUT, etc.) contract
- Commission to expire worthless is 0.00 USD per contract (non-index and index)
- Commission to open or close non-option positions, if applicable, is 0.00 USD
- Slippage is calculated according to the slippage table
- Starting capital for short option backtests is adjusted in $1000 increments such that max margin utilization is between 80-100%, closest to 100%, of max margin utilization target
- Starting capital for long option backtests is adjusted in $1000 increments such that max drawdown is between 80-100%, closest to 100%, of max drawdown target
- Positions that have an exit date beyond the backtest end date are excluded
- For comprehensive details, visit the methodology page
Results
Starting Capital


Early management has essentially no impact since positions are held for, on average, one day.
Margin Utilization


Early management yielded a higher average margin utilization across all strategies when compared to holding till expiration.
Hindsight bias was used to maximize Reg-T margin utilization for each strategy. This allows a “best case” scenario for the option strategy to outperform the benchmark.

Also displayed is the date in which each strategy experienced maximum margin utilization.
Premium Capture


Early management had lower rates of premium capture vs holding till expiration.
The higher the delta the lower the premium capture.
Win Rate

Managing trades early outperformed holding till expiration with regard to win rate.
The higher the delta the lower the win rate.
Annual Volatility
An active subscription is needed to view this content. Already a subscriber? Log in. Not a subscriber? Sign up for just 99 USD a year. Learn more.
Monthly Returns
An active subscription is needed to view this content. Already a subscriber? Log in. Not a subscriber? Sign up for just 99 USD a year. Learn more.
Max Drawdown
An active subscription is needed to view this content. Already a subscriber? Log in. Not a subscriber? Sign up for just 99 USD a year. Learn more.
Max Drawdown Duration
An active subscription is needed to view this content. Already a subscriber? Log in. Not a subscriber? Sign up for just 99 USD a year. Learn more.
Average Trade Duration
Managing trades at 50% max profit yielded trade durations less than half the duration of hold-till-expiration.
Compound Annual Growth Rate
An active subscription is needed to view this content. Already a subscriber? Log in. Not a subscriber? Sign up for just 99 USD a year. Learn more.
Sharpe Ratio
An active subscription is needed to view this content. Already a subscriber? Log in. Not a subscriber? Sign up for just 99 USD a year. Learn more.
Profit Spent on Commission
24.24% – the blended average percent of profits spent on commission across all option strategies.
Total P/L
Early management outperformed holding till expiration with regard to total P/L for the majority of strategies. 5D and 10D were exceptions due to commission drag.
Higher delta strategies yielded greater total P/L than lower delta strategies.
Overall
All option strategies were profitable.
All 30D and 50D strategies outperformed buy-and-hold SPY with regard to total return.
Discussion
At face value it appears there may be some opportunities with 0 DTE options to outperform buy-and-hold SPY. Let me debunk those initial thoughts.
Timing Luck
I’ve referenced timing luck – P/L variance associated with sheer luck – on several occasions. A material risk and P/L variance can be observed by simply changing the day in which a position is opened, closed or rolled.
For example, a single 45 DTE short put can have the following outcomes:
A popular backtest approach is to open a position then roll (close then reopen a new position). One can get very lucky or unlucky based on when the strategy was started. In fact, it’s possible to have 30 different return profiles – one for each day of the month in which the backtest was started. If you’re pushing a narrative, simply select the return profile that best matches your message and no one’s the wiser.
To mitigate this potential “lying with data” opportunity, two approaches exist: open a position daily which essentially eliminates timing luck or publish a portfolio variance statistic that provides a +/- standard deviation against reported performance. I do the former.
Great, so what does any of this have to do with the backtest results? Glad you asked. Let’s take a look at the number of occurrences by year.
Time in the Market
Looking at the 50D strategy, there were only 12 trades in 2007 and consequently about 12 days of market exposure; monthlies was the only option product that existed at this time for SPY. Consequently, the backtest skated right past the 2007 global financial crisis. By “luckily” not participating in the market during this time the strategy had a great leg up on the buy-and-hold approach.
The options strategy experienced more occurrences as new options products came to market. On June 4 2010 CBOE released Friday-expiring weekly options on SPY. About 6 years later on August 30 2016 CBOE released Wednesday-expiring weekly options on SPY (see SEC release 34-78686). About 18 months later on February 16 2018 CBOE released Monday-expiring weekly options on SPY (see SEC release 34-82733).
Due to the lack of product availability and thus the inability to execute the option strategy (daily trades of ultra-short DTE positions) more than a handful of times per yer for the majority of the backtest duration, we are forced to accept a substantial amount of timing luck in the performance results. The same statement holds true with the cash-secured version of this backtest; take these numbers with a grain of salt.
I will be performing an updated version of this study that looks from mid March 2018 onward as it will have a far smaller incidence of timing luck.
Update: the updated version of this study is live.
Additional Resources
Private, Custom Backtests
Discover your edge with private, custom backtests for as little as 99 USD. Learn more or contact us for a quote.
Trade Logs
Visit the trade log store and download the data used in this and other backtests.
s1 signal
Trade S&P 500 options more efficiently using the s1 signal. Learn more.
s2 signal
Trade GLD options more efficiently using the s2 signal. Learn more.
s4 signal
Trade Russell 2000 options more efficiently using the s4 signal. Learn more.
mREIT Preferred Share Dashboard
High-yield, low-beta alternatives to cash or treasury bills. Learn more.
Consultations
Schedule a consultation to review your specific scenario and get direct answers to your questions.
June 5, 2020 @ 10:42 am
Thank you for a great backtests.
Explain please, how much leverage did you use in this study.
For example, SPY price $300 we have $30000 capital means no leverage, $15000 capital – 2x leverage.
June 5, 2020 @ 11:35 am
Welcome! Maximal leverage was used with the help of hindsight bias – 5x. If SPY is $300 then $6k. Assumptions about buying power expansion risk, etc. are in the methodology section.
June 5, 2020 @ 12:50 pm
How did you get such a low CAGR with 5x leverage?
I personally sell 5D puts 0 DTE 3 times per week from February 2020. My average premium per contract $35.5.
I understand premiums was so high in this year, so for example average premium for 300 strike will be $20.
$20*3*52 = $3120 premium per year
Calculating profit using premium capture
3120*0.458 = $1429
Anual rate with $30000 capital (1x leverage)
1429/30000 = 0.0476 = 4.76%
So with 5x leverage it would be 23.8%.
Is it right? Or I’m wrong?
June 5, 2020 @ 6:43 pm
The first several years of the study experienced virtually no time in the market due to only monthlies existing at the time and thus the strategies weren’t generating positive returns.
I’ll be doing a second version of this study from mid 2018 through present to better reflect the strategy.
June 5, 2020 @ 7:06 pm
As for the formula, don’t forget to factor in losses too.
June 6, 2020 @ 10:36 am
Losses accounted for in long run premium capture rate.
Need to calculate max drowdown and volatility for a different leverage multipliers to adjust strategy for risk tolerance. Do you know how to do it?
June 6, 2020 @ 1:46 pm
Yes, I can run the numbers with different leverage targets.
I offer custom, private backtesting for a fee. PM me the details of what you have in mind and I’ll send you a quote and an example results file.
June 5, 2020 @ 1:27 pm
So, you gon sell 0DTE puts brah? 🙂
June 5, 2020 @ 4:59 pm
Yep. Selling 0 DTE on a regular basis
June 6, 2020 @ 9:31 pm
Interesting backtest. Was this an EOD dataset (it says “Timing 3:46pm ET” in core strategy section of the post)? If so, the trades were entered at 3:45 at the end of the day that the contracts expired, so expired 15 minutes later? Or were these opened “at open” and allowed to expire “at close”? Or is 0DTE really 1DTE and trade is opened 3:45 pm the day before expiry and allowed to expire the next day?
Follow-on question: If EOD data is used, how is the 50% profit handled on a 0 (or 1) day trade? There would only be two data points: the open price (3:45 pm) and the sell price (3:45 pm). If you sell at 50% profit at 3:45 pm why not just let expire? Sorry, maybe getting ahead of myself with this follow-on, as your answer to the first question might clear it up. Maybe it’s intraday data…
June 7, 2020 @ 12:56 am
Great question and follow-on! You’re spot on with the mechanics.
The 45 DTE studies are comprised of positions with a range from 28-62 DTE – a tolerance of +/-17 days. The option contract closest to a 45 DTE duration is selected amongst the available choices on a given day. The 0 DTE studies have a range from 0-3 DTE with a target closest to 0 DTE (same day). The detailed reason for these tolerances is in the methodology section. Short answer is to help ensure 1) a position is opened daily and 2) timing luck is minimized.
Option prices are evaluated once per day at 3:46pm ET. Any logic that needs to trigger is then triggered based on this pricing. For 0-DTE positions, early management doesn’t apply since the position is opened 14 minutes before closing and thus expires before the next price check occurs which is the next trading day.
Early management comes into play for positions that are 1-3 DTE. A 3-DTE option may be a position that’s opened on Friday with a Monday expiration. Friday is day 0, Saturday is 1, Sunday is 2 leaving Monday as day 3. Before Monday and Wednesday-expirations existed, a position may be opened on a Tuesday which expires on a Friday and thus early management comes into play in this scenario.
June 9, 2020 @ 12:06 am
Ok, makes sense. But in real life would anyone open a position at 3:46 on a Friday and close it at 50% profit at 3:46 on Monday? Wouldn’t you just let it expire 14 minutes later?
This test is kind of tricky because it includes 0 DTE (literally 14 minute trades in this instance), 1 DTE (by which I mean opening EOD and closing next trading day, so includes 3DTE weekend trades.
And it seems to include a 3rd option, which is 2 DTE, or opening EOD and closing 2 trading days later (opening Monday EOD, closing Wednesday).
Why would it select 0 DTE over 1 DTE? Or why would it select 2 DTE? Based simply on availability of strike within the delta range? These all strike me as very different trades in real life.
I do 1 DTE trades frequently using EOD as entry point, but wouldn’t do 2 DTE because backtested both scenarios and 2 DTE performed poorly while 1 DTE (including 3 DTE weekend trades) did very well.
I couldn’t test 0 DTE with the EOD data on my backtester. At least I don’t think I could.
What I’ve always wanted to test is 0 DTE with intraday entries, like entering trade at open, at 10 AM, at 12 PM, at 2 PM etc, and trying different deltas and also rules that would turn the entries on or off.
Will have to wait until I can afford intraday SPX data I guess!
June 9, 2020 @ 10:46 am
Probably not; I’d let it expire 14 minutes later. All instances of the “14-minute” positions were held till expiration.
They are indeed very different trades. The mechanics of position selection essentially says: “show me all options on SPY with a delta range of “x” and DTE range of “y”. Then, select the delta that’s closest to the target delta value (if such a position exists within the range) then select the DTE value that’s closest to 0 DTE (if such a position exists within the range).
Are the results of your 2 DTE trades published anywhere? I’d like to check it out. There’s a 2-3 DTE backtest (i.e. BigERN’s option strategy of opening Mon and closing Wed, opening Wed and closing Fri and opening Fri and closing Mon) in the works so it’ll be interesting to see if the results align.
Yeah, intraday data is expensive! Also, it’s a LOT of data to parse.
June 9, 2020 @ 4:05 pm
No, I don’t have a website or anything. I backtested using OptionStack. It’s also not a straight daily entry – I use a technical signal to turn the trades on and off.
January 6, 2021 @ 8:59 pm
I should mention that at Quantconnect.com, it appears that intraday options data is quite affordable. If you know how to program in Python, I believe you could run an intraday test on a 0 DTE strategy like this.
January 7, 2021 @ 2:03 pm
Thanks for the tip! I’ll look into it.
June 9, 2020 @ 1:16 pm
Have you ever done a backtest where the margin collateral is held in SPY instead of a T-bill? My broker requires only 8% margin for SPY, so it seems viable to use SPY as collateral and sell puts as a form of safe leverage. SPY’s dividend is also very appealing compared to bond yields.
June 9, 2020 @ 1:56 pm
I haven’t, but that’s certainly something I can add to the list.
June 13, 2020 @ 1:17 am
Also, do you think you could backtest the “hold the strike” approach to put selling? Basically, if a put expires ITM, you sell the same put for the next expiration. You keep doing this until it expires OTM, and then you go back to selling whatever delta you usually sell. The approach is described here: https://seekingalpha.com/article/4210320-selling-puts-good-bad-and-ugly
Thanks!
June 13, 2020 @ 8:13 am
Interesting idea. The first time I heard of a “hold the strike” approach was just 3 days ago on BigERN’s “Option Writing part 4” post (https://earlyretirementnow.com/2020/06/10/passive-income-through-option-writing-part-4/).
What I find curious about the SA article is that no one, neither the author nor the commenters, mentioned the issue and impacts of early assignment (not applicable for SPX, but idk many casual people selling SPX options ITM [read: using 5x leverage]. Meanwhile, all the author’s examples imply SPY is used).
I can indeed run the numbers on a hold-the-strike approach but I won’t be able to simulate the impacts of early assignment, which can be material. As such, any study that depends on ITM positions as part of the strategy can be easily dismissed is “substantially inaccurate” due to the inability to model assignment risk.
I’m sure CBOE and/or clearing houses have insights into assignment frequency and severity but I unfortunately don’t have such data to build a model. My assumptions would be a shot in the dark and could be a mile off.
June 13, 2020 @ 10:59 pm
Yeah, SPX, XSP, ES, NDX, NQ, RUT, RTY, and others have no risk of early assignment. Lots of “options” available if you are concerned about early assignment.
However, early assignment shouldn’t be a big deal. If anything, it would be good for the seller because they immediately collect all the remaining time premium and can then close the stock position and reopen the short put position, allowing them to collect time premium again.
So I think it would be ok to assume that early assignment never happens, and if it does happen in the real world, just consider it a bonus 🙂
June 15, 2020 @ 2:28 pm
When I was kicking the tires on an ITM long-call study the P/L curves tracked the performance of SPY. The more ITM the position at order entry the more closely it hugged a basic SPY buy/hold curve. However, it always underperformed a comparatively leveraged buy/hold SPY strategy due to theta decay.
Your point about early assignment on an ITM short strategy being accretive is a good one. Suppose SPX is used as the underlying in order to mitigate the early assignment risk (necessary for the study to be defensible). The strategy becomes a proxy for a leveraged SPY trade + any premium received.
Seems plausible so long as one can stay solvent during downturns, which will no doubt be expensive on SPX. I’ll add this to the list.
June 13, 2020 @ 9:17 am
Hold the strike sounds like it’s just rolling to a future expiration. Am I missing something?
June 14, 2020 @ 1:07 am
Instead of rolling to the same delta, you roll to the same strike price if the put is ITM. (This means you will be rolling to a different delta). In theory, this means that you should always be able to roll for a credit, which is different from rolling to a new delta, which would result in a debit if the put is ITM.
June 14, 2020 @ 1:28 am
Rolling to same strike is pretty common. For example, at OptionAlpha it’s recommended (if you can get a credit). It’s a way to “buy more time” on a trade. Though if you’re getting a credit I suppose you’re not buying anything.
My problem with rolling is it is framed as the continuation of the same trade. I’m fact, you close your trade at a loss then open a new trade. If you “hold your strike” your new trade is opened at a delta at which you would not normally open a new trade unless you were speculating. It might work fine on SPX because of, you know, endless bull market, but in general in trading I don’t think it’s advisable. It’s something traders do to hold onto a losing position instead of taking the loss and moving on.
May 1, 2021 @ 8:40 pm
newbie question here on margin collateral held in SPY instead of a T-bill. Since put selling is a bullish strategy, then wouldn’t holding margin collateral in SPY compound the loss and margin needed in the event of a downturn?
May 3, 2021 @ 6:57 pm
Yes, that is correct.
December 25, 2020 @ 1:39 pm
Amazing work on this analysis. Two questions. 1-Can you clarify how max drawdown was calculated given the leverage? Are you assuming the max drawdown = drawdown/unlevered investment (Ie 1x investment vs the 5x)?
2-The max drawdown was -11.37%. Can you reveal when that drawdown occurred? Seems very punitive on a portfolio and potentially a wipe out on a 5x levered portfolio depending on the definition of (1). Many thanks!
December 26, 2020 @ 2:46 pm
Thanks! Certainly –
Max drawdown is calculated based on the portfolio’s peak-to-trough change, described as a % of the end-of-day value (open position / unrealized P/L is not factored into end-of-day P/L value). I have updated the methodology section to reflect this clarified definition.
As for the date in which the max drawdown values occurred, I unfortunately wasn’t capturing that data point when I did this backtest nor was I saving the raw output data for historic Q&A such as this. Starting around July 2020 is when the data point was added and around Oct / Nov 2020 for saving the raw output. Will have to rebuild the backtest(s) in order to capture that value.