QuantsappFaster in the app: live data, alerts, tradingOpen
Log inStart free
Expiry dayIntradayNIFTYlow complexity

Expiry OI pin fade

On expiry day, the strikes with the largest call and put open interest act like walls, and many traders expect NIFTY to settle between them. This strategy marks the midpoint of those two walls as the 'pin'. If the index has wandered more than 30 points away from it at 11:00 or 13:00, it buys the at-the-money option that profits from a move back to the pin.
On NIFTY weekly expiry day, buys the ATM call or put that profits if the index returns to the midpoint of its biggest call and put open-interest strikes.
Market viewFades moves (mean reversion)
TradesNIFTY weekly ATM option bought on expiry day
RiskLimited to the premium paid
CapitalPremium only
SuitsIntermediate
Trades a month2.6
Typical hold25 min
Profitable months5 of 12
Longest losing run5 trades
Made money inChoppy expiry days that swing back and forthIndia VIX above 14.5 the evening beforeNIFTY above its 20-day average
Lost money inTrend days that close near the high or lowCalm markets with India VIX below 11.5
Default settings
Symbol
Check time 1
Check time 2
Last entry
Pin band points
Pin method
Stop %
OI delay secs
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
Expiry day 11:00 (or 13:00): spot over 30 points from the OI pin; one side only
Legs
BUY CE · ATM (about 0.5 delta) · Expiring weekly (expiry day) · 1 lotBUY PE · ATM (about 0.5 delta) · Expiring weekly (expiry day) · 1 lot
Exits
target spot reaches the pin measured at entrystop option loses 30% of the price paidtime 15:15
Re-entry
None - one trade a day
Entry
only on the NIFTY weekly expiry day (the nearest expiry has 0 days left), checked at CHECK_TIME_1 and again at CHECK_TIME_2 if nothing was traded at the first check. Pin = midpoint of the strike holding the most call open interest and the strike holding the most put open interest of the expiring weekly (PIN_METHOD "max_pain" uses max pain instead). Spot more than PIN_BAND_PTS above the pin -> buy the ATM put; more than PIN_BAND_PTS below -> buy the ATM call. LOTS lots, one trade a day, no entry after LAST_ENTRY.
Stop
the option loses STOP_PCT % of the price paid.
Target
spot reaches the pin (as measured at entry).
Exit
EXIT_TIME.
2

Results

PRE-BUILT · DEFAULTS
NIFTY · 2025-10-01 → 2026-09-30 · 31 trades · before costs
Net P&L+₹9,597
Win rate32%
Max drawdown−₹6,402
Avg per trade+₹310
Profit factor1.48
Worst trade−₹1,552
3

Where it made and lost money

In this test the pin fade earned on choppy expiry days, making ₹9,934 over 12 trades, and lost ₹3,257 over 10 trend days with only a 20% win rate. That fits the mechanism: on a choppy day the index swings back through the middle of the open-interest walls and reaches the pin; on a trend day it keeps moving away until the 30% premium stop fires. Volatility helped rather than hurt: days after India VIX closed above 14.5 made ₹7,867 over 9 trades, while calm days below 11.5 lost ₹3,222 over 8, because cheap, slow options rarely moved far enough to pay before decaying.

Kind of session on the entry day
Quiet session (range under 0.75%)+₹3,8258 trades38% won
Trend day (closed near the high or low)−₹3,25710 trades20% won
Choppy day (wide range, closed mid-range)+₹9,93412 trades42% won
India VIX the evening before
VIX below 11.5 (calm)−₹3,2228 trades12% won
VIX 11.5-14.5 (normal)+₹5,85613 trades38% won
VIX above 14.5 (nervous)+₹7,8679 trades44% won
Trend going in
Uptrend (NIFTY above its 20-day average)+₹8,87213 trades46% won
Downtrend (NIFTY below its 20-day average)+₹1,63017 trades24% won
Session direction on the entry day
NIFTY closed above its open+₹6,28910 trades40% won
NIFTY closed below its open+₹4,21320 trades30% won
How the entry day opened
Gap up of 0.4% or more+₹7,1396 trades50% won
Flat open−₹1,25317 trades24% won
Gap down of 0.4% or more+₹4,6167 trades43% won
Expiry day (NIFTY weekly)
Expiry day+₹8,78829 trades31% won
Other days+₹1,7141 trades100% won
Day of the week
Monday+₹1,1004 trades50% won
Tuesday+₹9,40126 trades31% won
The same trades, split by the market conditions around each entry, before costs.
4

About this strategy

  1. Trade only on the NIFTY weekly expiry day (Tuesday, or the previous session if that is a holiday).
  2. At 11:00, find the strike with the most call open interest and the strike with the most put open interest in the expiring series. The pin is halfway between them. Open interest is read as of two minutes earlier, so only data already published is used.
  3. If spot is more than 30 points above the pin, buy one lot of the ATM put; if more than 30 points below, buy the ATM call.
  4. If spot is within 30 points, check again at 13:00. No entries after 14:00, and at most one trade a day.
  5. Exit when spot reaches the pin measured at entry (the target) or when the option has lost 30% of its price (the stop).
  6. Anything still open is sold at 15:15.

