QuantsappFaster in the app: live data, alerts, tradingOpen
Log inStart free
Open Backtesting →
OI · PCR · VIX signalsPositionalNIFTYmedium complexity

Rollover and roll cost signal

Rollover analysis is a monthly ritual in Indian derivatives commentary: on futures expiry, how much open interest moved to the next month, and at what cost? This strategy turns that reading into a rule. When rollover is clearly above its recent average, and the finished series' trend and the roll cost agree, it trades NIFTY futures in that direction for the new series.
At each monthly futures expiry, reads rollover, roll cost and the series trend; when all agree, trades NIFTY futures in that direction for the next series.
Market viewEither direction (follows the move)
TradesNIFTY near-month futures, 1 lot
RiskOpen-ended (loss not capped by the structure)
CapitalFutures margin
SuitsIntermediate
Trades a month0.1
Typical hold7 days
Profitable months0 of 12
Longest losing run1 trades
Made money inToo few trades to judge (1 trade)
Lost money inToo few trades to judge (1 trade)
Default settings
Symbol
Avg series
High margin points
Measure days before
Need roll cost
Hold sessions
ATR n
ATR mult
Entry time
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 Positional · 1 Oct 25 → 30 Sep 26
Enters
09:20 on the new series' first session after a qualifying expiry-day reading
Legs
BUY FUT · near month · New series' near month · 1 lotSELL FUT · near month · New series' near month · 1 lot
Exits
stop 2 x the 14-day ATR against the entryexpiry 15:15 on the new series' expiry day
Re-entry
None until the next monthly expiry gives a signal
Measure
at the close of the measuring session - the monthly futures expiry day (D0) when MEASURE_DAYS_BEFORE is 0, else that many sessions before it: rollover % = OI of the later months / OI of all months x 100 (futures, closing OI); roll cost % = (next-month future - near-month future) / near-month future x 100, annualised by the calendar days between the two expiries; series return = near-month close on the measuring day / its close on the series' first session - 1.
Signal
HIGH rollover = rollover % above the average of the previous AVG_SERIES series + HIGH_MARGIN_PTS. LONG if HIGH rollover, series return > 0 and roll cost above its AVG_SERIES-series average; SHORT if HIGH rollover, series return < 0 and roll cost below its average. Anything else (low rollover = trend weakening) -> no trade.
Entry
at ENTRY_TIME of the first session of the new series, LOTS of the new near-month future.
Stop
ATR_MULT x ATR(ATR_N) points from the entry (daily ATR as of the previous close), at the trigger.
Exit
at EXIT_TIME on the new contract's expiry day, or - when HOLD_SESSIONS > 0 - at EXIT_TIME of the HOLD_SESSIONS-th trading session after the entry (the "10 sessions" variant), whichever is first.
2

Results

PRE-BUILT · DEFAULTS
NIFTY · 2025-10-01 → 2026-09-30 · 1 trades · before costs
Net P&L−₹58,487
Win rate0%
Max drawdown−₹58,487
Avg per trade−₹58,487
Profit factor0
Worst trade−₹58,487
3

Where it made and lost money

There is no market-condition evidence to speak of: the rules traded once in the year. That single trade was a short taken on 1 Apr 2026 after a falling March series with high rollover and a cheap roll; NIFTY rallied in the new series and the 2-ATR stop was hit a week later for a ₹58,487 loss before costs. The case shows the main weakness of the idea. Rollover data describes what traders did in the old series, and a new series that opens with a reversal leaves the trade on the wrong side with a wide stop.

The same trades, split by the market conditions around each entry, before costs.
4

About this strategy

  1. At the close of each monthly futures expiry day, measure rollover: open interest in the later months as a percentage of open interest in all months.
  2. Measure roll cost as the gap between next-month and near-month futures, annualised, and the series return from its first session to expiry day.
  3. Call rollover high if it is more than 5 points above the average of the previous 3 series.
  4. High rollover with a rising series and roll cost above its 3-series average means go long; high rollover with a falling series and roll cost below its average means go short. Anything else means no trade.
  5. Place the trade at 09:20 on the first session of the new series, one lot of the new near-month future.
  6. Stop out at 2 times the 14-day ATR against the entry; otherwise exit at 15:15 on the new series' expiry day.

Why traders use it

Rolling a futures position costs money, so a high rollover suggests traders are confident enough to carry their bets into the next month. A rising series rolled at a richer premium hints that longs are paying up to stay in; a falling series rolled cheaply hints at shorts being carried forward. These figures are published widely every expiry and discussed as a guide to the next month, which is what this strategy puts to a mechanical test.

