QuantsappFaster in the app: live data, alerts, tradingOpen
Log inStart free
OI · PCR · VIX signalsIntradayNIFTYmedium complexity

Max-pain gravity trade

The max-pain gravity trade tests a common expiry-week belief: that NIFTY tends to drift toward the strike where option buyers would lose the most. Two sessions before the weekly expiry, it measures how far the index sits from that max-pain strike and, if the gap is moderate, takes a futures position pointing toward it, exiting as soon as price arrives.
Two sessions before NIFTY weekly expiry, takes a futures position toward the max-pain strike and exits when the index gets within 50 points of it.
Market viewFades moves (mean reversion)
TradesNIFTY near-month futures, 1 lot
RiskOpen-ended (loss not capped by the structure)
CapitalFutures margin
SuitsIntermediate
Trades a month1.7
Typical hold4.0 hours
Profitable months5 of 12
Longest losing run4 trades
Made money inSessions that closed above their open
Lost money inSessions that closed below their open
Default settings
Symbol
Days before expiry
Entry time
Gap %
Gap max %
VIX max
Band points
ATR stop
Side mode
Exit time
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
10:00, two sessions before weekly expiry: buy if max pain is above the index, sell if below
Legs
BUY FUT · near month · Near month · 1 lotSELL FUT · near month · Near month · 1 lot
Exits
target Index within 50 points of max pain, recomputed every minutestop 0.75 x the 14-day ATR against the entryexpiry 15:15 on the weekly expiry day
Re-entry
None - one trade per weekly expiry
Entry
on the session DAYS_BEFORE_EXPIRY trading days before the nearest weekly expiry, at ENTRY_TIME. Max pain = the strike at which option buyers of that weekly would lose the most (sum over every strike of call OI x max(K - strike, 0) + put OI x max(strike - K, 0) is smallest), from open interest as of that moment. Gap = (max pain - spot) / spot. Gap >= +GAP_PCT % -> buy 1 lot of NIFTY futures; gap <= -GAP_PCT % -> sell 1 lot. Skip the trade when |gap| > GAP_MAX_PCT % (a far max pain is not assumed to pull) or when yesterday's India VIX close is VIX_MAX or above. LOTS lots, one trade per weekly expiry.
Stop
ATR_STOP x the 14-day ATR (yesterday's) against the entry, in futures points.
Target
spot comes within BAND_PTS points of max pain, max pain RECOMPUTED every minute from the live OI (it drifts 50-100 points intraday).
Exit
EXIT_TIME on the expiry day.
2

Results

PRE-BUILT · DEFAULTS
NIFTY · 2025-10-01 → 2026-09-30 · 20 trades · before costs
Net P&L+₹12,681
Win rate70%
Max drawdown−₹32,358
Avg per trade+₹634
Profit factor1.23
Worst trade−₹12,203
3

Where it made and lost money

The strategy earned when the market swung rather than trended. Entry days that closed above their open made ₹25,534 over 12 trades, while those that closed below lost ₹12,852 over 8. By VIX, weeks after a reading between 11.5 and 14.5 made ₹34,373 over 14 trades, and the 6 calmer weeks under 11.5 lost ₹21,691. In smaller samples, choppy sessions earned ₹19,647 over 5 trades and the 4 trend days lost ₹14,714. That fits the code: the target is a level the index must return to, and only the 0.75-ATR stop protects a trade when a trend pushes it the other way.

Session direction on the entry day
NIFTY closed above its open+₹25,53412 trades75% won
NIFTY closed below its open−₹12,8528 trades62% won
India VIX the evening before
VIX below 11.5 (calm)−₹21,6916 trades33% won
VIX 11.5-14.5 (normal)+₹34,37314 trades86% won
Kind of session on the entry day
Quiet session (range under 0.75%)+₹7,74811 trades73% won
Trend day (closed near the high or low)−₹14,7144 trades50% won
Choppy day (wide range, closed mid-range)+₹19,6475 trades80% won
How the entry day opened
Gap up of 0.4% or more+₹2,9901 trades100% won
Flat open+₹9,11318 trades67% won
Gap down of 0.4% or more+₹5791 trades100% won
Trend going in
Uptrend (NIFTY above its 20-day average)+₹5,38013 trades69% won
Downtrend (NIFTY below its 20-day average)+₹7,3027 trades71% won
Day of the week
Thursday−₹2,6063 trades67% won
Friday+₹27,49116 trades75% won
The same trades, split by the market conditions around each entry, before costs.
4

About this strategy

  1. Two trading sessions before the NIFTY weekly expiry, at 10:00, compute max pain for that weekly from the open interest at every strike at that moment.
  2. Skip the week if yesterday's India VIX closed at 14 or higher.
  3. Measure the gap between max pain and the index (taken from the option chain's synthetic price). Trade only if it is between 0.3% and 1.5%.
  4. If max pain is above the index, buy one lot of the near-month NIFTY future; if it is below, sell one lot.
  5. Set a stop 0.75 times the 14-day ATR away from the entry.
  6. Recompute max pain every minute from live open interest and exit once the index comes within 50 points of it.
  7. If neither has happened, close at 15:15 on expiry day. The position can be held overnight in between.

Why traders use it

Option writers hold most of the open interest, and many traders believe their hedging nudges the index toward the strike that leaves bought options worth least at expiry. Max pain is easy to read from any option chain, so it is a widely watched expiry-week level. Trading toward it is a mean-reversion bet with a clear target, and the low-VIX filter keeps the trade to calmer weeks when such a pull, if it exists, is less likely to be swamped by news.

Works best whenIn this test, weeks when the previous evening's India VIX sat between 11.5 and 14.5 (₹34,373 over 14 trades) and entry days that closed above their open. Range-bound and choppy sessions also earned, as the index swung back toward the heavily written strikes.
Struggles whenEntry days that closed below their open (₹12,852 lost over 8 trades) and trend days that carried the index away from max pain. In a small sample of 6 trades, the calmest weeks with VIX under 11.5 also lost, as stops were hit before the index drifted to its target.

The year in plain words

On NIFTY from 1 Oct 2025 to 30 Sep 2026, the filters allowed 20 trades. Fifteen ended with the index reaching max pain and 5 hit the ATR stop, giving a 70% win rate. Net P&L was ₹12,681 before costs and ₹7,758 after ₹20 per order and slippage (statutory charges excluded), profit factor 1.23 before costs. The average loss (₹9,207) was nearly twice the average win (₹4,852), so the edge relied on the high hit rate. November alone made ₹24,690, while a ₹32,358 drawdown shows how few stops it takes to erase several wins.

What the settings do

Days before expiryHow many trading sessions before the weekly expiry the trade is placed; 0 trades on expiry day itself. Entering earlier gives more time to reach max pain but more time for the market to wander off.Entry timeThe time max pain and the gap are measured and the futures order is placed.Gap %The smallest gap between max pain and the index, in percent, needed to trade. A lower value trades more weeks but with smaller expected moves.Gap max %The largest gap allowed. Weeks where max pain is further away are skipped, on the view that a distant level is unlikely to pull.VIX maxThe India VIX ceiling, read from yesterday's close. Raising it lets the strategy trade in more volatile weeks.Band pointsHow close, in points, the index must come to max pain for the target exit. A wider band exits sooner with a smaller gain.ATR stopThe stop distance as a multiple of the 14-day ATR. A larger multiple gives the trade more room but loses more when it is wrong.Side modeGravity trades toward max pain; momentum trades the opposite way, reading an index above max pain as bullish. In momentum mode there is no max-pain target, only the stop and the expiry-day exit.Exit timeWhen an open position is closed on expiry day if neither the target nor the stop was reached.

Risks

  • Max pain is recalculated from live open interest and can move 50 to 100 points in a session, so the target is not fixed.
  • Futures are held overnight between entry and expiry, so a gap can jump past the ATR stop.
  • Losses are much larger than wins on average, so a few stops in a row can wipe out many small gains.
  • Being near max pain often just means being near the ATM strike, so the effect may be weaker than it looks.

Who it suits

Traders interested in expiry-week option-chain signals who can hold a futures position for up to two sessions with full margin and accept occasional losses about twice the size of typical wins.

5

Questions traders ask

What is max pain in NIFTY options?

Max pain is the strike at which the total value of all outstanding calls and puts of an expiry would be smallest if the index settled there, so option buyers as a group lose the most. It is computed from open interest at each strike and changes as positions are added or closed.

Does NIFTY really move toward max pain before expiry?

In this test, when the gap was between 0.3% and 1.5% and VIX was below 14, NIFTY reached within 50 points of max pain in 15 of 20 trades. That is a small sample, and part of the effect may simply be the index staying near the most active strikes.

Is the max pain strategy profitable?

From 1 Oct 2025 to 30 Sep 2026 on NIFTY it made ₹12,681 before costs and ₹7,758 after ₹20 per order and bid-ask slippage, with a ₹32,358 drawdown before costs. Statutory charges are not included. Past results do not guarantee future ones.

Why does the strategy skip high-VIX weeks?

When India VIX is high the market is pricing in larger moves, and news or trend tends to override any pull toward a strike. Restricting trades to weeks after a VIX close below 14 keeps the bet to calmer conditions.

6

Before you rely on it

ADAPTED FOR TODAY'S NSE RULESNIFTY weekly (Tuesday) expiry; "N days before expiry" is counted in trading sessions from the expiry list, never by weekday. The trade is in the near-month future (the weekly has no future of its own).
WATCH OUTMax pain moves through the day; pinning statistics are confounded by spot simply sitting near ATM.
WHERE THE RULES WERE UNCLEAR · OUR CHOICESThe sources give no numbers; entry/exit thresholds are the spec's. The default is the GRAVITY (mean-reversion) reading: trade TOWARDS max pain. SIDE_MODE "momentum" is the opposite reading some scanners use (spot above max pain = bullish). "Spot" is the weekly chain's put-call-parity price at entry; during the hold it is the near-month future plus the carry measured at entry, so no chain is read to follow the index.
Also known asmax pain convergencemax pain magnet
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.