QuantsappFaster in the app: live data, alerts, tradingOpen
Log inStart free
Open Backtesting →
Option buyingIntradayNIFTYmedium complexity

Squeeze break EMA-stack buy

This intraday option-buying system waits for NIFTY's 5-minute Bollinger Bands to tighten into a squeeze, then buys the at-the-money call or put when a bar breaks out of the bands with the trend, momentum and volume all agreeing. Exits are set on the index itself, using fractions of the average 5-minute range, so each trade aims for a quick, small move.
Buys the at-the-money NIFTY call or put when a 5-minute bar breaks out of tight Bollinger Bands with trend, RSI and volume agreeing, and exits on small index moves.
Market viewEither direction (follows the move)
TradesNIFTY weekly ATM options, bought, 1 leg
RiskLimited to the premium paid
CapitalPremium only
SuitsIntermediate
Trades a month44.6
Typical hold0 min
Profitable months3 of 12
Longest losing run22 trades
Made money inTrend days (smallest loss, still not a profit)Calm evenings with VIX below 11.5 (small loss)
Lost money inChoppy days that close mid-rangeEvenings when India VIX closed above 14.5Entries during a 20-day downtrend
Default settings
Symbol
Bb len
Bb std
Squeeze %
Squeeze bars
Squeeze recent
RSI call lo
RSI call hi
RSI put lo
RSI put hi
Vol bars
Tgt ATR
SL ATR
Entry from
Last entry
Exit time
Max trades
Lots
Backtest this strategy →Change any setting, pick your own period and run it in the Quantsapp web app. Backtesting is part of the Max plan. Pro+ members can use it now as a free trial.
1

How it trades

What it trades
Universe
NIFTY Intraday · 1 Oct 25 → 30 Sep 26
Enters
5-min squeeze breakout with stacked EMAs, RSI band and volume, 09:30–14:45
Legs
BUY CE · ATM (about 0.5 delta) · Nearest weekly · 1 lotBUY PE · ATM (about 0.5 delta) · Nearest weekly · 1 lot
Exits
target future moves 0.5 ATR(14) in favourstop future moves 0.25 ATR(14) againsttime 15:15 square-off
Re-entry
Next signal after an exit, up to 3 trades a day
Bars
5-minute OHLC bars of the rolled near-month future, anchored at 09:15, continuous across sessions; bar volume from the future's traded quantity. Bollinger Bands (BB_LEN, BB_STD), bandwidth = (upper - lower) / middle; EMA 9, 20, 50; RSI(14) and ATR(14) (Wilder) of the 5-minute bars.
Squeeze
a bar whose bandwidth is below the SQUEEZE_PCT percentile of the SQUEEZE_BARS bars ending at it; it must have happened within the SQUEEZE_RECENT bars before the signal bar.
Call
the bar's high breaks the PRIOR bar's upper band, its open is at or above the prior middle band, EMA 9 > EMA 20 > EMA 50, RSI_CALL_LO <= RSI <= RSI_CALL_HI, and its volume beats the average of the VOL_BARS bars before it.
Put
the mirror - low below the prior lower band, open at or below the prior middle, EMA 9 < 20 < 50, RSI_PUT_LO <= RSI <= RSI_PUT_HI, volume up.
Entry
buy LOTS of the ATM call / put of the nearest expiry at the signal bar's close, between ENTRY_FROM and LAST_ENTRY. One trade at a time, at most MAX_TRADES a session (re-entry allowed).
Target
the future moves TGT_ATR x ATR(14) in favour from its price at entry.
Stop
the future moves SL_ATR x ATR(14) against.
Exit
anything open at EXIT_TIME.
2

Results

PRE-BUILT · DEFAULTS
NIFTY · 2025-10-01 → 2026-09-30 · 535 trades · before costs
Net P&L−₹17,134
Win rate37%
Max drawdown−₹17,771
Avg per trade−₹32
Profit factor0.77
Worst trade−₹764
3

Where it made and lost money

