Skip to content
All library documents

Assessing Claims About S&P 500 Overnight Returns

Article Quant Q&A · Author: user31928

Summary

The document examines a claim that investing in the S&P 500 outside regular trading hours is more profitable. It challenges a simple argument based on the share of the calendar spent outside trading hours, since time proportions alone do not establish how returns are distributed. The replies emphasize that the claim needs precise definitions: the instrument could be SPY or an S&P futures contract, trading-hour boundaries differ, transaction costs matter, liquidity may be weaker near the open, and price gaps need careful treatment.

One contributor reports an analysis of SPY round-lot trade data from January 2020 to January 2021. The reported compounded overnight return factor exceeded one, while the intraday factor was below one; monthly figures also show variation rather than a uniform pattern. This is a limited sample and a particular data and session definition, not proof of a persistent, investable effect. The discussion flags execution costs and measurement choices but does not provide a full cost-adjusted strategy test.

Key ideas

  • The fraction of time outside regular hours does not determine the fraction of returns earned then.
  • An overnight-return claim depends on whether the instrument is SPY, futures, or another proxy.
  • Session boundaries, transaction costs, liquidity, and gaps can materially affect the comparison.
  • A reported SPY sample showed stronger overnight than intraday compounded returns over its stated period.
  • The sample and methodology do not establish that the pattern is durable or profitable after execution costs.

Tags

Full text
# Is it more profitable to invest in the S&P 500 outside regular trading hours?


# Is it more profitable to invest in the S&P 500 outside regular trading hours?












Is https://www.nytimes.com/2018/02/02/your-money/stock-market-after-hours-trading.html correct? I don't think so because it doesn't consider dark pools?

Of note, each business day has only 6.5 trading hours. Adjusting for holidays, there are 253 trading days per year, so 1644 trading hours. There are 8760 total hours in a year, so trading hours is only 19% of total time. Thus, we'd expect 81% (100 - 19)% of the gains to happen outside trading hours anyway.

## Answer by user42108 (score 3)

https://quant.stackexchange.com/a/61124

This "result" has been widely circulated. I have yet to see it well defined and properly tested and I'm not sure it makes sense to discuss it 'as is'.

- What is the "S&P 500"? SPY? ES? Something else?

- What are "regular trading hours"? Cash equity hours? Regular trading hours for ES are very different (CME link)

- How are TC accounted for? TOB depth for ES is historically low and that is highly likely to be worse at the open

- Are gaps properly accounted for? Possible there is drift in ES between 1615 and 1630 ET

## Answer by Sergei Rodionov (score 2)

https://quant.stackexchange.com/a/61135

I have SPY tick data starting with January 22, 2020, and only round lot trades (no odd lots).

For the period between 2020-01-22 and 2021-01-22, the intraday return was actually negative. I am surprised myself at such a large difference.

```
| total_return | overnight_return | intraday_return |
|-------------:|-----------------:|----------------:|
|     1.157266 |         1.221520 |        0.946561 |
```

```
SELECT EXP(SUM(LN(r_open_prev_open))) AS total_return,
    EXP(SUM(LN(r_open_prev_close))) AS overnight_return,
    EXP(SUM(LN(r_close_open))) AS intraday_return
FROM (
  SELECT symbol, datetime, open() AS open, close() AS close, 
  lag(open) AS prev_open, lag(close) AS prev_close, 
  open/prev_open AS r_open_prev_open, open/prev_close AS r_open_prev_close,
  close/open AS r_close_open
  FROM atsd_trade
    WHERE symbol = 'SPY' AND exchange = 'NYSE'
    AND datetime BETWEEN '2020-01-22' AND '2021-01-22'
    AND date_format(time, 'HH:mm') BETWEEN '09:30' AND '16:00'
  GROUP BY exchange, class, symbol, period(1 DAY)
    ORDER BY exchange, class, symbol, datetime    
)
WITH TIMEZONE = 'US/Eastern', WORKDAY_CALENDAR = 'nyse'
```

If aggregated by calendar month, the overnight returns look equally convincing.

```
| datetime | total_return | overnight_return | intraday_return |
|----------|-------------:|-----------------:|----------------:|
| 2020-02  |     0.882875 |         0.951986 |        0.957978 |
| 2020-03  |     0.907309 |         0.874644 |        1.004299 |
| 2020-04  |     1.114797 |         1.094290 |        1.029876 |
| 2020-05  |     1.032704 |         1.049549 |        0.998744 |
| 2020-06  |     1.012900 |         1.031547 |        0.983585 |
| 2020-07  |     1.056605 |         1.037498 |        1.018330 |
| 2020-08  |     1.084898 |         1.047615 |        1.023042 |
| 2020-09  |     0.959388 |         0.992556 |        0.962858 |
| 2020-10  |     0.968266 |         1.004340 |        0.972955 |
| 2020-11  |     1.115508 |         1.113467 |        0.995743 |
| 2020-12  |     1.024667 |         1.026078 |        1.005985 |
| 2021-01  |     1.010356 |         1.007456 |        0.982219 |
```

Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)

This summary was written by Stratmill's research agent from the original; it is not a copy of the source.