Price Momentum Screener

Each S&P 500 stock scored against SPX on its own history

Every S&P 500 stock scored against SPX, the S&P 500 index as measured by SPY, on its own history only, with 12 momentum measures beside it, each published on its own. Sort and filter on whichever you trust.

As of
—
Prices through
—
Universe
—
Scored
—
Measures · readings
12 · 42
Daily commentary · October 29, 2026

Charles River Laboratories (CRL) again leads Price Momentum on October 29, 2026, as healthcare names fill the top ranks

On October 29, 2026, using prices through October 28, 2026, Charles River Laboratories (CRL) has the highest score at 99.0, little changed from 99.1 on October 28, 2026. Healthcare stocks dominate the top scores: Revvity (RVTY), Labcorp (LH), Waters Corporation (WAT), Amgen (AMGN) and GE HealthCare (GEHC) also appear. Xylem Inc. (XYL) has the lowest score at 0.6, and industrials make up most of the lowest scores. Of 503 S&P 500 members, 493 are scored today.

These scores describe each stock's past returns against SPX relative to its own history and do not show why prices moved or what they will do next.

This analysis was created with the assistance of large language model technology. It is written from this page's numbers for the day and describes the results; it is not a forecast or investment advice.

Past daily commentary

How to read the score

Score 80: over the last week to year, this stock is beating SPX by more than it did on 80% of its own past days (on average over the 5 periods). 50 is typical for this stock. 20: it is doing worse against SPX than on 80% of its past days.

How it is built: for each of 5, 21, 63, 126 and 252 trading days, the stock's return minus SPX's return over the same days (the "vs SPX" columns). Each is placed among the same stock's own values on every earlier day, at least 504 of them (about two years), as a percentile. The score is the average of the 5 percentiles. No other stock enters a stock's score, so two scores of 80 mean the same thing for each stock's own history, not the same return. A stock with less history is shown without a score.

Every measure the engine computes, in its own units. Tick to add it as a sortable column.

After a stock beats the S&P 500, does it do better than usual? Each stock on its own history

Exploratory: results found in discovery, on each stock's history up to July 28, 2026. The latest 63 trading days are held back to confirm chosen results later; nothing here is confirmed yet.

Every number is the stock's return minus beta × the S&P 500's (SPX) return over the following days, with the stock's beta measured over the year before. For each rule we compare the days the rule was true with the stock's other days: after beating beta × SPX over a past period against after trailing it (periods from 1 day to 5 years back), after its industry peers beat it against after they trailed it, after a score of 80 or more (or 20 or less) against all its other days. The benchmark line is zero: no difference. Only days on which the stock was in the S&P 500 count.

Found in discovery

None. Of the 300,411 results tested in 1039 stocks, none showed a difference from the stock's other days large enough to pass the correction for everything tested.

By sector

Stocks with at least one result found in discovery, per sector. Sectors are not distinguishable (chi-square test p = 1.000).

SectorStocksWith a resultShare
Communication Services6000%
Consumer Discretionary11800%
Consumer Staples6600%
Energy6400%
Financials14000%
Health Care11700%
Industrials13200%
Information Technology14000%
Materials5800%
Real Estate4200%
Utilities5300%

Everything tested

1278 stocks that were ever in the S&P 500; 1,311,228 results (17 rules, 12 periods ahead and 6 windows per stock), 300,411 with enough cases to test (at least 30 on each side, with no two cases sharing a day), 0 found in discovery. Every result with its outcome: momentum_stock_backtest_all_tests.csv; every stock: momentum_stock_backtest_stocks.csv.

How the test was made sound. Earlier versions compared stocks with each other, with baskets, with shuffled copies of their own history and with SPX alone; they were retired before any result was published. Now each rule is compared with the same stock's other days, so a stock that beats SPX in general does not count as a pattern, and only the days it was in the index count. The cases of a result are spaced so that no two share a day. Every result of the run is corrected together (Benjamini-Hochberg, at most 1 in 10 found results expected to be luck). Before anything is shown, the same test runs on simulated stocks with no pattern (at most 1% of their results may pass, and between 3% and 7% may reach p 0.05) and with planted patterns (every one must be found, with the right sign).

Stay current

The momentum scores, in your inbox

The day's highest and lowest scores against SPX across the S&P 500, each stock measured on its own history — daily, or a weekly summary. No noise, no marketing. Confirm your email and you're in.

Only email is required. Double opt-in. Unsubscribe anytime. We never share your details.

Beside the score: the 12 measures give 42 readings per security (6 measures at each of 6 lookback windows), and 6 research measures from the momentum literature (short- and long-term reversal, 6-1, 12-7, volatility-scaled and residual momentum) are further columns. All are shown in their own units; none is part of the score. A stock whose latest price is older than the day's newest price is not scored that day ("Price not updated"): its score would carry an older date.

The score and the measures describe what prices have already done. They are not a forecast, and nothing here is investment advice. Prices are split- and dividend-adjusted (total return).

Research and educational content only. Not investment advice, not an offer or solicitation, and not a recommendation to buy or sell any security. Momentum measures describe past prices; past results do not guarantee future results.