Options Cafe blog - options trading education and strategies

We like to explore, educate, and share ideas involving options trading. Come along with us on
our journey to demystify the complex yet rewarding world of options trading.

0DTE Opening Range Breakout: Strategy Rules and Backtest Results

A few weeks ago I published a post about how I used AI to build and backtest a 0DTE options strategy in a single session. That post focused on the process -- how AI dramatically accelerates trading research. But many of you asked for the deeper dive: the exact rules, the full trade-by-trade results, the monthly breakdowns, and the lessons I learned from optimizing the parameters. This post is that deeper dive.

I am going to walk you through every detail of the 0DTE Opening Range Breakout (ORB) strategy I developed for SPY. By the end, you will know exactly how the strategy works, what the backtested results look like across 303 trades over nearly two years, which days of the week perform best, how calls and puts compare, and why the simplest version of the strategy beat every "optimized" version I tested.

If you are new to options trading, you may want to start with my guides on how I day trade SPY or the broader topic of backtesting options strategies on this website. This post assumes you understand the basics of buying calls and puts, and that you know what 0DTE (zero days to expiration) options are.

Backtest Results at a Glance SPY 0DTE ORB · Feb 2024 – Mar 2026 · $25K Starting Capital
Total Return
+59.4%
$25K → $39.9K
Total Trades
303
Mon / Wed / Fri
Win Rate
41.3%
2:1 Payoff Ratio
Max Drawdown
7.6%
$2,611

What Is the Opening Range Breakout Strategy?

The opening range breakout is one of the oldest day trading concepts in existence. The idea is simple: the first few minutes of the trading day establish a "battle zone" where buyers and sellers are establishing the day's initial price range. When price decisively breaks out of that range, it often signals the direction for the rest of the session.

Traditional ORB strategies trade stocks or futures. What makes this version different is that I am using 0DTE SPY options to trade the breakout. Since SPY has had daily option expirations (Monday through Friday) since mid-2023, there is always a 0DTE option available. By buying ATM calls or puts on the breakout, you get leveraged exposure to the move with a defined maximum loss -- the premium you paid for the option.

The leverage is the key. When SPY moves just $1-2 after a breakout, an ATM 0DTE option can easily double in value thanks to the extreme gamma exposure that comes with same-day expiration. That asymmetry -- the option can double on a moderate move but you cap your loss with a stop -- is what gives this strategy its edge.

The Complete 0DTE ORB Strategy Rules

Here are the precise rules I backtested. There is no ambiguity or discretion involved. Every parameter is defined, which makes this a fully mechanical strategy that could be automated.

Opening Range Definition

The opening range is defined by the first 5 minutes of trading, from 9:30 AM to 9:35 AM Eastern Time. During those five minutes, I record the highest high and the lowest low of SPY. That range becomes the breakout zone for the day.

I tested opening ranges of 5, 10, 15, 20, 30, and 45 minutes during the parameter optimization phase. The 5-minute range was the clear winner, nearly doubling the returns compared to the commonly used 15-minute range while simultaneously reducing the max drawdown. More on that later.

Breakout Entry Signal

After the opening range is established at 9:35 AM, I watch for SPY to break above the opening range high or below the opening range low. The first breakout of the day triggers the trade:

  • Breakout above the range high: Buy an ATM 0DTE SPY call
  • Breakout below the range low: Buy an ATM 0DTE SPY put

ATM (at-the-money) means the strike price closest to the current SPY price at the time of the breakout. Since SPY has $1 strikes, ATM is simply the rounded price. If SPY is trading at $602.37 when it breaks out, I buy the $602 strike.

Only the first breakout of the day is traded. If SPY breaks above and then breaks below (or vice versa), I do not take a second trade. One trade per day, maximum.

Position Sizing

Each trade uses a flat $500 position size. The number of contracts varies depending on the option price. If the ATM call costs $1.25, I buy 4 contracts ($500 / $125 per contract). If it costs $2.50, I buy 2 contracts. This keeps the dollar risk consistent across trades regardless of where SPY is trading or how volatile the market is. The backtest assumes a $25,000 starting capital, making each trade a 2% position size.

Exit Rules

There are three ways a trade can exit:

  1. Profit target: Exit when the option price reaches +100% of the entry price (the option doubles). If I bought at $1.25, I sell at $2.50.
  2. Stop loss: Exit when the option price falls to -50% of the entry price. If I bought at $1.25, I sell at $0.63 (or the nearest available price).
  3. Time stop: Exit at 3:30 PM ET if neither the profit target nor the stop loss has been hit. This ensures all positions are closed before the final 30 minutes of trading, when 0DTE options can become extremely unpredictable.

