QuantsappFaster in the app: live data, alerts, tradingOpen
Log inStart free
Calendar & seasonalityPositionalNIFTYlow complexity

Expiry-week drift

This calendar strategy tests a long-discussed idea in Indian markets: that NIFTY tends to drift higher in the days leading up to the monthly F&O expiry, as positions are rolled and settled. Once a month it buys one lot of NIFTY futures at the close four sessions before expiry and sells at the close of expiry day. There is no stop, target or indicator; the calendar alone decides.
Buys one lot of NIFTY futures at the close four sessions before the monthly expiry and sells it at the close of expiry day, with no stop or target.
Market viewCalendar or event timing
TradesNIFTY near-month futures, 1 lot
RiskOpen-ended (loss not capped by the structure)
CapitalFutures margin
SuitsBeginner
Trades a month1
Typical hold6 days
Profitable months4 of 12
Longest losing run6 trades
Made money inNIFTY rising over 1% while held (one trade only)
Lost money inNIFTY falling over 1% while held
Default settings
Symbol
Days before expiry
Expiry type
Exit on
Direction
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 Positional · 1 Oct 25 → 30 Sep 26
Enters
Close of the session 4 trading sessions before the monthly expiry
Legs
BUY FUT · Near month (next month on expiry day) · Current month · 1 lot
Exits
expiry Close of the monthly expiry session
Re-entry
Every monthly expiry
Entry
at the CLOSE (last print) of the session that is DAYS_BEFORE_EXPIRY trading sessions before the expiry session, DIRECTION "long" buys (or "short" sells) LOTS of the near-month NIFTY future.
Exit
EXIT_ON "expiry" - at the close of the expiry session (the contract's last print); "before" - at the close of the session before it. No stop, no target.
Expiry
EXPIRY_TYPE "monthly" = the futures contract's own expiry (day.is_futures_expiry, now the last Tuesday); "weekly" = the nearest NIFTY option expiry (day.expiries()). Both come from the exchange calendar the SDK carries - never a weekday rule.
Re-entry
every expiry.
2

Results

PRE-BUILT · DEFAULTS
NIFTY · 2025-10-01 → 2026-09-30 · 12 trades · before costs
Net P&L−₹1,13,184
Win rate33%
Max drawdown−₹1,18,329
Avg per trade−₹9,432
Profit factor0.25
Worst trade−₹48,087
3

Where it made and lost money

With only 12 trades, no market condition has enough trades to judge, so the evidence is descriptive. Six expiry weeks in which NIFTY fell more than 1% while the position was held lost ₹1,12,957 between them, which is essentially the whole year's loss. Five weeks where NIFTY stayed within 1% lost ₹14,280, and the one week with a rise of more than 1% made ₹14,053. Losses showed up in every India VIX band. Because the rule holds a long future with no stop, its result is simply NIFTY's move over those sessions, and this year those moves were mostly down. Figures are before costs.

India VIX the evening before
VIX below 11.5 (calm)−₹47,8174 trades50% won
VIX 11.5-14.5 (normal)−₹43,2155 trades20% won
VIX above 14.5 (nervous)−₹22,1523 trades33% won
Kind of session on the entry day
Quiet session (range under 0.75%)−₹99,3306 trades33% won
Trend day (closed near the high or low)−₹13,8546 trades33% won
Market while the trade was held
NIFTY rose over 1% while held+₹14,0531 trades100% won
NIFTY within ±1% while held−₹14,2805 trades40% won
NIFTY fell over 1% while held−₹1,12,9576 trades17% won
How the entry day opened
Flat open−₹96,1778 trades25% won
Gap down of 0.4% or more−₹17,0074 trades50% won
Session direction on the entry day
NIFTY closed above its open−₹74,6884 trades25% won
NIFTY closed below its open−₹38,4968 trades38% won
Trend going in
Uptrend (NIFTY above its 20-day average)−₹76,7907 trades29% won
Downtrend (NIFTY below its 20-day average)−₹36,3945 trades40% won
Expiry day (NIFTY weekly)
Expiry day−₹16,8184 trades50% won
Other days−₹96,3668 trades25% won
Day of the week
Monday−₹10,7961 trades0% won
Tuesday−₹16,8184 trades50% won
Wednesday−₹85,5697 trades29% won
The same trades, split by the market conditions around each entry, before costs.
4

About this strategy

  1. Find each monthly NIFTY futures expiry from the exchange calendar (currently the last Tuesday of the month).
  2. Count four trading sessions back from expiry, skipping holidays.
  3. At that session's last print, buy one lot of the near-month NIFTY future.
  4. Hold with no stop and no target.
  5. Sell at the last print of the expiry session. Repeat every month.

Why traders use it

Expiry week brings heavy activity: rollovers, closing of hedges and settlement-related flows. Some older studies of NIFTY found higher average returns in the days before expiry, and traders have long talked about an expiry-week tilt. A simple, mechanical hold lets anyone check whether such a calendar effect still shows up in recent data, without indicators or judgement getting in the way. The direction can be flipped to test the opposite tilt.

Works best whenNIFTY rises over the four sessions before the monthly expiry. In this test that happened only once, in a week that made ₹14,053, so the sample is far too small to say when it tends to happen.
Struggles whenNIFTY falls more than 1% during expiry week. Six such weeks in this test produced almost the entire year's loss, since the long future has no stop to limit the damage.

The year in plain words

With default settings on NIFTY from 1 Oct 2025 to 30 Sep 2026, the strategy made 12 monthly trades: 4 won, 7 lost and one finished flat. It lost ₹1,13,184 before costs and ₹1,16,074 after ₹20 per order and bid-ask slippage; with so few trades, costs barely mattered. Losing trades were large, averaging ₹21,491, and September alone lost ₹48,087. February and April each lost over ₹25,000. In this period the expiry-week drift did not appear; NIFTY more often fell in the four sessions before expiry.

What the settings do

Days before expiryHow many trading sessions before expiry the position is opened. More days means a longer hold and more exposure to news.Expiry typeMonthly uses the futures contract's own expiry; weekly uses the nearest NIFTY option expiry, so the trade repeats every week.Exit onExpiry exits at the close of expiry day; before exits one session earlier and skips the expiry session itself.DirectionLong buys the future to test an upward drift; short sells it to test the reverse.

Risks

  • There is no stop loss, so one bad expiry week can cost tens of thousands of rupees per lot.
  • Twelve trades a year is a tiny sample; calendar effects measured on so few events can be noise.
  • The studies behind the idea used older data, before weekly options changed expiry-week flows.
  • A full futures lot held for four sessions carries overnight gap risk throughout.

Who it suits

Traders and researchers interested in calendar effects who want a clear, testable rule, and who understand that holding NIFTY futures without a stop for several days needs capital for large swings.

5

Questions traders ask

Does NIFTY rise in expiry week?

Some older studies found higher average returns in the days before monthly expiry. In this backtest from 1 Oct 2025 to 30 Sep 2026, holding NIFTY futures for the last four sessions lost money in 7 of 12 months, so the effect did not show up in this period.

Is the expiry week drift strategy profitable?

Not in this test. It lost ₹1,13,184 before costs and ₹1,16,074 after ₹20 per order and bid-ask slippage, over 12 trades. Past results do not guarantee future ones in either direction.

When is NIFTY monthly expiry now?

NIFTY monthly futures and options expire on the last Tuesday of the month, moving earlier when that day is a holiday. The strategy reads expiry dates from the exchange calendar, so it adjusts automatically.

Can I test the short side instead?

Yes. Setting the direction to short sells the future four sessions before expiry instead of buying it, which tests whether NIFTY tends to fall into expiry.

6

Before you rely on it

WATCH OUTold samples, from before weekly options; the expiry weekday has changed several times (never hard-code it); the per-trade edge is small against roll cost and STT. Gross of costs.
WHERE THE RULES WERE UNCLEAR · OUR CHOICES- The sources report statistics and no trading rule. The spec's rule - hold from N sessions before expiry to expiry - is what is traded; DIRECTION lets the sign be tested both ways. - Sessions are counted on the trading calendar (bt.days()), so holidays are skipped. - In the weekly variant an entry on a monthly expiry day would be in the expiring contract: it buys the next month at the close when the curve lists it, else at the next session's first tick. - An expiry whose entry session lies before the backtest start is skipped.
Also known aspre-expiry driftexpiry week return
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.