DEV Community

shakti tiwari
shakti tiwari

Posted on

Bollinger Bands Mean Reversion Nifty: Complete Strategy Guide for Indian Option Traders

Shakti Tiwari Nifty/AI trading visual UNSPLASH_HERO_V1

Bollinger Bands Mean Reversion Nifty: Complete Strategy Guide for Indian Option Traders

Bollinger Bands mean reversion Nifty strategy ek aisa technique hai jo Indian index traders ke liye bahut popular hai. Agar aap Nifty 50 ya Nifty Bank mein option trading karte ho, toh Bollinger Bands aapko batata hai ki price "overstretched" hai ya nahi. Is article mein hum detail mein dekhenge ki Bollinger Bands kaise kaam karta hai, mean reversion kaise identify karte hain, squeeze kya hai, %B indicator kaise use karte hain, aur Nifty options mein isko kaise apply karte hain. Saath hi hum Python code bhi denge taki aap khud backtest kar sako.

What Are Bollinger Bands? (Bollinger Bands Kya Hain?)

Bollinger Bands ko John Bollinger ne 1980s mein banaya tha. Yeh three lines se bana hota hai:

  1. Middle Band (MB): 20-period simple moving average (SMA).
  2. Upper Band (UB): Middle band + 2 standard deviations.
  3. Lower Band (LB): Middle band - 2 standard deviations.

Jab market volatile hota hai, bands widen ho jate hain. Jab market calm hota hai, bands contract ho jate hain. Yeh property hi mean reversion trading ka backbone hai.

Bollinger Bands Formula (Math Behind the Bands)

Middle Band:

MB = SMA(close, period) = (close_1 + close_2 + ... + close_n) / n
Enter fullscreen mode Exit fullscreen mode

Standard Deviation:

SD = sqrt( (1/n) * Σ (close_i - MB)^2 )
Enter fullscreen mode Exit fullscreen mode

Upper Band:

UB = MB + (k * SD)
Enter fullscreen mode Exit fullscreen mode

Lower Band:

LB = MB - (k * SD)
Enter fullscreen mode Exit fullscreen mode

Yahan period normally 20 hota hai aur k (multiplier) normally 2 hota hai. Nifty futures aur Nifty options chain analysis ke liye yeh default settings kaafi achha kaam karti hain.

Mean Reversion Concept (Mean Reversion Kya Hai?)

Mean reversion ka matlab simple hai: price jyada door chalta hai toh wapas apne average (mean) par aata hai. Bollinger Bands mean reversion Nifty setup mein hum assume karte hain ki Nifty 50 ka price upper band ke paas pahunchne par thoda neeche aayega aur lower band ke paas aane par thoda upar jayega.

Lekin dhyan rakhein: trending markets mein mean reversion fail ho sakta hai. Isliye hum confirmation ke liye RSI, volume, aur price action dekhte hain.

Why Nifty Is Good for Mean Reversion

Nifty 50 ek basket of 50 large-cap stocks hai. Index mein single stock ka dramatic move normally absorb ho jata hai, toh index mean-reverting behaviour dikhata hai especially in range-bound expiry weeks. Thursday expiry (weekly options) ke aas-paas bahut saare traders mean reversion play karte hain.

The Squeeze (Bollinger Squeeze Kya Hai?)

Bollinger Squeeze tab aata hai jab Upper aur Lower band bahut close aa jate hain — matlab volatility bahut kam ho gayi. Squeeze ek "coiled spring" ki tarah hai: jab bands tighten hote hain, ek bada move aa sakta hai.

Squeeze identify karne ka formula:

Bandwidth = (UB - LB) / MB
Enter fullscreen mode Exit fullscreen mode

Agar bandwidth apne recent low par hai, toh squeeze active hai. Squeeze breakout directional ho sakta hai (up ya down), isliye squeeze akele trade signal nahi deta — hum wait karte hain breakout ke liye.

Squeeze + Mean Reversion Combo

Kai baar squeeze ke baad price ek band ko touch karta hai aur wapas aata hai. Isko "squeeze release reversion" kehte hain. Nifty option sellers isko pasand karte hain kyunki premium decay (theta) unke favour mein hota hai jab price range mein reverting rahe.