Works best whenMonths when a strong trend in one series carries into the next, with traders rolling heavily and paying a premium that matches the direction, so the futures move away from the stop through the new series.
Struggles whenExpiries where high rollover reflects hedges or arbitrage rather than conviction, or where the market reverses at the start of the new series, as it did after March 2026.

The year in plain words

Across 1 Oct 2025 to 30 Sep 2026, the full set of conditions lined up only once. After the March 2026 expiry the rules called for a short, entered on 1 Apr 2026; NIFTY rallied and the 2-ATR stop was hit on 8 Apr for a ₹58,487 loss before costs and ₹57,890 after costs. The costed run fills at real bid and ask quotes, and on this one stop exit the quoted fill was about ₹600 better, which outweighed the ₹20 orders. In every other series either rollover was not high enough or the trend and roll cost disagreed. A single trade says almost nothing about the signal, except that it fires rarely and a wrong call costs a full 2-ATR move.

What the settings do

Avg seriesHow many past series form the average that rollover and roll cost are compared with. A shorter average reacts faster but is noisier.High margin pointsHow many percentage points above the average rollover must be to count as high. Lowering it to 0 lets many more series qualify.Measure days beforeMeasure on expiry day itself (0) or one to three sessions earlier, when part of the roll is still to happen.Need roll costWhen on, a series is skipped if the next-month price is not available. When off, the decision can fall back to rollover and series return alone in that case.Hold sessionsZero holds to the new series' expiry; a value such as 10 closes the trade after that many sessions if it is still open.ATR nHow many days the ATR for the stop averages over.ATR multThe stop distance in ATRs. Wider stops leave more room for the month's swings but cost more when hit.Entry timeThe time on the new series' first session when the futures order is placed.Exit timeThe time of day for the expiry-day exit or the end of the holding period.

Risks

  • The signal is rare, so long gaps without a trade are normal and each trade carries great weight.
  • A high rollover on a small open interest base can mean little, and much rollover is hedging rather than a view.
  • Positions are held for up to a month with only a wide ATR stop, so one trade can lose a large sum.
  • Overnight gaps can jump past the stop.

Who it suits

Traders who already follow expiry rollover data and want to test it as a monthly positional futures signal, with margin for a full lot held for weeks and the patience to go many months without a trade.

5

Questions traders ask

What is rollover percentage in NIFTY futures?

It is the share of futures open interest held in contracts beyond the near month, measured around expiry. If 80% of all open contracts are in the next and far months on expiry day, most traders have carried positions forward rather than closing them. It is compared with past series to judge whether it is high or low.

What is roll cost?

Roll cost is the premium of the next-month future over the expiring one, here annualised so different months compare fairly. A higher than usual roll cost suggests buyers are paying up to keep long positions; a lower one suggests the opposite.

Is the rollover signal profitable?

In this backtest from 1 Oct 2025 to 30 Sep 2026 it traded once and lost ₹58,487 before costs and ₹57,890 after ₹20 per order and slippage (statutory charges excluded). One trade is far too few to judge the signal, and past results do not guarantee future ones.

Why did the strategy trade only once in a year?

It needs three things together: rollover more than 5 points above its 3-series average, a series trend in one direction, and a roll cost on the same side of its own average. In this period that combination appeared after only one of the twelve monthly expiries.

6

Before you rely on it

ADAPTED FOR TODAY'S NSE RULES- Rollover % comes from the daily futures bars at the close: (oi_total - oi) / oi_total, the PL India definition (next + far over all months). nse-deriv-monitor's next / (near + next) is not used. - Roll cost needs the next-month contract's price, read from day.futures_curve(close). The server's curve lists near, next and far; the LOCAL test store lists only the near month, so locally roll cost is "n/a" and NEED_ROLL_COST decides: True = no trade without it (the full rule), False = decide on rollover and series return alone and say so in the log. On the server both settings trade the full rule wherever the curve has a next month. - The trade is placed at the next series' first session (the merged variant's "open of the new series"), not at 15:00 on D0: on D0 the near contract is the expiring one, and the signal uses closing OI. - "High" has no numeric definition in any source; +5 points over the 3-series average is the spec's. - The 2 x ATR(14) stop and the hold to the next expiry are the spec's interpretation (no source gives exits). - A measuring day whose data has no later month at all (all-months OI = near OI; seen on some local days) is skipped and left out of the averages - a 0% rollover is missing data, not a reading. - Rollover and roll-cost averages use series before the backtest start too (bt.daily lookback / bt.day on past expiries), so the first series of the run already has its averages.
WATCH OUTa high rollover on a low OI base means little; several brokers say rollover is not directional on its own; published readings are mostly hindsight.
Also known asrollover analysishigh rollover bullishrollover costSeries rollover signal: rollover % vs 3-month avg + cost of carry + price/OI -> next-series biaslong rollovershort rollover
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.