Context Analytics. A Bridgewise company
← All research
Sentiment Strategies·Nov 4, 2026 ·Koburn Weisman

Overnight Sentiment Momentum

Adding the overnight change in X (Twitter) S-Score to the pre-open S-Score is a strong predictor for the next session's open-to-close returns. The long–short decile spread is 20.8% a year, and restricting the portfolio selection to stocks with above-average S-Buzz widens the spread to 27.6% a year.

For research purposes only. This is a historical study of how sentiment measures relate to subsequent returns; not a trading model.

Scope: Price > $5 universe, Jan 2014 – Oct 2026, SPY open-to-close as the benchmark.

The Signal

The factor is the 9:10 am S-Score plus its change since yesterday's 3:40 pm reading. Context Analytics publishes S-Factors every minute, but for purposes of this study two sentiment snapshots are used: 9:10 am ET (pre-open) and 3:40 pm ET (pre-close).

\begin{gathered}
F_t = \text{S-Score}_{9:10,\,t} + \left(\text{S-Score}_{9:10,\,t} - \text{S-Score}_{15:40,\,t-1}\right) \\
\text{where } t = \text{today},\quad t-1 = \text{previous trading day}
\end{gathered}

S-Score(9:10, t) is the morning's sentiment score and S-Score(15:40, t−1) the previous trading day's pre-close sentiment score. Both the sentiment level and change get equal weight. F is computed from S-Score values and stocks are then sorted by F each day into quintiles or deciles. When the 15:40 reading for t−1 is missing (no sentiment data), the change is taken as zero.

A stock ranks highest when its sentiment is elevated at 9:10 and rose overnight. A positive score that is fading from yesterday afternoon ranks lower than a score at the same level with no overnight change. 

Methodology

ItemSetting
SentimentX (Twitter) S-Factors: 9:10 am ET data for day t and the 3:40 pm ET data for day t−1
UniverseUS stocks whose prior-day close was at least $5, with S-Volume ≥ 1 at 9:10 am
ReturnOpen-to-close on day t, adjusted prices
PortfoliosDaily cut points at every 20th percentile (quintiles) or 10th (deciles); equal weight, rebuilt daily; about 373 names per quintile, 186 per decile
SpreadTop bucket minus bottom bucket, daily
BenchmarkSPY open-to-close on the same days, compared with the long-only top bucket

Results

Average open-to-close return rises from the bottom bucket to the top. Over the full sample the decile spread is +20.8% a year at a Sharpe of 3.40. The long-only top decile earns more than SPY open-to-close (+9.0% vs +5.0%) and the bottom decile loses about 12% a year. Over the history the universe averages about 1,864 stocks a day, so each decile holds about 186 securities on an average day.

B58 backtest · deciles, price > $5 universe, Jan 2014 – Oct 2026

B58 backtest · all 10 deciles, daily open-to-close returns compounded, Jan 2014 – Oct 2026

Sentiment is predictive and influential when discussion is at its extremes. Stocks whose pre-open sentiment is strongly positive and rising (D10, and to a lesser degree D9) keep outperforming, and those strongly negative and falling (D1, D2) keep underperforming. The middle deciles hold stocks with close to neutral sentiment; they bunch together near zero and carry little predictive value.

B58 backtest · deciles, daily open-to-close returns compounded, Jan 2014 – Oct 2026

The top decile alone compounds to +166% against +71% for SPY open-to-close. The D10−D1 spread, with far lower volatility, compounds to +1,295%.

Year by year, deciles

The factor's D10−D1 Sharpe is positive in every year. The long-only top decile beat SPY open-to-close in 9 of 13 years.

YearFactor SharpeFactor spreadFactor top decileSPY
2026 (to 30 Oct)2.33+20.3%+12.4%+4.1%
20252.97+25.0%+10.4%+9.9%
20241.32+9.5%−7.8%+1.6%
20232.98+18.7%+15.4%+18.3%
20225.45+34.8%+15.5%−3.7%
20212.61+16.1%−8.1%+9.6%
20202.83+17.8%−4.4%+5.2%
20194.46+20.7%+28.2%+13.6%
20183.56+15.9%−15.4%−17.2%
20177.37+30.2%+16.8%+7.4%
20164.40+18.8%+30.8%+14.6%
20154.65+25.0%+11.2%−2.7%
20143.32+17.4%+12.1%+4.7%