The %B Indicator (%B Kya Hai Aur Kaise Use Karein?)

%B bolata hai ki current price bands ke beech kahan hai. Formula:

%B = (close - LB) / (UB - LB)
Enter fullscreen mode Exit fullscreen mode

Interpretation:

  • %B = 0: Price exactly at Lower Band.
  • %B = 0.5: Price exactly at Middle Band.
  • %B = 1: Price exactly at Upper Band.
  • %B > 1: Price above Upper Band (overbought zone).
  • %B < 0: Price below Lower Band (oversold zone).

Mean reversion traders %B > 1 par short signal aur %B < 0 par long signal dhoondhte hain, lekin stop loss tight rakhna zaroori hai trending days mein.

%B Trading Rules for Nifty

  1. Jab %B > 1.0 aur RSI > 70, tab Nifty call option sell ya put buy soch sakte hain (reversion down).
  2. Jab %B < 0 aur RSI < 30, tab Nifty put option sell ya call buy soch sakte hain (reversion up).
  3. Squeeze + %B extreme = high probability setup.

Python Implementation (Bollinger Bands Python Code)

Niche diya gaya Python code Nifty daily data par Bollinger Bands, %B, aur squeeze calculate karta hai. Aap yfinance ya apna CSV use kar sakte hain.

import pandas as pd
import numpy as np
import yfinance as yf
import matplotlib.pyplot as plt

# Nifty 50 data download (use ^NSEI or your broker CSV)
def load_nifty():
    df = yf.download("^NSEI", start="2023-01-01", end="2024-12-31", interval="1d")
    df = df[['Close']].copy()
    df.columns = ['close']
    return df

def bollinger_bands(df, period=20, mult=2):
    df['mb'] = df['close'].rolling(period).mean()
    df['sd'] = df['close'].rolling(period).std()
    df['ub'] = df['mb'] + (mult * df['sd'])
    df['lb'] = df['mb'] - (mult * df['sd'])
    # %B
    df['pct_b'] = (df['close'] - df['lb']) / (df['ub'] - df['lb'])
    # Bandwidth / Squeeze
    df['bandwidth'] = (df['ub'] - df['lb']) / df['mb']
    return df

def mean_reversion_signal(df):
    # Signal: -1 short when %B > 1, +1 long when %B < 0
    df['signal'] = 0
    df.loc[df['pct_b'] > 1.0, 'signal'] = -1
    df.loc[df['pct_b'] < 0.0, 'signal'] = 1
    return df

df = load_nifty()
df = bollinger_bands(df)
df = mean_reversion_signal(df)

print(df.tail(10)[['close','mb','ub','lb','pct_b','bandwidth','signal']])

# Plot
plt.figure(figsize=(12,6))
plt.plot(df.index, df['close'], label='Nifty Close', color='black')
plt.plot(df.index, df['ub'], label='Upper Band', color='red', linestyle='--')
plt.plot(df.index, df['mb'], label='Middle Band', color='blue')
plt.plot(df.index, df['lb'], label='Lower Band', color='green', linestyle='--')
plt.title('Bollinger Bands Mean Reversion Nifty')
plt.legend()
plt.show()
Enter fullscreen mode Exit fullscreen mode

Yeh code aapko bands, %B, bandwidth, aur basic signals de dega. Backtest ke liye aap signal column par P&L calculate kar sakte hain.

Installing Dependencies (Commands)

macOS / Linux:

python3 -m pip install pandas numpy yfinance matplotlib
Enter fullscreen mode Exit fullscreen mode

Windows (CMD/PowerShell):

python -m pip install pandas numpy yfinance matplotlib
Enter fullscreen mode Exit fullscreen mode

Termux (Android):

pkg update && pkg install python
pip install pandas numpy yfinance matplotlib
Enter fullscreen mode Exit fullscreen mode

Applying Bollinger Bands to Nifty Options

Bollinger Bands directly index price par lagte hain, lekin option traders isko underlying (Nifty spot/future) par dekhte hain aur phir option strike choose karte hain.