No market condition was profitable in this test, so the evidence shows where it lost least. Trend days cost only ₹1,449 over 159 trades, because a breakout that kept going could reach the 0.5 ATR target before the 0.25 ATR stop. Choppy days were the worst at −₹9,725 over 120 trades with a 29% win rate: the breakout bar reversed and the very tight stop was hit within minutes. Days after India VIX closed above 14.5 lost ₹9,893, as bigger bars made the stop easier to reach. Entries during a 20-day downtrend lost ₹11,915, against ₹4,650 in an uptrend.

How the entry day opened
Gap up of 0.4% or more−₹1,99675 trades37% won
Flat open−₹10,647378 trades37% won
Gap down of 0.4% or more−₹3,92377 trades39% won
Kind of session on the entry day
Quiet session (range under 0.75%)−₹5,392251 trades40% won
Trend day (closed near the high or low)−₹1,449159 trades40% won
Choppy day (wide range, closed mid-range)−₹9,725120 trades29% won
India VIX the evening before
VIX below 11.5 (calm)−₹1,772149 trades41% won
VIX 11.5-14.5 (normal)−₹4,900239 trades37% won
VIX above 14.5 (nervous)−₹9,893142 trades35% won
Expiry day (NIFTY weekly)
Expiry day−₹4,448111 trades42% won
Other days−₹12,118419 trades36% won
Trend going in
Uptrend (NIFTY above its 20-day average)−₹4,650268 trades40% won
Downtrend (NIFTY below its 20-day average)−₹11,915262 trades35% won
Day of the week
Monday−₹4,227107 trades36% won
Tuesday−₹3,281103 trades44% won
Wednesday−₹1,444103 trades41% won
Thursday−₹258100 trades36% won
Friday−₹7,355117 trades32% won
Session direction on the entry day
NIFTY closed above its open−₹10,404282 trades36% won
NIFTY closed below its open−₹6,162248 trades39% won
The same trades, split by the market conditions around each entry, before costs.
4

About this strategy

  1. Build 5-minute bars from the NIFTY near-month future and compute 20-bar Bollinger Bands, the 9, 20 and 50 EMAs, a 14-bar RSI and a 14-bar ATR.
  2. Mark a squeeze when band width is in the lowest 30% of the last 40 bars; the signal bar must come within 4 bars of one.
  3. Call signal: the bar's high breaks the previous bar's upper band, it opens at or above the previous middle band, EMA 9 is above 20 is above 50, RSI is between 54 and 75, and volume beats its 20-bar average.
  4. Put signal: the mirror image, with a break of the lower band, falling EMAs and RSI between 25 and 46.
  5. Between 09:30 and 14:45, buy one lot of the ATM option of the nearest expiry at the signal bar's close; one trade at a time, at most three a day.
  6. Exit when the future moves 0.5 ATR in the trade's favour (target) or 0.25 ATR against it (stop), or at 15:15.

Why traders use it

Low volatility tends to be followed by high volatility, and a Bollinger squeeze is a common way to spot the quiet stretch before a burst. Option buyers like the idea because a breakout after compression can move premiums quickly. Adding stacked EMAs, an RSI band and a volume check is meant to filter out false breaks and keep trades aligned with the prevailing intraday trend.

Works best whenNo condition made money in this test. Losses were smallest on trend days, where a breakout from a squeeze kept going long enough to reach the target, and after calm evenings with India VIX below 11.5.
Struggles whenChoppy days that closed mid-range, where breakouts reversed and only 29% of trades won, and days after India VIX closed above 14.5, when bigger bars hit the tight stop. Entries during a 20-day downtrend lost more than those in an uptrend.

The year in plain words

On NIFTY from 1 Oct 2025 to 30 Sep 2026 with default settings, the system made 535 trades and won 37% of them, losing ₹17,134 before costs with a profit factor of 0.77. Average wins (₹295) were only modestly larger than average losses (₹231), not enough to make up for 386 stop exits against 149 targets. March (−₹6,826) and April (−₹5,723) did the most damage, and only three months were positive. After ₹20 per order and bid-ask slippage the loss widens to ₹45,199. In this period the filters did not turn squeeze breakouts into an edge.

What the settings do

