Quant Memo

52-Week High Momentum

Stocks trading near their 52-week high keep outperforming, because the round-number high acts as a psychological ceiling that makes investors slow to accept good news.

backtestUpdated 2026-07-13

Overview

This is one of the simplest cross-sectional signals in equities, and one of the most stubbornly persistent. Take a stock's current price, divide it by the highest price it reached over the last 52 weeks, and you get a number between 0 and 1. A stock at 0.98 is sitting right under its yearly high. A stock at 0.40 is deep in the wreckage.

The finding, first documented properly by George and Hwang, is that the stocks nearest their 52-week high go on to outperform the stocks far below theirs. That is counterintuitive to anyone raised on "buy low, sell high", and it is exactly why the effect survives.

What makes it interesting is that it is not just repackaged momentum. The 52-week high signal has historically explained returns that plain 12-month momentum missed, which suggests the anchor itself is doing work.

Thesis (why the edge exists)

The story is anchoring, one of the best-documented biases in behavioural finance.

Investors use the 52-week high as a mental reference point. When a stock approaches that high on genuinely good news, people hesitate. It "feels expensive". It "already had its run". So they sell into strength or simply do not buy, and the price does not fully absorb the good news. The information leaks into the price slowly over the following months, and that slow leak is your return.

The same thing happens in reverse near the lows. A stock crashing on bad news gets held by investors who anchor on the old high and refuse to accept the loss. The bad news is under-reflected, and the stock keeps drifting down.

In plain terms: a round number on a chart makes people behave irrationally, and the irrationality is persistent enough to trade.

Strategy logic

  • Compute the ratio. For each stock, take the current adjusted close and divide it by the highest adjusted close over the trailing 52 weeks. Call this the nearness score.
  • Rank. Sort the universe by nearness score each month.
  • Trade. Buy the top decile, the names hugging their highs. Short the bottom decile if you can, or simply exclude them from a long-only book.
  • Hold. A holding period of three to six months is typical. Use overlapping tranches so that each month you are only rolling one third or one sixth of the book.

Parameters (knobs)

  • Lookback for the high: 52 weeks is the canonical version because it is the number printed in every newspaper and on every broker screen, which is precisely why it anchors people. Shorter windows work less well, which is itself evidence for the anchoring story.
  • Formation to holding: monthly formation with a 6-month hold is the standard; monthly hold is punchier and far more expensive.
  • Portfolio slice: deciles for the sharpest spread, quintiles for capacity.
  • Volume confirmation: optionally require above-average volume on the approach to the high, filtering out drifting-up-on-nothing names.
  • Neutralisation: none, sector-neutral, or fully factor-neutral. Sector-neutral is the sensible default.

Portfolio construction

Rank within sector, not across the whole market. Otherwise in any given month you simply own whichever sector has been trending, and you have built an expensive sector rotation fund by accident.

Equal weight inside each leg is the standard academic construction. For real money, weight by liquidity, and cap single names at 1 to 2 percent.

Beta will drift high on the long leg, because names near their highs tend to be higher-beta names. If you care about being market-neutral, you must explicitly hedge that out rather than assume the legs cancel.

Costs, capacity and turnover

The signal is cheap to compute and therefore widely used, which shows up in execution. When a name breaks to a new 52-week high, screens light up across the industry and you are queuing behind other systematic buyers.

Turnover depends heavily on the holding period. A one-month hold on deciles can run 300 percent a year and will not survive realistic costs in anything but mega-caps. A six-month overlapping hold cuts that dramatically and is the version worth building.

Capacity is respectable in large caps because the names near their highs tend to be the ones with attention and volume. That is a nice property: unlike many anomalies, the signal is not concentrated in illiquid junk.

Backtest design checklist

  • Adjusted prices only. A stock that did a 2-for-1 split will show a fake 50 percent drop from its "high" if you use raw prices. This one bug destroys the entire signal.
  • Minimum history. Newly listed names have no 52-week high; excluding them is correct, but be aware you are excluding IPOs, which behave differently anyway.
  • Survivorship. Include delisted names. The bottom decile is full of companies that eventually went to zero, and if you delete them you have deleted the short leg's whole return.
  • Overlap accounting. If you use overlapping tranches, make sure the backtest actually models them rather than silently rebalancing the whole book each month.
  • Correlation check against price momentum. Run both. If the two signals are highly correlated in your universe, you are paying for the same exposure twice.
  • Crash windows. March to May 2009, and the spring of 2020. Look specifically at those months.

Common failure modes

  • Momentum crash. After a violent market bottom, the deep-below-their-high names rocket and the near-the-high names lag. The short leg does the damage.
  • Sector concentration. Without neutralisation, the top decile can be 60 percent one sector. That is not a stock-picking strategy, that is a sector bet with extra steps.
  • Split and corporate-action bugs. The most common silent killer in this strategy. Test it explicitly.
  • Whipsaw in range-bound markets. In a market with no trend, names bounce in and out of the top decile and you churn.
  • Decay. This anomaly has been published since 2004. Post-publication returns have been weaker. Plan for that rather than hoping it is not true.

Variants

  • New-high breakout. Only buy stocks making an actual new 52-week high in the last N days, rather than merely being near one. Fewer names, sharper signal, higher turnover.
  • Nearness to high combined with quality. Screen the top decile for profitable companies only. This removes a lot of speculative junk riding a hype wave.
  • Distance from the low. The mirror signal. It contains related but not identical information.
  • Industry 52-week high. Apply the same logic to industry indices and rotate sectors instead of stocks. Much lower turnover, much lower capacity constraint.
  • Volatility-scaled version. Cut exposure when momentum's realised volatility is high, the standard momentum crash defence.

Our notes and suggestions

This is a good first cross-sectional strategy to build because the signal takes ten lines of code and the failure modes teach you everything important: corporate actions, survivorship, sector concentration and turnover. Build it, then immediately build the plain 12-1 momentum version and correlate them. If you are honest about that comparison, you will learn more from the diff than from either backtest on its own.

Do not expect the published numbers. Expect something meaningfully worse after costs, and be pleasantly surprised if it holds up.

Our Notes & Suggestions

See the "Our Notes" subsection in the body above for practical guidance, gotchas, and best practices. Always validate regime assumptions and transaction cost assumptions before scaling.

Implementation Checklist

  • Universe: liquid listed names, minimum price floor and minimum average daily traded value to keep penny stocks out
  • Compute the 52-week high from split and dividend adjusted prices, not raw prices
  • Signal: current price divided by the 52-week high, a number between 0 and 1
  • Rank cross-sectionally each month; long the top decile (closest to the high), short or avoid the bottom decile
  • Require the stock to have at least 52 weeks of price history, otherwise exclude it
  • Rebalance monthly with a holding period of 3 to 6 months and overlapping tranches to smooth turnover
  • Sector-neutralise the ranking so the book is not just a bet on whichever sector is trending
  • Model costs: this signal concentrates in the same names as price momentum, so expect crowded execution
  • Backtest the crash windows, especially the months right after a market bottom
  • Compare against plain 12-1 momentum; if the two are 0.8 correlated, you have not built anything new

Related

ShareTwitterLinkedIn