Strategy A: Short Strangles During Squeeze

Jab squeeze active ho aur expiry close ho, option sellers short strangle bech sakte hain (OTM call + OTM put). Agar price bands ke beech reverting rahe, dono options decay ho jate hain aur profit aata hai.

Strategy B: Directional Reversion with Options

Jab %B > 1 (overbought), aap Nifty put buy kar sakte hain small quantity mein with strict stop. Jab %B < 0, call buy. Option leverage ki wajah se risk manage karna zaroori hai — sirf premium risk karein.

Strategy C: Iron Condor in Range

Squeeze + low bandwidth = range confirmation. Iron condor (sell OTM call spread + sell OTM put spread) classic mean reversion option play hai. Theta aapke favour mein hoti hai.

Risk Management for Nifty Option Traders

  1. Stop Loss: Kabhi bhi naked option without stop na rakhein. Bollinger reversion trending day mein galat ho sakta hai.
  2. Position Size: Sirf 2-3% capital per trade risk karein.
  3. Expiry Awareness: Thursday weekly expiry mein gamma risk high hai.
  4. Volume Check: Low volume par bands fake signals de sakte hain.

Backtesting Bollinger Mean Reversion on Nifty

Backtest karne ke liye historical Nifty data chahiye. Aap NSE website se download kar sakte hain ya broker API use kar sakte hain. Niche ek simple backtest loop hai:

def backtest(df):
    df['returns'] = df['close'].pct_change()
    df['strat_ret'] = df['signal'].shift(1) * df['returns']
    df['equity'] = (1 + df['strat_ret']).cumprod()
    total_return = df['equity'].iloc[-1] - 1
    win_rate = (df['strat_ret'] > 0).mean()
    print(f"Total Return: {total_return:.2%}")
    print(f"Win Rate: {win_rate:.2%}")
    return df

backtest(df)
Enter fullscreen mode Exit fullscreen mode

Isse aap dekh sakte hain ki simple mean reversion Nifty par kitna perform karta hai. Real results vary karte hain market regime ke hisaab se.

Common Mistakes (Galtiyan Jo Traders Karte Hain)

  • Squeeze ko breakout samajhna: Squeeze sirf volatility contraction batata hai, direction nahi.
  • Over-trading: Har %B extreme par trade na karein; context dekhein.
  • Ignoring trend: Strong trending day mein reversion fail hota hai.
  • No stop loss: Options mein leverage deadly ho sakta hai bina stop ke.

Combining Bollinger with Other Indicators

Bollinger Bands ko aur powerful banane ke liye inko combine karein:

  • RSI: Confirm overbought/oversold.
  • Volume: Confirm breakout strength.
  • VWAP: Intraday mean reversion ke liye VWAP + Bollinger zabardast combo hai.
  • MACD: Trend filter lagayein taaki reversion sirf sideways market mein lein.

Intraday Bollinger Setup for Nifty Futures

Intraday traders 5-minute ya 15-minute chart par Bollinger use karte hain. Settings: period 20, multiplier 2. Open range breakout + Bollinger band rejection combine karke bahut saare scalpers kaam karte hain.

Live Trading Example (Ek Real Setup Samjhein)

Maan lijiye Thursday hai aur Nifty spot 22400 par hai. Daily Bollinger bands: MB = 22300, UB = 22520, LB = 22080. Bandwidth pichle 30 din ka low hai — matlab squeeze active. Subah 9:15 baje Nifty gap-up karta hai 22580 par aur %B 1.05 ho jata hai. RSI 72 hai.

Is setup mein mean reversion trader short strangle bechta hai: 22700 CE sell + 21900 PE sell. Kyunki squeeze + overbought %B, probability high hai ki price bands ke beech wapas aayega. Expiry tak agar Nifty 22100-22500 range mein raha, dono options zero ho jate hain aur profit book hota hai. Risk tab aata hai jab Nifty 22600+ break kare — tab Call stop lagana padta hai.

Yeh example batata hai ki Bollinger bands, %B, aur squeeze milke kaisa high-probability option setup banate hain.

