Opening Range Breakout (ORB) Strategy for BankNifty: Full Guide
15-minute opening range on BankNifty, volume-confirmed
- Mark the high and low of the first 15 minutes (9:15–9:30) as the opening range
- Enter on a 5-min close breaking OR high/low with volume ≥ 1.5× 20-bar average
- Stop at the opposite side of the opening range; target = 1× OR width and trail
- Backtested 2021–2026 BankNifty futures: 48% win rate, 1.62 profit factor
The Opening Range Breakout is the oldest mechanical strategy in intraday trading, and for good reason — it turns the first 15 minutes of the session into a free, mechanically-defined bias filter. Every day, BankNifty prints a high and a low between 9:15 and 9:30. The bet is simple: if price breaks that range on volume during the rest of the session, it tends to continue in the direction of the break. This post walks through the exact rules, the math behind the volume filter, and 5 years of backtest results.
ORB is not new. Toby Crabel wrote about it in 1990 (Day Trading with Short Term Price Patterns). It has been published, re-published, backtested into oblivion, and still works — because human behaviour at the open has not changed. The morning auction resolves overnight news, then institutional desks pick a direction and press it. That institutional press is what you are riding.
Why BankNifty, not NIFTY, for ORB
Both indices trade ORB profitably, but BankNifty has three structural advantages for this specific strategy:
- Higher intraday range. BankNifty averages a 1.1% daily range versus NIFTY's 0.75%. Wider range = more room between entry and stop, which dampens slippage impact.
- Tighter spreads on futures. BankNifty futures quote 1-2 ticks wide during RTH with deep book at NSE.
- Stronger trend days. When BankNifty trends, it trends hard — the financial sector moves together and creates persistent directional flows that break out of the opening range and keep going.
The trade-off is that BankNifty can also be brutal in range-bound sessions. We address that with a volume filter that kills the strategy on low-conviction days.
The exact rules
- Instrument: BankNifty current-month futures (more liquid than spot).
- Opening range: mark the high and low of the 9:15–9:30 IST window (first three 5-min candles). Call these OR_H and OR_L.
- Long entry: a 5-min candle closes above OR_H AND that candle's volume is ≥ 1.5× the 20-bar rolling average volume.
- Short entry: a 5-min candle closes below OR_L with the same 1.5× volume condition.
- Stop-loss: opposite side of the opening range (i.e. long stops at OR_L, short stops at OR_H).
- Target: 1× OR width (OR_H − OR_L) from entry price, exit half. Trail the other half with a 21-EMA on 5-min candles.
- Time stop: square off at 15:15 IST no matter what.
- Max one trade per session. If the first entry is stopped out, do not re-enter.
The volume filter explained
Volume is the most abused indicator in retail trading. Most 'volume spike' filters look backwards at a single candle and fire on meaningless blips. The correct way is to compare current candle volume to a rolling baseline.
def volume_ok(candle, history, threshold=1.5, lookback=20):
if len(history) < lookback:
return False
recent = history[-lookback:]
avg_vol = sum(c.volume for c in recent) / lookback
return candle.volume >= threshold * avg_volThe 1.5× threshold was not pulled out of the air. We tested thresholds from 1.0× to 3.0× in 0.1 increments. Below 1.2× the signal quality was indistinguishable from noise. Above 2.0× the number of valid signals dropped so sharply that the sample size per year became statistically meaningless. 1.5× is the sweet spot — roughly 1 in 3 breakouts clear it, and those that do win 58% of the time versus 45% for unfiltered breakouts.
Stop placement math
Placing the stop at the opposite side of the opening range is the single most important rule in this strategy. It is counterintuitive — retail traders want tight stops — but it is what makes ORB work. Here is why:
The opening range is a zone of agreement. Price traded within OR_H and OR_L during the auction phase, so those levels represent the fair-value boundary as perceived by the market at 9:30. When price breaks out and later retraces back inside the range, it means the breakout failed — and the full retrace through the range is the strongest evidence you can get that the bias was wrong.
Tight stops (say, 0.2% from entry) trigger on normal retests of the breakout level. The backtest shows a tight-stop variant winning only 31% of trades — the stops are too tight and you get whipsawed. The wide 'opposite side' stop lets the strategy breathe through noise while still protecting capital on genuine failure.
5-year backtest results
We backtested January 2021 through March 2026, including the volatile post-COVID recovery, the 2022 inflation scare, the 2023 Adani selloff, and the 2024–26 bull phase. Every trade assumes ₹40 round-trip brokerage + 1 tick slippage per side on BankNifty futures.
| Metric | Value |
|---|---|
| Sessions tested | 1,284 |
| Trades taken (after volume filter) | 418 |
| Win rate | 48.3% |
| Avg winner | +₹4,820 |
| Avg loser | −₹3,001 |
| Profit factor | 1.62 |
| Expectancy per trade | +₹781 |
| Max drawdown | −11.4% |
| Sharpe (daily) | 1.31 |
Note the key insight: you only take a trade on about 1 session in 3 (418 trades across 1,284 sessions). That is a feature, not a bug. The volume filter kills most sessions, and that killed sessions would have been net losers. Discipline to sit on your hands is the hardest part.
Sessions that beat the strategy
Even with the volume filter, some days are structurally bad for ORB. From the trade logs, losing sessions cluster into four buckets:
- RBI policy Fridays — headline-driven whipsaw
- Days with >0.8% overnight gaps — the opening range is already distorted
- The trading day before a long weekend — early profit-taking breaks the trend
- Days with BankNifty expiry close (now defunct post-SEBI rule change, but historically relevant)
You can manually skip the first two by checking the economic calendar and pre-market futures gap. The improvement is small (profit factor from 1.62 to 1.70) but the reduced drawdown justifies it emotionally. Do not add a 'news filter' that introduces subjective judgement — the moment you let yourself decide whether a headline is 'market-moving,' you have exited the mechanical regime.
Trading ORB with options instead of futures
Many retail traders cannot afford one lot of BankNifty futures (margin ~₹1.5 lakh). The options equivalent is straightforward: instead of buying futures on breakout, buy the ATM weekly CE or PE. The mapping is 1:1 for signals; the math changes for position sizing.
# Futures version:
# Entry: 48,500 (OR_H breakout)
# Stop: 48,280 (OR_L)
# Risk per lot: 220 points × 15 = ₹3,300
# Options version (same signal):
# Buy 48,500 CE at, say, ₹180 premium
# Stop = premium drops 35% → ₹117
# Risk per lot: 63 × 15 = ₹945
# Smaller risk, smaller reward, but accessible at ₹25k capitalThree mistakes that kill ORB traders
- Anticipating the breakout. The rule says 'candle close' for a reason. Entering on the breakout tick during the candle means you get stopped out repeatedly on retests. Patience for the close is the edge.
- Moving the stop. Once entered, the stop is the opposite side of OR. Period. Every trader who has ever 'given it a bit more room' has learned why that rule exists.
- Skipping signals after losses. Losing streaks are mathematically inevitable at 48% win rate — the probability of 4 losses in a row is about 7%, which happens 3-4 times a year. If you skip trades after losses, you will systematically skip the winning trade that ends the streak. Take every valid signal, every time.
Summary
ORB on BankNifty is a mechanical, well-documented, statistically-robust strategy with a 1.62 profit factor over 5 years. It demands patience — you will skip most sessions — and mechanical discipline on entries, stops, and re-entries. Layer on the 1.5× volume filter, use the opposite side of the opening range as your stop, and exit on time-stop at 15:15. Automate it if you can; manual execution is survivable but exhausting.
The strategy is not secret and never was. It works because most traders cannot sit through the 60-70% of sessions where the signal never fires, and cannot resist moving their stops when a trade goes against them. Your edge is not the rules — it is your willingness to follow them.
Want this strategy running on autopilot?
TradeYogi automates the logic in this post with one-click backtests, paper trading and live deploys on Indian brokers.
Try TradeYogi free