9. Who bought and who sold: 23-Oct 13:38 burst and 13-Oct rally (added 25-Oct-2026 08:45 IST)

Short answer. NSE does not publish who traded in a given minute, only end-of-day positions by category (FII, DII, Pro = brokers' own trading, Client = retail and other clients). So the per-minute identities below are inference. The end-of-day positions are direct evidence.
23-Oct 13:38 (+137 futures pts in 5 min): the burst started with aggressive buying in Nifty futures. Nifty futures volume was 8.8x normal, against 3.1x in Bank Nifty futures. The futures premium widened from ~64 to ~85 points, and all heavyweights turned up in the same minute (13:38), which looks like a basket being bought, not stock-specific news. Call writers were the forced buyers: call OI at the 21,950–22,900 strikes fell by ~448k contracts between 13:37 and 13:47 while call premiums rose 38% (22,200) to 84% (22,800). Put writers were the sellers from 13:41: put OI rose by ~93k contracts, with fresh puts written at 22,500–22,600. Futures OI rose (fresh longs, not short covering), but the intraday OI feed is unreliable that day. End of day: Pro added the most index-futures longs (+8,833) and also +7,583 shorts. FIIs added both sides (+2,283 long / +2,166 short, net flat): net buyers of Nifty futures (+1,626 contracts, ₹224 cr) and net sellers of Bank Nifty futures (−2,257, −₹377 cr). Clients sold: they added +2,921 futures shorts and wrote puts (+246,800 short against +102,621 long). FIIs and Pros bought puts. The burst was fully reversed: the day closed −88 with short buildup in Nifty and Bank Nifty futures.
13-Oct (+359): buyers were FIIs and Pros, sellers were clients. FIIs bought 18,726 and sold 12,361 index futures, a net +6,365 made up of 3,217 shorts covered and 3,148 new longs. Pros were net +6,337 (3,052 shorts covered). Clients were net −13,072: they sold 11,981 longs and added 1,091 shorts. Most of the rise came at 09:15–10:00 (+245 spot, IT results; HCL Tech cash volume 10x) while Nifty futures OI fell by ~4,400 contracts, which is short covering. The afternoon leg (14:15–15:00, +98; FM remarks from 14:25) came with futures OI rising (+2,540), which is fresh longs, and call OI in the expiring weekly falling ~966k contracts (call writers covering on expiry day). In cash, FIIs were still net sellers (−₹1,305 cr) and DIIs net buyers (+₹2,439 cr).

Direct: NSE participant-wise index derivatives (contracts; change vs previous session)

date who idx fut bought idx fut sold fut long OI chg fut short OI chg net fut chg call long chg call short chg put long chg put short chg net calls net puts
2026-10-13 Client 47110 60182 -11981 1091 -13072 -2656825 -2380246 -821652 -967974 -276579 146322
2026-10-13 DII 519 149 321 -49 370 5546 -1659 5716 -1365 7205 7081
2026-10-13 FII 18726 12361 3148 -3217 6365 -339611 -412402 -129774 -108689 72791 -21085
2026-10-13 Pro 31967 25630 3285 -3052 6337 -646874 -843457 -275963 -143645 196583 -132318
2026-10-23 Client 88427 91404 -56 2921 -2977 468886 525230 102621 246800 -56344 -144179
2026-10-23 DII 21547 19937 -663 -2273 1610 1143 66 1083 166 1077 917
2026-10-23 FII 83398 83281 2283 2166 117 153409 143003 115545 44774 10406 70771
2026-10-23 Pro 44859 43609 8833 7583 1250 293650 248788 167352 94860 44862 72492

Source: NSE fao_participant_oi / fao_participant_vol archives. 'bought/sold' = that day's long/short-side volume. Index futures and options cover all indices (Nifty, Bank Nifty, etc.). 13-Oct was a weekly Nifty expiry, so its option OI changes are mostly expiry settlement.

23-Oct intraday: Nifty and Bank Nifty futures by phase (Upstox 1m)

phase (IST) Nifty spot pts Nifty Oct fut pts Nifty fut vol (ctr, all exp) Nifty fut OI chg (all exp) Nifty fut OI chg (Oct) BN spot pts BN fut vol BN fut OI chg
13:20->13:37 46 48 2524 1304 73 132 1225 1724
13:37->13:41 93 102 4929 1461 707 191 561 -494
13:41->13:47 31 45 7131 3568 1933 48 795 -136
13:47->13:54 -72 -83 2045 1680 405 -173 531 94
13:54->14:10 45 38 3308 -1525 -3578 111 1082 407

23-Oct intraday: Nifty 27-Oct options, strikes 21,950–22,900 (OI change and volume in contracts)

phase (IST) CE OI chg (contracts) PE OI chg (contracts) CE volume (contracts) PE volume (contracts)
13:20->13:37 -4,220 1,262 1,280,286 1,525,925
13:37->13:41 -235,949 -10,340 1,757,245 1,292,753
13:41->13:47 -212,064 93,024 1,854,387 1,662,216
13:47->13:54 -39,803 45,689 887,144 1,482,221
13:54->14:10 26,995 18,472 1,807,318 2,150,528

23-Oct burst: heavyweights (cash, 13:36→13:47)

stock Nifty pts 13:36→13:47 % move cash vol vs 20d first +0.15% minute
ICICIBANK 14 1 1 13:38
RELIANCE 13 1 2 13:38
HDFCBANK 9 0 1 13:38
LT 8 1 1 13:38
INFY 6 1 3 13:38
ETERNAL 6 1 3 13:37
SBIN 6 1 2 13:38
AXISBANK 5 1 1 13:38
BHARTIARTL 4 0 1 13:39
KOTAKBANK 3 0 1 13:38

All 50 stocks together: +136.8 pts. Banks (HDFCB, ICICI, Axis, Kotak, SBI) +36.7, Reliance +13.2, IT +11.8. Bank Nifty and Nifty turned in the same minute (BN spot +0.19%, Nifty +0.20% at 13:38), so there was no Bank Nifty lead this time. Bulk deals 23-Oct: no Nifty-50 stock appears. Block deals 23-Oct: none.

13-Oct intraday: Nifty futures by phase

phase (IST) Nifty spot pts Nifty Oct fut pts Nifty fut vol (ctr) Nifty fut OI chg (all exp) BN spot pts BN fut OI chg
09:15->09:30 144 148 8614 -2085 295 -656
09:30->10:00 101 106 11238 -2352 144 -1070
13:45->14:15 20 16 2585 8 49 -174
14:15->14:30 22 28 2746 372 72 212
14:30->14:45 60 65 5775 293 182 204
14:45->15:00 16 16 9336 1875 -8 286
15:00->15:14 26 34 5115 -412 29 780

Caveats. (1) Who traded in a given minute is not published; the per-minute identities above are inferred from end-of-day category positions plus OI, premium and options patterns. (2) On 23-Oct (rollover week) Upstox 1m Nifty Oct-futures OI ended at 13.39M against NSE's official 11.32M. Calendar-spread trades are missing from the 1m feed (1m volume = 72% of the day's total), and one bar (13:57) shows a −2,939-contract OI jump on 185 contracts of volume, which is impossible. So the 23-Oct futures 'fresh longs' reading is low confidence. Option 1m OI matched NSE end-of-day within 1–2%. 13-Oct futures 1m volume matched NSE exactly. (3) Spot 15:15–15:29 is not used. (4) 13-Oct bulk/block deals: not available free (NSE historical API returned 503; the archive keeps only the latest day). Data: whoflow/results/, scripts: whoflow/scripts/.