The 2:1 reward-to-risk ratio (100% target vs 50% stop) is what makes a sub-50% win rate profitable. You do not need to be right most of the time. You just need your winners to be large enough to more than cover your losers.

Day of Week Filter

The strategy only trades on Monday, Wednesday, and Friday. During the optimization phase, I tested every possible day combination. Tuesday and Thursday consistently underperformed. When I included all five trading days, the total return dropped significantly despite having more trades. The Monday/Wednesday/Friday filter was the best risk-adjusted configuration.

Complete Rules Summary

ParameterValue
Opening Range Period5 minutes (9:30-9:35 AM ET)
Breakout DirectionFirst breakout above high or below low
InstrumentATM 0DTE SPY call or put
Position Size$500 per trade
Stop Loss-50% of entry price
Profit Target+100% of entry price (option doubles)
Time Stop3:30 PM ET
Trading DaysMonday, Wednesday, Friday only
Breakout Buffer$0.00 (trade on any breakout)
Trades Per DayMaximum 1

Backtest Results: Two Years of 0DTE SPY Trades

The backtest covers the period from February 2024 through early March 2026, approximately two full years. The strategy uses real 1-minute option bar data from Massive (formerly Polygon.io) for every single trade. No estimated prices, no theoretical models -- actual option prices minute by minute.

Here are the headline numbers on a $25,000 starting account:

Interactive Dashboard — Click the tabs below to explore equity curves, monthly returns, drawdowns, and more. Hover over charts for detailed data points.
Total Return
+59.4%
$25K → $39.9K
Net P&L
+$14,861
Feb 2024 - Mar 2026
Total Trades
303
MWF Only
Win Rate
41.3%
125W / 178L
Payoff Ratio
1.99x
Avg Win / Avg Loss
Profit Factor
1.40
Gross Win / Gross Loss
Max Drawdown
7.6%
$2,611
Avg Hold
92m
Most resolve by lunch
Exit Reasons
120
Profit Target
+$51,599
174
Stop Loss
-$37,185
9
Time Stop
+$446
Direction Analysis
CALLS
175 trades · 71 wins
Win Rate: 40.6%
+$7,455
PUTS
128 trades · 54 wins
Win Rate: 42.2%
+$7,406
MetricValue
Total Return+$14,860 (59.44%)
Ending Capital$39,860
Total Trades303
Wins125 (41.25%)
Losses178 (58.75%)
Avg Win$417.66
Avg Loss$209.82
Payoff Ratio1.99x
Profit Factor1.40
Max Drawdown$2,611 (7.60%)
Avg Hold Time92 minutes
Avg Breakout Time7.4 minutes after open

A few things stand out immediately. The win rate is 41.25%, meaning the strategy loses more often than it wins. That sounds bad until you look at the payoff ratio: winners average $417.66 while losers average $209.82. That is nearly a 2:1 ratio, which means you only need to win about 34% of the time to break even. At 41.25%, the strategy is well above breakeven.

The profit factor of 1.40 means that for every dollar lost, the strategy made $1.40. That is solid for a day trading strategy. The max drawdown of 7.60% is remarkably low for a strategy that trades 0DTE options. Most 0DTE strategies I have seen carry drawdowns of 15-30% or more.

The average breakout happens just 7.4 minutes after the opening range closes (around 9:42 AM), and the average trade lasts about 92 minutes. This is not a strategy where you are glued to the screen all day. Most trades resolve well before lunch.

How the Exits Break Down

Understanding how trades exit tells you a lot about a strategy's character. Here is the breakdown:

Exit ReasonCountWinsLossesP&L
Profit Target (+100%)1201200+$51,599
Stop Loss (-50%)1740174-$37,184
Time Stop (3:30 PM)954+$446

The math here is elegant. The 120 profit target exits generated over $51,000 in gains. The 174 stop loss exits lost about $37,000. The difference of roughly $14,400 is the strategy's edge. The 9 time stop exits were nearly a wash, contributing a small positive amount.

Notice that only 9 out of 303 trades (3%) reached the time stop at 3:30 PM. That means 97% of trades resolved through either the profit target or the stop loss well before the end of the day. The strategy is decisive -- it gets in, and it gets out.

Calls vs Puts: Direction Does Not Matter

One of the most important findings from the backtest is that both directions are equally profitable. This is exactly what you want in a directionally neutral strategy.

DirectionTradesWinsWin RateP&L
Call (Breakout Above)1757140.57%+$7,454
Put (Breakout Below)1285442.19%+$7,406

Calls generated $7,454 and puts generated $7,406 -- almost identical. There are more call trades (175 vs 128) because SPY has a natural upward bias, so it breaks above the opening range more often than below it. But the put trades actually have a slightly higher win rate (42.19% vs 40.57%).

