Price action on June 2nd presented sharp statistical deviations that lacked the structural depth required for systematic execution.
What you need to know
- A significant midday impulse in NIFTY BANK INDICES:NIFTY BANK (12:45) and RELIANCE
NSE:RELIANCE (13:12) reached high statistical Z-scores without establishing a sustained trend. - Systematic backtesting (run 1d6ed055) failed to extract alpha from these moves, suggesting they were liquidity-driven anomalies rather than regime shifts.
- Volume profiles remained largely observational, failing to provide the 'observational (not backtested)' typical of institutional trend-following setups.
The Morning Compression and the Illusion of Stability
The session on 2026-06-02 opened with a deceptive sense of order. From the 09:15 bell through the first three hours of trade, the major indices exhibited a tight, range-bound character. NIFTY 50 INDICES:NIFTY 50 and NIFTY BANK INDICES:NIFTY BANK traded within narrow bands, with volume profiles trailing their 20-day averages. For the intraday participant, this morning window offered little in the way of directional bias. Participation seemed largely rotational, with heavyweights like RELIANCE
NSE:RELIANCE and COALINDIA
NSE:COALINDIA oscillating near their opening prints without clear commitment from larger desks.
During this period, the market appeared to be in a state of 'wait-and-see,' a common precursor to midday volatility. However, the lack of an early-morning trend often results in a 'vacuum' effect. When liquidity is thin and participation is retail-heavy, a single large order or a small cluster of buy-side flow can move the needle disproportionately. This sets the stage for the specific impulses we observed later in the session—moves that look like the start of a trend but lack the fundamental 'fuel' of sustained institutional accumulation.
The Midday Impulse: A Case of Statistical Extremity
The character of the session shifted abruptly at 12:45. NIFTY BANK INDICES:NIFTY BANK, which had been lethargic, suddenly experienced a sharp upward move. This impulse was not a slow grind; it was a rapid vertical expansion that pushed the index to a Z-score of 3.1 relative to its intraday mean. On a purely statistical basis, a Z-score exceeding 3.0 is a rare event—typically representing a move that should occur less than 1% of the time under a normal distribution.
Shortly thereafter, at 13:12, RELIANCE
NSE:RELIANCE followed suit. The heavyweight stock saw a momentum burst that reached a Z-score of 3.0. To an observer watching a 1-minute or 5-minute candle chart, this appeared to be a synchronized breakout. The simultaneous strength in the banking sector and the energy sector (via RELIANCE
NSE:RELIANCE) often serves as a signal for broader market participation. However, a closer look at the realized volatility (RVOL) tells a more nuanced story.
While the price moved aggressively, the RVOL for both instruments remained largely within historical bounds for such moves, failing to show the massive 'spike' that characterizes true breakout momentum. This suggests that the price was moving not because of an overwhelming wave of new buyers, but perhaps because the sell-side liquidity was thin—a 'liquidity gap' move. When the ask side of the book is empty, price can teleport upward with very little actual volume, creating the statistical signature of a major move (the high Z-score) without the structural backing of a major trend.
Quantifying the Failure: Why Systems Stayed Sideways
The core of our investigation rests on whether these moves were tradeable. In theory, a Z-score of 3.1 in a major index should be a 'momentum-on' signal. We deployed a series of systematic intraday strategies in a backtest environment (run 1d6ed055) to see if these impulses could have been captured by traditional trend-following or mean-reverting algorithms.
The results were telling: the strategies failed to find an edge. Most trend-following models triggered entries at the tail end of the move, only to be hit by a sharp period of stagnation or minor mean-reversion immediately following the impulse. The 'follow-through' that a systematic trader relies on simply wasn't there.
Take COALINDIA
NSE:COALINDIA as an example. While it showed midday strength alongside the broader indices, its move was even more fragmented. The lack of coordination between the price expansion and a sustained volume increase meant that any algorithm entering on the 'breakout' was essentially buying the local top of a liquidity-starved move. The backtest evidence suggests that these events were isolated anomalies. In quantitative terms, the 'signal-to-noise' ratio was too low; the signal (the price jump) was quickly overwhelmed by the noise (the subsequent lack of direction).
Lessons in Observational Restraint
For a serious trader, the session of June 2nd serves as a clinical example of the difference between an 'event' and a 'pattern.' A pattern is repeatable and offers a statistical edge; an event is a one-off occurrence driven by ephemeral factors. The midday strength in RELIANCE
NSE:RELIANCE and NIFTY BANK INDICES:NIFTY BANK was an event.
If we look at the RVOL for NIFTY BANK INDICES:NIFTY BANK, we see that the 12:45 move did not lead to a sustained regime of higher volume. Instead, the volume quickly decayed back to the mean. This is the hallmark of an impulse that fails to transition into a trend. When the backtest (run 1d6ed055) returns negative or flat results in the face of such clear price moves, it is often a sign that the price action is 'hollow.'
This highlights the importance of context. A 3.1 Z-score move in a high-volume, high-conviction environment is a 'must-trade.' The same move in a low-volume, midday doldrums environment is often a 'must-avoid.' The data suggests that on June 2nd, the market was simply reacting to a temporary imbalance in the order book rather than embarking on a new directional journey.
Conclusion: The Danger of Chasing Anomalies
In summary, the session of 2026-06-02 was defined by what it lacked rather than what it possessed. It lacked structural depth, it lacked volume observational (not backtested), and most importantly, it lacked systematic repeatability. The impulses at 12:45 and 13:12 were visually striking but analytically empty.
The critic verdict (run 28736d5d) correctly identifies these claims as inconclusive. There is no evidence to support the idea that these moves represented a tradeable regime. Instead, they remain observational anomalies—reminders that price action alone, without the supporting pillars of volume and systematic edge, is often just noise in a higher-timeframe disguise. Professionals stay out of such noise, waiting for the days when the Z-score and the volume profile speak the same language.
The human read
From a behavioral perspective, this session likely felt like a 'trap' for intraday momentum traders. The sudden verticality in NIFTY BANK INDICES:NIFTY BANK at 12:45 and RELIANCE
NSE:RELIANCE at 13:12 would have triggered countless retail alerts and 'breakout' scanners. To a human trader sitting at a screen, it looked like the market was finally 'waking up' after a dull morning. This is where FOMO (Fear Of Missing Out) often overrides technical discipline.
However, the lack of follow-through suggests that there was no 'second wave' of buyers. The initial move likely cleared out a thin ask-side, but once the price reached its new level, there were no institutional desks ready to bid it higher. Those who chased the move were left holding positions in a market that immediately went flat, forcing them to either exit for a small loss or sit through a grueling, directionless afternoon. It was a day for the patient to stay on hands and for the aggressive to be reminded of the costs of chasing liquidity gaps.
The takeaway
The data from 2026-06-02 does not support the existence of a tradeable systematic regime during the midday strength. While price impulses in NIFTY BANK INDICES:NIFTY BANK and RELIANCE
NSE:RELIANCE reached significant statistical extremes (Z > 3.0), they were isolated events that failed to provide follow-through for quant strategies (run 1d6ed055). This session should be categorized as observational only, serving as a reminder that statistical volatility does not always equate to a tradeable edge. Past performance does not guarantee future results.
Supporting charts
Data appendix
Everything above is interpretation. Everything below is the raw evidence — session summary, per-window structure, detected events, and methodology — for readers who want to check the work.
Session summary
| Instrument | Close | Day Δ | Range | Realized Vol (ann.) | Volume | Avg Spread |
|---|---|---|---|---|---|---|
| NIFTY 50 INDICES:NIFTY 50 | 23523.75 | +1.06% | 1.39% | 11.4% | — | — |
| NIFTY BANK INDICES:NIFTY BANK | 53813.6 | +0.87% | 1.51% | 16.77% | — | — |
RELIANCE NSE:RELIANCE | 1321.0 | +0.61% | 2.09% | 18.98% | 22,735,572 | 1.7 bps |
COALINDIA NSE:COALINDIA | 472.0 | +0.43% | 2.48% | 31.31% | 24,297,600 | 2.01 bps |
NIFTY 50 INDICES:NIFTY 50 — structure & events
| Window | Return | Range | Realized Vol | Volume | Buy/Sell |
|---|---|---|---|---|---|
| open_drive | +0.17% | 0.38% | 13.99% | — | — |
| morning | -0.14% | 0.47% | 9.82% | — | — |
| midday | +0.94% | 1.00% | 12.27% | — | — |
| afternoon | -0.23% | 0.48% | 11.01% | — | — |
| close | +0.30% | 0.44% | 9.74% | — | — |
NIFTY BANK INDICES:NIFTY BANK — structure & events
| Window | Return | Range | Realized Vol | Volume | Buy/Sell |
|---|---|---|---|---|---|
| open_drive | +0.17% | 0.63% | 19.38% | — | — |
| morning | -0.40% | 0.60% | 16.21% | — | — |
| midday | +1.20% | 1.44% | 17.55% | — | — |
| afternoon | -0.41% | 0.54% | 15.34% | — | — |
| close | +0.29% | 0.44% | 14.0% | — | — |
Momentum expansions (>3σ impulse with 5-min follow-through):
| Time | Impulse | z | 5-min follow-through |
|---|---|---|---|
| 12:45 | +0.21% | 3.1σ | +0.35% |
Reversals (local extremum with measured retracement):
| Time | Type | Level | Prior move | Reversal move |
|---|---|---|---|---|
| 10:27 | top | 53475.9 | +0.43% | -0.34% |
RELIANCE
NSE:RELIANCE — structure & events
Quoted spread 1.7 bps (median 1.6); book ask-heavy (-0.179); session flow net buy (buy/sell 1.987).
| Window | Return | Range | Realized Vol | Volume | Buy/Sell |
|---|---|---|---|---|---|
| open_drive | +0.32% | 1.06% | 23.43% | 2,682,899 | 1.133 |
| morning | -1.32% | 1.33% | 15.31% | 5,054,497 | 1.115 |
| midday | +1.72% | 1.82% | 17.61% | 4,806,133 | 1.861 |
| afternoon | -0.69% | 1.11% | 21.17% | 4,581,551 | 1.468 |
| close | +0.55% | 0.69% | 17.37% | 5,610,492 | 1.987 |
Momentum expansions (>3σ impulse with 5-min follow-through):
| Time | Impulse | z | 5-min follow-through |
|---|---|---|---|
| 13:12 | +0.15% | 3.0σ | +0.14% |
Volume spikes (≥4× rolling-median minute volume):
| Time | Volume | × median |
|---|---|---|
| 09:56 | 210,352 | 7.2× |
| 10:56 | 143,953 | 4.2× |
| 11:35 | 95,332 | 4.4× |
| 11:43 | 145,838 | 5.4× |
| 12:23 | 130,005 | 5.4× |
| 12:29 | 129,242 | 4.5× |
COALINDIA
NSE:COALINDIA — structure & events
Quoted spread 2.01 bps (median 1.91); book ask-heavy (-0.060); session flow net sell (buy/sell 0.254).
| Window | Return | Range | Realized Vol | Volume | Buy/Sell |
|---|---|---|---|---|---|
| open_drive | -0.74% | 1.98% | 48.97% | 3,926,068 | 0.637 |
| morning | +0.59% | 1.94% | 34.13% | 7,767,396 | 0.473 |
| midday | +0.26% | 0.87% | 21.97% | 3,064,473 | 0.319 |
| afternoon | +0.40% | 0.76% | 20.97% | 2,668,001 | 0.339 |
| close | -0.04% | 0.62% | 30.44% | 6,871,662 | 0.254 |
Reversals (local extremum with measured retracement):
| Time | Type | Level | Prior move | Reversal move |
|---|---|---|---|---|
| 11:26 | top | 472.4 | +0.52% | -0.86% |
| 11:52 | top | 471.85 | +0.49% | -0.61% |
| 15:01 | top | 473.65 | +0.50% | -0.54% |
Volume spikes (≥4× rolling-median minute volume):
| Time | Volume | × median |
|---|---|---|
| 10:01 | 204,061 | 4.1× |
| 10:55 | 174,490 | 4.0× |
| 11:45 | 151,172 | 4.6× |
| 12:30 | 127,706 | 5.7× |
| 12:50 | 146,269 | 4.9× |
| 13:39 | 133,265 | 4.7× |
Cross-instrument correlation (1-min returns)
| NIFTY 50 INDICES:NIFTY 50 | NIFTY BANK INDICES:NIFTY BANK | RELIANCE NSE:RELIANCE | COALINDIA NSE:COALINDIA | |
|---|---|---|---|---|
| NIFTY 50 INDICES:NIFTY 50 | 1.00 | 0.85 | 0.54 | 0.21 |
| NIFTY BANK INDICES:NIFTY BANK | 0.85 | 1.00 | 0.43 | 0.06 |
RELIANCE NSE:RELIANCE | 0.54 | 0.43 | 1.00 | 0.08 |
COALINDIA NSE:COALINDIA | 0.21 | 0.06 | 0.08 | 1.00 |
Methodology
All figures are computed deterministically from full-mode tick data captured live on June 2, 2026 (4 instruments) — not end-of-day OHLC. The pipeline is reproducible: the same session re-run produces identical numbers.
- Realized volatility — stdev of 1-minute log returns, annualised by √(252 × 375).
- Quoted spread (bps) —
(ask − bid) / mid × 10⁴, per-minute then session mean (two-sided book only; indices excluded). - Book imbalance —
(bid_qty − ask_qty) / (bid_qty + ask_qty)at top of book; +ve = bid-heavy. - Buy/sell ratio — session-cumulative
total_buy_qty / total_sell_qtyat the close. - Open interest — Zerodha
oi, per-minute maximum (options only). - Momentum expansion — 1-min return > 3σ of its trailing 20-min distribution and extending ≥ 50% as far over the next 5 minutes.
- Reversal — local extremum (10-min lookback/lookahead), ≥ 0.4% prior move and ≥ 0.3% retrace.
import numpy as np
logret = np.log(close / close.shift(1)).dropna()
realized_vol_pct = logret.std(ddof=0) * np.sqrt(252 * 375) * 100Backtests are run through alphabench's RaptorBT engine over the same instruments.