Filtering on S-Buzz

Sorting the same factor only among stocks with S-Buzz ≥ 1 at 9:10 am widens the full-sample decile spread from +20.8% to +27.6% a year, although its Sharpe is slightly lower (3.28 against 3.40). S-Buzz measures how much a stock is discussed relative to the universe (1 is average). As a ranking input, S-Buzz has almost no direction for open-to-close returns. However, as a filter, it concentrates the selection to where there is enough conversation for the sentiment to mean something.

B58 backtest · deciles, price > $5 universe, Jan 2014 – Oct 2026

The filter mostly deepens D1 and lifts D10; the middle deciles stay noisy.

Portfolio metrics

StrategyBucketsAnn. returnCAGRVolSharpeSortinoMax DDHit rate
Overnight Sentiment MomentumQ5−Q1+15.8%+16.9%4.4%3.616.22−4.0%60.0%
Overnight Sentiment Momentum, S-Buzz ≥ 1Q5−Q1+19.9%+21.8%5.7%3.516.02−4.9%59.5%
Overnight Sentiment MomentumD10−D1+20.8%+22.9%6.1%3.405.81−5.2%59.5%
Overnight Sentiment Momentum, S-Buzz ≥ 1D10−D1+27.6%+31.4%8.4%3.285.69−9.0%59.1%
Overnight Sentiment MomentumTop quintile+7.2%+6.1%16.1%0.330.47−27.1%52.7%
Overnight Sentiment Momentum, S-Buzz ≥ 1Top quintile+9.0%+8.0%16.1%0.440.63−27.4%53.1%
Overnight Sentiment MomentumTop decile+9.0%+7.9%16.2%0.430.62−26.4%52.8%
Overnight Sentiment Momentum, S-Buzz ≥ 1Top decile+12.5%+11.7%16.7%0.630.92−26.5%53.1%
SPY open-to-close—+5.0%+4.3%12.9%0.240.34−24.6%53.9%

Conclusion

  • A simple, point-in-time construction. The factor weights the 9:10 am S-Score and its overnight change equally. The 9:10 file is delivered before the 9:30 open, so every input is known before the session it predicts.
  • The signal lives at the extremes. The predictive value comes from the outer buckets, where sentiment is strongly positive or negative. The middle buckets hold close to neutral sentiment and do not rank cleanly in any period, which is expected rather than a weakness of the factor.
  • A large, persistent spread. The D10−D1 spread earns +20.8% a year at a Sharpe of 3.40 over Jan 2014 – Oct 2026, its Sharpe is positive in every calendar year.
  • The long-only top decile beats the market. It earns +9.0% a year against +5.0% for SPY open-to-close and outperformed SPY in 9 of 13 years.
  • S-Buzz works best as a filter. Restricting the sort to stocks with S-Buzz ≥ 1 widens the decile spread to +27.6% a year and raises the top decile to +12.5% a year, at the cost of a slightly lower long–short Sharpe and fewer names per bucket.

Research purposes only. This document reports a historical backtest of the relationship between X (Twitter) sentiment measures and subsequent stock returns. This is not a trading model as results do not include transaction costs. Past results do not indicate future performance.

More research
Oct 14, 2026 The Overnight Edge: Twitter Sentiment into the Close Oct 8, 2026 Turning Twitter Sentiment into a Monthly S&P 500 Portfolio Sep 2, 2026 Word Count Alpha by Section
Subscribe

New research, in your inbox.

One note when we publish something worth your time, written by the team that built the data, not marketing.

No spam. Unsubscribe anytime.
CadenceWeekly, at most
Written byThe research team, not marketing
Opt-outOne click, anytime

Test the data behind the research.

Request trial data