This balance is important because it means the strategy is not dependent on the market going in one direction. It worked in the bull market of 2024, it worked during the volatility of 2025, and it is working in 2026. The edge comes from the breakout pattern itself, not from a directional bias.

Day of Week Performance

The strategy only trades on Monday, Wednesday, and Friday. Here is how each day performed:

DayTradesWinsWin RateP&L
Monday974142.27%+$5,348
Wednesday1034341.75%+$5,155
Friday1034139.81%+$4,356

All three days are profitable. Monday is the strongest performer on a per-trade basis, followed closely by Wednesday. Friday has the lowest win rate but still contributes meaningfully to the overall return. The distribution across days is balanced enough that removing any single day would hurt overall performance.

During the optimization phase, I also tested Tuesday and Thursday. Those days added 200+ additional trades but only contributed about $1,300 combined. They diluted the edge rather than adding to it. The MWF filter is not just an optimization -- it reflects a real difference in how breakouts behave on different days of the week.

Monthly and Yearly Performance

No strategy wins every month. Understanding how a strategy behaves during losing streaks is just as important as understanding its total return. Here is the yearly breakdown:

YearTradesWinsP&L
202413055+$7,389
202514957+$4,444
2026 (partial)2413+$3,027

Both full years were profitable, though 2025 was weaker than 2024. That aligns with what I have experienced across all my strategies -- 2025 was a challenging year for options traders due to the spike in volatility and unpredictable market-moving events. The fact that this strategy still made $4,444 in a difficult year is encouraging.

The 2026 partial year is off to a strong start, with $3,027 in profit through early March. That is on pace for the best annual return of the three years.

On a monthly basis, the strategy had losing months in February 2024 (-$884), September 2024 (-$158), May 2025 (-$768), June 2025 (-$9), September 2025 (-$160), and October 2025 (-$487). That is 6 losing months out of 27 -- roughly one in every four to five months. The largest monthly loss was under $900, which is well within tolerance for a strategy making $14,800+ over the full period.

The best months were November 2024 (+$2,454), August 2025 (+$2,703), and February 2026 (+$2,023). These outsized winners are what drive the strategy's profitability. The average winning month generated significantly more than the average losing month cost, which mirrors the trade-level pattern of the payoff ratio being approximately 2:1.

Why a 5-Minute Opening Range Beats Everything Else

This is the section I am most excited to share because it goes against every instinct you have as a trader. When I sat down to optimize this strategy, I tested 105 different parameter configurations across eight dimensions. The full optimization story was covered in my previous post, but here are the key findings with additional detail.

The 5-Minute Opening Range Is Far Superior

Most traders use a 15-minute or 30-minute opening range for ORB strategies. I tested 5, 10, 15, 20, 30, and 45 minutes. The results were not even close:

ORB MinutesP&LReturnMax Drawdown
5 min$13,79255.2%7.6%
10 min$9,41537.7%9.2%
15 min$7,31229.2%10.8%
20 min$6,10524.4%11.5%
30 min$4,22116.9%12.1%
45 min$2,84711.4%13.0%

The 5-minute ORB nearly doubled the returns of the 15-minute version while cutting the max drawdown almost in half. The relationship is remarkably linear: the shorter the opening range, the better the performance. Why? Because a shorter range means tighter breakout levels, which means you catch moves earlier. With 0DTE options, catching a move 5 minutes earlier can make the difference between a winner and a loser thanks to the extreme time decay that occurs throughout the day.

The Stacking Trap

Each individual parameter I tested in isolation showed improvement over the baseline. A 40% stop loss was better than the 50% stop loss. A $0.20 breakout buffer filtered out some false breakouts. A 2:00 PM time stop captured more profit. Naturally, I combined all the "best" individual parameters together, expecting to find the ultimate configuration.

Instead, performance got worse with every parameter I stacked:

ConfigurationP&LReturnDrawdown
5m ORB + MWF (simple)$13,79255.2%7.6%
5m + tighter stop + MWF$11,41945.7%10.7%
5m + tighter stop + buffer + MWF$7,59330.4%11.7%
All "best" params combined$5,71022.8%12.1%

The "kitchen sink" configuration performed worse than the original 15-minute baseline. This is the classic overfitting trap that every backtester needs to understand. When you optimize multiple parameters simultaneously, you are not finding a robust strategy. You are curve-fitting to historical noise. Each filter carves away a different set of trades, and when you combine them all, you are left with a tiny cherry-picked subset that happened to work in hindsight but has no forward-looking edge.

The lesson: if you cannot explain why a parameter improves the strategy on a fundamental level, do not use it. The 5-minute ORB has a clear reason for working (catch breakouts earlier, less time for theta decay). The MWF filter has a plausible explanation (different market structure on different days). But a 40% stop loss vs 50%? That is noise. A $0.20 breakout buffer? Noise. Trust the simple version.

