# Stocks that gap at the open do not reverse during the day

> Shorting stock perpetuals with the biggest overnight gains and buying the biggest losers from the open to the close lost 15.2 bp per day on a broad panel, against a required gain of 30 bp.

E876 · Verdict: KILL · Cause: No signal · Market: Equities & volatility · Mechanism: Behavioural · Horizon: 1d · Tested: October 2026

Source: https://alphanotfound.eu/experiments/E876-overnight-moves-do-not-reverse-intraday

A common belief says retail investors pile into attention-grabbing stocks at the opening auction, lifting the open, and that the move fades during the day. We ranked US single-stock perpetuals by their overnight return each weekday, bought the bottom third and shorted the top third from 09:40 to 15:55 New York time. On the broad panel the spread lost 15.2 bp per day over 81 validation days (t = -0.71), and on a 9-name subset it lost 14.3 bp (t = -1.18). The 22 bp round-trip cost was never covered, the sign points the wrong way, and the daily noise was too large to see a 30 bp effect.

## Key numbers

- **Broad panel, validation:** -15.2 bp (gross long-short spread per day, 81 days, t = -0.71)
- **9-name subset, validation:** -14.3 bp (gross per day, t = -1.18; kill line was 22 bp)
- **Round-trip cost:** 22 bp (4 legs at 5 bp plus 0.5 bp each, per $1 on each side)
- **Required to pass:** +30 bp (gross, broad panel, with t of at least 2.5)

## The idea being tested

**Belief:** Stocks that jump overnight are pushed up at the open by retail buying, and give the move back by the close.

**Why people believe it:** People argue that retail investors place market orders at the open for stocks that made the news, so the opening price overshoots and the day then erodes it. The mechanism is taken from an academic study of attention-driven overnight buying (2012); this test applies it to a short sample of stock perpetuals rather than to the stocks themselves.

**Why it would persist:** People argue that the move is too small and too short-lived to arbitrage: it has to be traded every day, in many names, at a cost close to the size of the effect.

## How it was tested

Each US trading day we measured every stock perpetual's return from the previous 16:00 New York close to 09:35 the next morning, using the venue's index price, which tracks the cash market while it is open. Names were ranked by that overnight move relative to the daily average. We bought the bottom third and shorted the top third at 09:40 and closed both at 15:55, charging 22 bp for the round trip. The rule and its pass and kill lines were recorded with the test, before its first run, and the second half of the sample was held out to decide.

**Pre-registered:** yes

**Data:** 5-minute index and perpetual closes for US single-stock perpetuals (largest USD-margined crypto perpetual venue, public market-data archive; 5 minutes; 2026-04..2026-10 (9-name subset), 2026-05..2026-10 (broad panel))

**Universe:** Broad panel: all listed US single-stock perpetuals except non-US companies, ambiguous listings, crypto-linked names, control instruments, index ETFs, wrapper products and commodities; median 99 names per day in validation, and a day counts only with at least 15 names. Subset: 9 large, liquid US names, at least 6 per day. Weekdays that are US market holidays are skipped.

**Signal:** Overnight return = index close at the 09:35 New York bar close divided by the index close at the previous trading day's 16:00, minus 1, demeaned across the names of that day.

**Execution:** Broad panel: long the bottom third and short the top third of names, equal weight, $1 per leg. Subset: long the bottom 3 and short the top 3. Entry at the 09:40 perpetual close, exit at the 15:55 perpetual close, the same day. No hedge beyond the long-short construction.

**Costs:** 4 legs at 5 bp plus 0.5 bp each, 22 bp per round trip, subtracted from the daily spread. Funding is not modelled.

**Controls:** None. No earnings filter was applied, so nights with earnings announcements enter in both directions.

**Sample split:** Selection to 2026-06, validation from 2026-07 (81 days) to 2026-10. Validation decides.

**Pass criterion:** Broad-panel validation gross spread at least 30 bp with t at least 2.5 (days as units), and the 9-name validation net 95% interval above 0.

**Kill criterion:** Broad-panel validation gross spread at or below 0, or 9-name validation gross below 22 bp.

**Power:** Pre-registered: daily standard deviation about 60 bp, 80 validation days, minimum detectable effect about 19 bp (broad panel) and about 26 bp (subset). Realised daily standard deviations were 192 bp and 109 bp, which puts the minimum detectable effect at about 60 bp and 34 bp (2.8 standard errors).

## Result

**Why it was rejected:** The rule failed both pre-set tests: the broad-panel validation spread was below zero (-15.2 bp gross) and the 9-name validation gross (-14.3 bp) was below the 22 bp cost.

**Observations:** 81

**Net mean:** -37.2 bp

**95% interval:** -77.9 bp to +5.7 bp

**Median:** -37.7 bp

**Worst:** -413 bp

