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

Option writing flow bias

Option writers are usually the larger, better-funded traders, so many intraday traders watch where they are adding positions. This strategy classifies the open interest change at nine strikes around the money into writing, buying, covering and unwinding for calls and puts. When put writing clearly outweighs call writing and buying flow agrees, it buys a call; the mirror case buys a put.
Reads whether calls or puts near the money are being written or bought since 09:20, and buys the first out-of-the-money option on the side the flow favours.
Market viewEither direction (follows the move)
TradesNIFTY weekly options, 1 leg bought, 2 lots
RiskLimited to the premium paid
CapitalPremium only
SuitsAdvanced
Trades a month20.4
Typical hold5.0 hours
Profitable months3 of 12
Longest losing run9 trades
Made money inTrend days (+₹2,40,540 over 69 trades)After VIX below 11.5Fridays
Lost money inWeekly expiry days (−₹68,488, 6% win rate)Quiet sessions under 0.75% rangeChoppy wide-range days
Default settings
Symbol
Ref time
First check
Last check
Check every min
Strikes each side
Ratio
Require long flow
Covering
ATR n
SL ATR mult
Min SL fraction
Tgt ATR mult
Book %
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
First 15-minute check from 10:15 to 14:00 where writing and buying flow agree
Legs
BUY CE · ATM + 1 strike (first OTM call) · Nearest weekly · 2 lotsBUY PE · ATM - 1 strike (first OTM put) · Nearest weekly · 2 lots
Exits
stop Delta x 0.6 ATR below entry, never below half the premiumtarget Delta x 1.2 ATR above entry books 1 lot; the other's stop moves to costtime 15:15
Re-entry
None - one trade a day
Flow
at each checkpoint (every CHECK_EVERY_MIN minutes, FIRST_CHECK..LAST_CHECK) take the ATM strike and STRIKES_EACH_SIDE strikes either side, call and put each. For every option, compare its open interest and its price now with REF_TIME: OI up & price not up = WRITING, OI up & price up = BUYING, OI down & price up = COVERING, OI down & price not up = UNWINDING; add |OI change| to that bucket.
Bias
bullish when put writing > RATIO x call writing; bearish when call writing > RATIO x put writing. Long flow must agree (REQUIRE_LONG_FLOW): bull longs = call buying + put unwinding + call covering, bear longs = put buying + call unwinding + put covering; the agreeing side must beat the other by RATIO.
Entry
the first checkpoint with an agreed bias buys the first OTM call (bullish) or put (bearish) of the nearest expiry, LOTS lots. One trade a day.
Stop
the option at max(entry - |delta| x SL_ATR_MULT x ATR, MIN_SL_FRACTION x entry) - ATR is the ATR_N-day ATR of the future as of yesterday, delta the option's at entry.
Target
the option at entry + |delta| x TGT_ATR_MULT x ATR books BOOK_PCT % of the lots; the stop of the rest moves to cost.
Exit
whatever is open at EXIT_TIME.
2

Results

PRE-BUILT · DEFAULTS
NIFTY · 2025-10-01 → 2026-09-30 · 245 trades · before costs
Net P&L−₹87,205
Win rate35%
Max drawdown−₹1,44,582
Avg per trade−₹356
Profit factor0.86
Worst trade−₹17,407
3

Where it made and lost money

Buying an option only pays when the index moves far and fast enough to beat time decay. Trend days that closed near their high or low made ₹2,40,540 over 69 trades with a 59% win rate. Quiet sessions lost ₹1,72,172 over 108 trades and choppy days ₹1,47,826 over 66, as the flow signal fired but the option decayed or hit its stop. Expiry days were the worst single condition, losing ₹68,488 over 51 trades with a 6% win rate, because a nearest-weekly option bought late in the morning of its last day loses value very quickly. After a calm VIX evening it made ₹30,731 over 65 trades.

Kind of session on the entry day
Quiet session (range under 0.75%)−₹1,72,172108 trades25% won
Trend day (closed near the high or low)+₹2,40,54069 trades59% won
Choppy day (wide range, closed mid-range)−₹1,47,82666 trades26% won
Session direction on the entry day
NIFTY closed above its open−₹1,36,248120 trades36% won
NIFTY closed below its open+₹56,790123 trades34% won
India VIX the evening before
VIX below 11.5 (calm)+₹30,73165 trades42% won
VIX 11.5-14.5 (normal)−₹79,216109 trades30% won
VIX above 14.5 (nervous)−₹30,97269 trades36% won
Day of the week
Monday+₹10,37649 trades35% won
Tuesday−₹66,84447 trades4% won
Wednesday−₹21,65351 trades39% won
Thursday−₹12,47246 trades46% won
Friday+₹20,78849 trades51% won
How the entry day opened
Gap up of 0.4% or more−₹58,47037 trades32% won
Flat open−₹21,656166 trades35% won
Gap down of 0.4% or more+₹67040 trades38% won
Expiry day (NIFTY weekly)
Expiry day−₹68,48851 trades6% won
Other days−₹10,969192 trades43% won
Trend going in
Uptrend (NIFTY above its 20-day average)−₹25,976119 trades33% won
Downtrend (NIFTY below its 20-day average)−₹53,481124 trades37% won
The same trades, split by the market conditions around each entry, before costs.
4