Why traders use it

Option writers hold the biggest positions at the call and put walls, and on expiry day they have a strong interest in the index finishing between them. The belief that the index gets drawn toward that middle zone in the last hours is widespread in Indian F&O circles. Buying an ATM option on expiry day is cheap, the loss is limited to the premium, and the target is a clear price level rather than a guess.

Works best whenIn this test, choppy expiry days with a wide range and a mid-range close (₹9,934 over 12 trades), days after India VIX closed above 14.5, and periods when NIFTY was above its 20-day average.
Struggles whenExpiry days that trend all session and close near their high or low, which lost ₹3,257 over 10 trades as the index ran away from the pin, and calm days after India VIX closed below 11.5, when only one trade in eight won.

The year in plain words

On NIFTY weekly expiries from 1 Oct 2025 to 30 Sep 2026 with default settings, the strategy took 31 trades and won only 32% of them, yet made ₹9,597 before costs and ₹7,673 after ₹20 per order and bid-ask slippage. It worked because winners averaged about ₹2,969 against losses of about ₹957: 21 trades hit the 30% premium stop, while 9 reached the pin. April alone made ₹8,691, nearly the whole year's profit, and September lost ₹2,910. Maximum drawdown was ₹6,402 before costs. With so few trades and one dominant month, the result is fragile.

What the settings do

Check time 1The first time of day the gap between spot and the pin is checked. Earlier checks give the move back more time but rely on less settled open interest.Check time 2A second check, used only if nothing was traded at the first one.Last entryNo trade is opened after this time, because late-day ATM options decay very quickly.Pin band pointsHow far spot must stray from the pin, from 20 to 100 points, before a trade is taken. A wider band means fewer trades but larger expected moves back.Pin methodmid_max_oi uses the midpoint of the biggest call and put open-interest strikes; max_pain uses the max pain strike instead.Stop %The percentage of the premium paid that the option may lose before it is sold. A tighter stop cuts losses sooner but is hit more often by normal expiry-day swings.OI delay secsOpen interest is read as of this many seconds before each check, because exchange OI reaches the feed in batches with a delay. A shorter delay uses fresher data but risks counting prints not yet visible.Exit timeThe time any remaining position is sold, ahead of the 15:40 close.

Risks

  • ATM options on expiry day can lose 30% of their value in minutes, so the stop is hit often.
  • The result rests on 31 trades and one strong month, which is too little to tell skill from luck.
  • Studies of NSE data have found little evidence that the index reliably pins to strikes at expiry.
  • The pin is fixed at entry, but the walls can move during the afternoon as writers roll or close positions.

Who it suits

Option buyers who trade only on expiry day, want a small and defined loss per trade, and accept a low win rate. It needs little capital per trade but discipline to follow a strategy that loses on two of every three days.

5

Questions traders ask

What is OI pinning on expiry day?

Pinning is the idea that an index tends to close near the strikes where the most options are open, because large writers hedge in ways that push the price back toward them. This strategy uses the midpoint between the highest call and highest put open-interest strikes as the pin.

Is the expiry day OI pin fade profitable?

In this backtest on NIFTY from 1 Oct 2025 to 30 Sep 2026 it made ₹9,597 before costs and ₹7,673 after ₹20 per order and bid-ask slippage, from 31 expiry-day trades. Statutory charges were excluded, and April alone accounted for most of the profit. Past results do not guarantee future ones.

Why does it win only a third of the time but still make money?

Each losing trade is capped at roughly 30% of a small ATM premium, while a winning trade rides spot back to the pin and can multiply the premium on expiry day. In this run the average winner was about three times the average loser.

Is max pain the same as the OI pin?

No. Max pain is the strike where option holders would lose the most at expiry, calculated across the whole chain. The OI pin here is simply the midpoint of the biggest call and biggest put strikes. You can switch “Pin method” to max_pain to test the other version.

6

Before you rely on it

ADAPTED FOR TODAY'S NSE RULESNIFTY weekly (Tuesday) expiry from the expiry list (dte == 0), never a weekday. Sized in lots. EXIT_TIME 15:15 sits before the 15:30 close (15:40 from 3 Aug 2026).
WATCH OUTAn unverified "62% over 50 expiries" claim; research on NSE finds little evidence of pinning.
WHERE THE RULES WERE UNCLEAR · OUR CHOICESExchange OI is published in batches and reaches the feed minutes after the positions it counts. The levels here come from bt.oi_changes, whose events are stamped when the print reached the feed, and they are read as of OI_DELAY_SECS BEFORE the decision - so no OI print that was not yet visible at the decision is used, and a batch arriving in the same second as the check is ignored. The source gives only "no new trades after 14:00" and "out by 15:30". The two check times (11:00, 13:00), ATM strike, target = spot reaches the pin, 30% premium stop and 15:15 exit are the spec's reading. Spot is the weekly chain's put-call-parity price at the check; 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 convergenceOI pin reversion
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.