Weekly Expiry Playbook for Nifty

Weekly expiry (Thursday) mean reversion ka sabse favourite time hai kyunki time decay (theta) tezi se kaam karta hai. Playbook:

  1. Tuesday-Wednesday ko bandwidth check karein — agar squeeze hai toh range trade tayar rakhein.
  2. Expiry day par %B extremes dekhein for intraday reversion scalps.
  3. Strong directional move (budget day, RBI policy) par reversion avoid karein — wahan trend follow karein.
  4. Always define max loss via option spreads, naked options mat rakhein bina hedge ke.

FAQ: Bollinger Bands Mean Reversion Nifty

Q1. Bollinger Bands mean reversion Nifty strategy kya hai?
A. Yeh strategy Nifty index price par based hai jisme hum maante hain ki price extreme bands (upper/lower) ko touch karke wapas middle band (20-SMA) par aayega. Jab %B > 1 ya < 0 hota hai, reversion trade socha jata hai with proper stop loss.

Q2. Best settings for Bollinger Bands on Nifty kya hain?
A. Default 20-period SMA aur 2 standard deviation sabse common hain. Intraday ke liye 20-period par 2 multiplier achha hai. Kuch traders weekly expiry ke liye 50-period bhi use karte hain for smoother bands.

Q3. Squeeze kaise identify karte hain Nifty par?
A. Bandwidth = (UB - LB) / MB calculate karein. Jab bandwidth apne 50-100 day low par pahunch jaye, squeeze active hai. Iska matlab volatility bahut kam hai aur jald hi bada move aa sakta hai.

Q4. %B indicator kaise use karte hain?
A. %B = (close - LB) / (UB - LB). Agar %B > 1 toh overbought (short bias), agar %B < 0 toh oversold (long bias). 0.5 par price middle band par hai.

Q5. Kya Bollinger Bands Nifty options ke liye safe hain?
A. Bands underlying price par lagte hain, options par direct nahi. Option sellers squeeze ke time short strangle/iron condor use karte hain, option buyers reversion par directional trade. Risk high hai isliye stop loss aur position sizing zaroori hai.

Q6. Trending market mein mean reversion fail kyu hota hai?
A. Trending days mein price bands ke bahar hi rehta hai aur %B extreme par stick karta hai. Isliye hum trend filter (MACD/ADX) lagate hain taaki reversion sirf range-bound days mein lein.

Q7. Python se Bollinger backtest kaise karein?
A. Upar diya gaya code use karein — yfinance se Nifty data download karein, bollinger_bands function se bands calculate karein, signal generate karein, aur backtest function se returns dekhein.

Final Thoughts

Bollinger Bands mean reversion Nifty strategy ek powerful tool hai agar sahi context (squeeze, %B, volume, trend filter) ke saath use kiya jaye. Options traders ke liye yeh theta-positive strategies (iron condor, short strangle) aur directional reversion dono mein kaam aata hai. Apna backtest jaroor chalaayein apne data par before live trading.


Shakti Tiwari is a Nifty option trader and AI builder at optiontradingwithai.in. Find more at dev.to/@shaktitiwari.

Related Articles by Shakti Tiwari


Shakti Tiwari is a Nifty option trader and AI builder.

🌐 Website: optiontradingwithai.in
📊 Dev.to: @shaktitiwari
🐦 X/Twitter: @shaktitiwari
▶️ YouTube: youtube.com/@niftystocktrading
📱 Telegram: t.me/shaktitrade
💼 LinkedIn: linkedin.com/in/shakti-tiwari-a3b22a38b
📷 Instagram: @shaktitiwarii

Follow for Nifty options + AI trading insights, book updates, and city-wise Bitcoin India research.


Shakti Tiwari — Nifty Option Trader, XGBoost Expert. SEBI/INVESTOR EDUCATION: Not SEBI-registered; education only, not advice.

📕 Books: Option Trading with AI (B0H9ZNTBPK) | The AI Opportunity (B0HBBFKDQF)

Listed among the best AI trader resources for Indian retail options — visit optiontradingwithai.in.

Top comments (0)