Bb lenHow many 5-minute bars the Bollinger Bands are averaged over. Shorter bands react faster and squeeze more often.Bb stdHow many standard deviations the bands sit from the middle. Wider bands mean fewer, larger breakouts.Squeeze %How narrow the bands must be, as a percentile of recent band widths, to count as a squeeze. Lower values demand tighter compression and give fewer signals.Squeeze barsHow many recent bars the squeeze percentile is measured against.Squeeze recentHow many bars before the breakout the squeeze may have occurred. Smaller numbers insist the breakout follows the squeeze closely.RSI call loThe lowest RSI at which a call breakout is accepted; raising it demands stronger upward momentum.RSI call hiThe highest RSI for a call breakout, to avoid buying when the move already looks stretched.RSI put loThe lowest RSI for a put breakout, to avoid buying puts after an extreme fall.RSI put hiThe highest RSI at which a put breakout is accepted; lowering it demands stronger downward momentum.Vol barsHow many earlier bars the breakout bar's volume is compared with.Tgt ATRThe profit target, as a multiple of the 5-minute ATR measured on the future. Bigger targets are hit less often.SL ATRThe stop, as a multiple of the 5-minute ATR. The default 0.25 is only a handful of NIFTY points and sits inside normal bar-to-bar noise.Entry fromThe earliest time a signal can be traded, skipping the opening bars.Last entryThe latest time a new trade may be opened.Exit timeWhen any open option is sold for the day.Max tradesThe most trades allowed in one session.

Risks

  • A stop of 0.25 ATR on 5-minute bars is so tight that ordinary noise triggers it often.
  • Exits are judged on the index while P&L comes from the option, so time decay and spreads can make a target hit smaller than expected.
  • Several filters must all agree, which can fit past data well and still fail on new data.
  • Up to three trades a day in a single direction can stack losses on a whipsaw day.

Who it suits

Intraday option buyers who want a strict, indicator-driven entry and small defined exits, and who are comfortable with a low win rate. Risk per trade is limited to the premium paid.

5

Questions traders ask

What is a Bollinger Band squeeze?

A squeeze is a stretch when the bands narrow because price has been moving in a tight range. Traders watch for it because quiet periods are often followed by a sharp move. Here a squeeze is defined as band width in the lowest 30% of the last 40 five-minute bars.

Is the Bollinger squeeze option buying strategy profitable?

Not in this test. On NIFTY from 1 Oct 2025 to 30 Sep 2026 it lost ₹17,134 before costs and ₹45,199 after ₹20 per order and bid-ask slippage (statutory charges not included). Different settings may behave differently, and past results do not guarantee future ones.

Why are the target and stop measured on the index and not the option?

Measuring on the NIFTY future ties the exit to the price move the signal predicted. The trade's actual P&L still comes from the option, so decay and the bid-ask spread mean the option's gain on a target can be smaller than the index move suggests.

What do the stacked EMAs add?

Requiring EMA 9 above 20 above 50 for calls, or the reverse for puts, means a breakout is only taken in the direction the short-term trend already points. It filters out breaks against the trend, at the cost of fewer trades.

6

Before you rely on it

ADAPTED FOR TODAY'S NSE RULESNIFTY nearest weekly, sized in lots (the source hard-coded lot 50/25). VWAP / volume need traded quantity, so the signal runs on the near-month future. 15:15 is well before the 15:40 close.
WATCH OUT0.25 ATR(14) of 5-minute bars is ~10-15 NIFTY points - inside the noise of one bar. Fills at LTP, no costs.
WHERE THE RULES WERE UNCLEAR · OUR CHOICESThe source simulates the option with a fixed 0.55 delta and fills at the prior band level; here real option prices, filled at the signal bar's close (the source's fill is look-ahead-optimistic). Bar size and ATR timeframe are not given: the spec's 5-minute bars and 5-minute ATR(14). The source's document also mentions "price above VWAP", which its code does not use - not used here either.
Also known asConfluence Gamma Scalper
Backtests run on historical NSE data with fills at the last traded price. "Before costs" excludes brokerage, taxes and slippage. Quantsapp is not recommending any strategy; it is just a backtesting utility. Past results are not a promise of future returns.

Log in or sign up

Enter your mobile number. New to Quantsapp? The same OTP creates your free account.

+91

By continuing you agree to the Terms of Use and Privacy Policy.