- Broad panel, validation (81 days, median 99 names): gross spread -15.2 bp per day (t = -0.71), which is -37.2 bp net of the 22 bp cost. Net median -37.7 bp, worst day -413 bp net (-391 bp gross). The net interval from resampling days is -77.9 to +5.7 bp.
- 9-name subset, validation (81 days): gross -14.3 bp per day (t = -1.18), -36.3 bp net, interval -60.1 to -12.5 bp net. Only 42% of days had a positive gross spread.
- Selection period: broad panel -40.3 bp gross over 28 days (t = -1.17), subset -3.0 bp over 57 days (t = -0.24). All four gross figures have the same sign, and none is distinguishable from zero.
- A negative spread (-15.2 bp broad panel, -14.3 bp subset) means the names with the largest overnight gains kept rising on average, which is continuation, not reversal. At t-statistics of -0.71 and -1.18 that reading is not established.
- Realised daily noise was about three times the pre-registered assumption (broad panel 192 bp against 60 bp), so the broad-panel validation interval (-55.9 to +27.7 bp) could not rule out an effect below about 28 bp.

### The spread is negative in every cell (bp)

Mean daily gross long-short spread (long the most negative overnight movers, short the most positive) with a 95% interval from resampling days. All four intervals include zero and sit far below the +30 bp pass line and the 22 bp cost.

|   | Mean | 95% low | 95% high |
| --- | --- | --- | --- |
| Broad panel, validation (81 days) | -15.2 | -55.9 | 27.7 |
| Broad panel, selection (28 days) | -40.3 | -104.8 | 27.8 |
| 9-name subset, validation (81 days) | -14.3 | -38.1 | 9.5 |
| 9-name subset, selection (57 days) | -3.0 | -28.3 | 21.3 |

### Cost makes every cell worse (bp)

Mean daily spread before and after the 22 bp round-trip cost. Gross is already negative, so the cost only deepens the loss.

|   | Gross | Net of 22 bp |
| --- | --- | --- |
| Broad panel, validation | -15.2 | -37.2 |
| Broad panel, selection | -40.3 | -62.3 |
| 9-name subset, validation | -14.3 | -36.3 |
| 9-name subset, selection | -3.0 | -25.0 |

### Daily noise swamps any effect (days)

Number of validation days by gross daily spread in bp. The broad panel is much wider than the subset, with a standard deviation of 192 bp against 109 bp, and both are centred slightly below zero.

| Bin | Broad panel (count) | 9-name subset (count) |
| --- | --- | --- |
| < -300 | 4 | 2 |
| -300..-200 | 7 | 1 |
| -200..-100 | 15 | 10 |
| -100..-50 | 8 | 18 |
| -50..0 | 12 | 16 |
| 0..50 | 14 | 14 |
| 50..100 | 4 | 10 |
| 100..200 | 7 | 8 |
| 200..300 | 5 | 1 |
| > 300 | 5 | 1 |

## Interpretation

**Why it failed (interpretation, not established):** No overnight-to-intraday reversal shows up. The point estimates lean towards continuation, but with t-statistics of -0.71 and -1.18 that is noise. One reading is that the opening prices of liquid US stocks are already efficient and carry no retail overshoot to give back; another is that overnight moves in this sample reflect news that is still being digested during the day. Neither is tested here. A further limit is that no earnings filter was used, so earnings nights, which inflate overnight moves in both directions, are mixed in.

**Lesson:** A cross-sectional spread built on a daily ranking of about a hundred names still has a very wide daily distribution: here 192 bp, three times what was assumed. Before reading a short sample as "no effect", the realised noise has to be checked against the effect size that the pass line requires; with this much noise, 81 days could not rule out an effect below about 28 bp (broad panel).

**Scope:** Covers US single-stock perpetuals on one large crypto perpetual venue, ranked by index-based overnight return, entered at 09:40 and exited at 15:55 New York time on weekdays, April to October 2026 (broad panel from May), at a 22 bp round-trip cost. The sample is under seven months long. It does not cover earnings-filtered nights, the cash stocks themselves or any other horizon.

## Reproducibility

**Steps:** 1) Collect 5-minute index and perpetual closes for US single-stock perpetuals, labelling each bar by its close time in New York time, and drop non-US, ambiguous, crypto-linked, control, index-ETF, wrapper and commodity names from the broad panel. 2) For each weekday that is not a US market holiday, compute index(09:35) / index(previous trading day 16:00) - 1 per name and demean it across names; require at least 15 names (broad panel) or 6 (9-name subset). 3) Rank by the demeaned overnight return; long the bottom third and short the top third (subset: 3 and 3), entering at the 09:40 perpetual close and exiting at the 15:55 close, and take the daily difference of the two legs' mean returns. 4) Subtract 22 bp; split at the start of 2026-07; compute the t-statistic with days as units and a 95% interval by resampling days; apply the pass and kill lines.

**Grade:** COMPLETE

---
AI-generated research, checked but not peer-reviewed. Historical, experimental research, not investment advice. Dataset Terms of Use: https://alphanotfound.eu/terms