About this strategy

  1. Record the option chain of the nearest NIFTY weekly at 09:20 as the reference.
  2. From 10:15 to 14:00, every 15 minutes, compare each option within four strikes of ATM with the reference: OI up and price not up is writing, OI up and price up is buying, OI down and price up is covering, OI down and price not up is unwinding.
  3. Bullish if put writing exceeds call writing by 1.25 times and bullish buying flow agrees; bearish in the mirror case.
  4. At the first agreed signal, buy two lots of the first OTM call (bullish) or put (bearish); one trade a day.
  5. Stop: the option falls by its delta times 0.6 of the 14-day ATR, but never to less than half the premium paid.
  6. Target: the option rises by its delta times 1.2 ATR; one lot is booked and the other's stop moves to cost.
  7. Close anything still open at 15:15.

Why traders use it

Heavy put writing suggests sellers are confident the market will not fall below those strikes, and heavy call writing suggests they doubt it will rise. Reading the change in open interest together with the price change separates fresh writing from short covering and long unwinding. Requiring both writers and buyers to point the same way filters out mixed signals. Buying the option rather than writing it keeps the risk to the premium paid.

Works best whenTrend days that close near their high or low, which made ₹2,40,540 over 69 trades in this test, and days after a calm VIX evening, when cheaper options needed a smaller move to pay.
Struggles whenWeekly expiry days, where the bought option decays fastest and only 6% of trades won, plus quiet and choppy sessions, which together lost over ₹3 lakh as the signal fired but the index never followed through.

The year in plain words

On NIFTY from 1 Oct 2025 to 30 Sep 2026 a flow signal appeared on 245 days. The strategy won 35%: 95 trades were stopped and 149 were still open at 15:15. The average win (₹6,204) was larger than the average loss (₹3,865), but not by enough. Net P&L was an ₹87,205 loss before costs and ₹1,13,025 after ₹20 per order and slippage, with only 3 profitable months; June lost ₹41,758. The writing-flow signal pointed the right way on trend days, but on most other days the bought option decayed before any move came.

What the settings do

Ref timeThe time from which open interest and price changes are measured. Starting after the open avoids mixing in the overnight gap.First checkThe first time the flow is checked. Checking too early reads the noisy first hour.Last checkThe last time a signal can trigger the day's trade.Check every minHow often, in minutes, the flow is re-checked between the first and last check.Strikes each sideHow many strikes either side of ATM are included. A wider window includes more writing activity but more distant, less relevant strikes.RatioHow much one side's writing must exceed the other's to count as a bias. A higher ratio trades less often on stronger signals.Require long flowWhen on, buying, unwinding and covering flow must also agree with the writing bias before a trade is taken.CoveringEconomic counts call covering as bullish and put covering as bearish; source keeps the original grouping, which treats them the other way round.ATR nHow many days the futures ATR used for the stop and target averages over.SL ATR multThe stop distance in ATRs, scaled by the option's delta. A larger value gives the trade more room.Min SL fractionThe lowest the stop can be set, as a fraction of the premium paid. At 0.5 the trade never risks more than half the premium on the stop.Tgt ATR multThe target distance in ATRs, scaled by delta.Book %The share of lots sold at the target; the remainder rides with its stop at cost.Exit timeWhen anything still open is sold.

Risks

  • Bought options lose value every hour the move does not come, and on expiry day very quickly.
  • Open interest can shift on a few large writers, so the flow signal can flip within minutes.
  • One trade a day means a wrong first signal leaves no second chance that day.
  • A low win rate means long losing streaks, 9 in a row here.

Who it suits

Option buyers who follow open interest data intraday, want a capped risk per trade, and can tolerate a low win rate and long losing runs. It needs automation or close monitoring to read the chain every 15 minutes.

5

Questions traders ask

How do you read put writing and call writing?

Compare each option's open interest and price with an earlier moment. If OI rose and the price did not, new positions were mostly sold, so that is writing. Heavy put writing is read as support below the market; heavy call writing as resistance above.

What do short covering and long unwinding mean in options?

Short covering is OI falling while the price rises: sellers are buying back. Long unwinding is OI falling while the price falls: buyers are exiting. Call covering and put unwinding are bullish signs; the opposite pair is bearish.

Is the option writing flow strategy profitable?

In this NIFTY backtest from 1 Oct 2025 to 30 Sep 2026 it lost ₹87,205 before costs and ₹1,13,025 after ₹20 per order and bid-ask slippage, with a ₹1,44,582 drawdown before costs. Statutory charges are not included. Past results do not guarantee future ones.

Why buy the option instead of writing it?

Buying limits the loss to the premium paid, while writing has open-ended risk. The trade-off is that a bought option needs the move to come quickly, which is why this strategy lost most on quiet days and expiry days.

6

Before you rely on it

ADAPTED FOR TODAY'S NSE RULESNIFTY nearest weekly (Tuesday); sized in lots. Exits well before the 15:40 close.
WATCH OUTNo backtest in the source. OI moves on a few big writers; the 9-strike window moves with ATM.
WHERE THE RULES WERE UNCLEAR · OUR CHOICES- The source reads the exchange's "change in OI / change in price" columns, which run from the PREVIOUS close and so mix the overnight gap into the flow (its own pitfall). Changes here run from REF_TIME today. - The source adds CALL covering to the BEARISH long flow, although calls being covered (OI down, price up) is bullish. COVERING = "economic" (default) books call covering as bullish and put covering as bearish; "source" keeps the source's grouping (put covering bullish, call covering bearish). - The source weights writing 2 and long flow 1; "trade only when both agree" is what is coded. - Booking half needs at least 2 lots: with LOTS 1 the whole position exits at the target. - 15:15 square-off and one trade a day are ours (the source is a signal screen).
Also known asput writing vs call writingoi flow quadrants
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.