How the Backtest Was Built

For those interested in the technical details, the backtest was built in Go and uses real 1-minute option bar data for every single trade. This is critical. Many options backtests use estimated option prices derived from Black-Scholes or similar models. Those estimates can be wildly inaccurate for 0DTE options where gamma effects dominate. By using actual traded prices, the results are as close to reality as a backtest can get.

A few important design decisions in the backtest:

  • Real option prices: Every trade entry and exit uses actual 1-minute option bar data from Massive. No theoretical pricing.
  • Conservative same-bar handling: If both the stop loss and profit target could have been hit within the same 1-minute bar, the backtest takes the loss. This avoids optimistic bias.
  • Mid-price fills: Entries and exits use the close price of the 1-minute bar, which approximates mid-price execution. Actual fills would vary based on bid/ask spread.
  • No lookahead bias: The strategy only uses data available at the time of the decision. The opening range is calculated from completed bars only, and breakout detection happens in real time.

The entire codebase -- roughly 4,000 lines of Go including the backtester, parameter sweep tool, and unit tests -- was built with the assistance of Claude Code as described in the original post.

Important Caveats and Limitations

I believe in full transparency, so here is everything that could make these results look better than what you would experience trading this strategy live:

  • No bid/ask spread: The backtest uses close prices (approximately mid-price). In live trading, you would pay the spread on entry and exit. For 0DTE SPY options, the spread is typically $0.02-0.05 per contract, but it can widen significantly in the first few minutes of the session when this strategy is entering trades. This could reduce returns by 10-20%.
  • No commissions: Most brokers charge per-contract commissions that would reduce net returns.
  • No slippage: In fast-moving markets, you may not get filled at the expected price. The conservative same-bar handling partially compensates for this.
  • Two-year sample: While 303 trades is a reasonable sample size, the strategy has only been tested across two years of market history (Feb 2024 - Mar 2026). Longer testing periods would increase confidence. SPY daily 0DTE options only became available in mid-2023, which limits how far back we can test.
  • Past performance: As I always say on this website, past performance does not guarantee future results. Market conditions change, and strategies that worked historically can stop working.

How I Plan to Trade This Strategy Going Forward

I am currently in the forward-testing phase. I am running the strategy in paper trading to see if the backtest results hold up in real-time market conditions. The first few weeks of paper trading have been consistent with the backtest -- roughly 40% win rate with the expected payoff ratio.

If forward testing continues to validate the backtest, I plan to allocate a small portion of capital to this strategy and document the results on this website, just like I do with my wheel strategy and other approaches. Full transparency, real money, real results.

The beauty of this strategy is that it requires minimal time commitment. You check in at 9:30 AM ET, wait for the breakout (which typically happens within 7-8 minutes), enter the trade, set your stop and target, and walk away. Most trades resolve within 90 minutes. You do not need to watch the screen all day.

Key Takeaways for Options Traders

Whether you decide to trade this specific strategy or not, there are several lessons from this research that apply broadly to options trading:

  1. Asymmetric payoff ratios can overcome low win rates. You do not need to be right 60-70% of the time to be profitable. A 2:1 payoff ratio means you only need to win about 34% of the time to break even. This strategy wins 41% of the time with a 2:1 ratio, generating consistent returns.
  2. Simpler strategies tend to be more robust. The most optimized version of this strategy performed worse than the simplest version. Every additional parameter you add is an opportunity to overfit. If you cannot articulate a fundamental reason for a filter, leave it out.
  3. Day of week matters for 0DTE strategies. Not all trading days are created equal. The MWF filter is not just an optimization trick -- it reflects real differences in market microstructure and how breakouts behave on different days.
  4. Backtesting with real option prices is essential. Theoretical pricing models break down for 0DTE options. If you are backtesting a 0DTE strategy with Black-Scholes estimates, your results are likely unreliable. Use actual traded prices whenever possible.
  5. Drawdown management is as important as returns. A 59% return with a 7.6% max drawdown is a very different animal than a 59% return with a 30% max drawdown. The low drawdown makes this strategy psychologically tradeable, which matters more than most people think.

If you found this analysis useful, you might also enjoy my posts on backtesting options strategies, day trading SPY, or the wheel strategy. I share all my trading ideas and results right here on this website.

Ready to Master Options Trading?

Join thousands of traders who've transformed their approach with our comprehensive course.

Proven strategies that work
Step-by-step guidance
Real trading examples
Start Learning Today

30-day money-back guarantee

Related Topics: 0DTE Options Strategy, Opening Range Breakout, SPY Options Trading, Backtesting Options, Zero DTE Options, Day Trading Options, 0DTE Backtest Results, Options Risk Management, ORB Strategy, Intraday Options Trading

Like what you read? Please Share!