QQQ intraday (open→close) return distribution after gap-up opens
QQQ gap-up mornings produce almost no systematic open→close edge: across N=441 gap-up days the mean intraday return is essentially zero (≈0.0025%) while a slight majority (54.65%) close higher, and the intraday low reaches or beats the prior close on about 60.3% of those days. Those headline facts mask an important nuance: the day’s behavior depends on gap magnitude.
We derived intraday_ret from minute bars aggregated to daily OHLC (regular-session only) and split gap-ups into terciles. Gap size and open→close return are weakly negatively correlated (r = -0.149, p ≈ 0.0017), so larger gap-ups tend to mean-revert more. The full analysis below shows the distributional detail, tercile breakdown, and charts that support these summary findings.
What's the typical intraday return distribution for QQQ after a gap-up open?
How this was measured
Filtered QQQ minute bars to US regular-session (Mon–Fri, 09:30–16:00 ET) and aggregated to daily OHLC. Computed gap_ret = open/prev_close − 1 and intraday_ret = close/open − 1. Analyzed the distribution of intraday_ret on gap-up days (gap_ret > 0), including continuation rate (fraction of positive intraday returns), full-gap-fill rate (low ≤ prior close), and the relationship between gap size and intraday return. Also split gap-up days into terciles by gap magnitude to compare intraday behavior across small/medium/large gaps.
The key numbers
Reading the numbers
441 of 751 trading days were gap-ups. On those gap-up days the median intraday return = 0.000807, the mean is essentially zero (0.0000245); 54.65% of gap-up days close higher intraday and 60.32% fully fill the gap. Gap size shows a weak negative association with intraday return (r = -0.149, p = 0.0017).
The charts
The histogram of 441 gap-up days is densely packed around zero intraday return, with the overall range from -0.05 up to 0.0235 and a mean near 0. That spread tells you typical moves after a gap-up are small, but the left tail reaches much larger declines than the right tail’s gains. The detail to watch is the asymmetric extremes: occasional sizable intraday sell-offs drive most of the negative range.
The scatterplot spans gap sizes from 0.0 to 0.0388 (mean gap 0.0052) against intraday returns from -0.05 to 0.0235 (mean 0.0). Points form a loose cloud with a slight downward tilt: the Pearson r = -0.1489 (p = 0.0017) indicates a statistically significant but small tendency for larger gap-ups to have lower intraday returns. In plain terms, bigger gap-ups are modestly more likely to fade intraday, but the effect is weak and there’s a lot of variation.
The box plot by tercile (each n=147) shows means of 0.0006 for small gaps, 0.0013 for medium gaps, and -0.0019 for large gaps, with large gaps producing the most extreme down moves (min -0.05) while medium gaps reach the highest intraday highs (max 0.0235). That pattern highlights that medium gap-ups tend to preserve small positive intraday returns, whereas the largest gap-ups are on average slightly negative and much more dispersed. Look at the wider spread in the large-gap bucket if you care about tail risk after a big jump at the open.
Gap-up tercile summary (intraday behavior)
| bucket | N | mean | median | std | frac_negative | full_fill_rate |
|---|---|---|---|---|---|---|
| Small gap-up | 147 | 0.0006 | 0.0016 | 0.0084 | 0.4082 | 0.8367 |
| Medium gap-up | 147 | 0.0013 | 0.0009 | 0.0084 | 0.4422 | 0.6122 |
| Large gap-up | 147 | -0.0019 | -0.0003 | 0.0107 | 0.5102 | 0.3605 |
The takeaway
After a gap-up open, QQQ’s typical open→close move is essentially zero on average: mean intraday return ≈ 0.0025% while the median is ≈ 0.08%, and 54.65% of gap-up days close higher (N=441 gap-up days). A majority of gap-ups (60.3%) see the RTH low reach or beat the prior close (a full gap-fill) at some point during the day. Gap size and intraday return are weakly negatively correlated (r = -0.149) and that relationship is statistically unlikely to be pure chance (p ≈ 0.0017), so larger gaps tend to mean-revert more. The tercile split makes this concrete: small gaps average about +0.06% intraday with an 83.7% fill rate, medium gaps ~+0.13% with a 61.2% fill rate, and large gaps average about -0.19% intraday with a 36.1% fill rate. Overall the signal is modest but real — a slight continuation bias overall, but a clear tendency for larger gap-ups to fade intraday. Practical takeaway: expect little average open-to-close alpha from a gap-up alone; small gap-ups more often grind higher or fully fill, while large gap-ups are the ones most likely to reverse intraday.
The fine print
- This uses RTH (09:30–16:00 ET) opens/closes; pre-market moves are not counted and can change the picture.
- Gap-up is defined as any open > prior close (no minimum threshold); applying a size cutoff (e.g., >0.5%) will change rates materially.
- Intraday volatility is large (tercile stds shown ≈0.84%–1.07%), so single-day outcomes are noisy despite aggregate tendencies.
- Window covers the available minute data (~36 months); regime or market-structure changes outside this window may alter results.