52-Week High Momentum
Long when price is within a threshold of the 52-week high — anchoring psychology as edge.
The Intuition
George and Hwang (2004) made a provocative finding: the 52-week high price is a powerful anchor in investor psychology. Stocks trading near their 52-week high tend to continue outperforming, even after controlling for standard momentum. The reason is not fundamental — it is behavioural. Investors use the 52-week high as a reference point and are reluctant to push prices above it, even when fundamental news warrants it.
The mechanism is anchoring bias (Kahneman and Tversky): when good news arrives for a stock already near its 52-week high, traders are reluctant to buy at "all-time highs." This underreaction allows the positive drift to continue gradually as the information is slowly incorporated. Once the price convincingly breaks above the 52-week high, the anchoring effect reverses — the breakout signals widespread consensus on the new fair value, accelerating the move.
This is a distinct signal from 12-month momentum (the Jegadeesh-Titman factor). Empirically, the 52-week high effect and the momentum factor have low correlation and each retains predictive power after controlling for the other. Portfolio managers often use both signals in combination for a stronger combined factor.
Key assumptions: (1) The anchoring effect is strong enough and persistent enough to generate positive returns after transaction costs. (2) The threshold_pct parameter correctly captures the "near the high" zone where the underreaction is concentrated. (3) The 52-week period (252 trading days) is the correct psychological reference window — Bhootra and Hur (2013) found that it is the specific 52-week high (rather than shorter or longer windows) that matters, consistent with anchoring to a widely-reported benchmark.
The strategy underperforms when "high" stocks experience large negative earnings surprises or sector rotation — the anchoring effect doesn't protect against fundamental deterioration. It also underperforms in strong bear markets where all stocks near 52-week highs are being sold as part of broad risk reduction. Combining the 52-week high signal with a quality filter (profitability, balance sheet strength) significantly reduces the failure cases.
The Math
Read this as a compact model summary: what the signal sees, what it ignores, and where fragility can creep in.
High52W(t) = max(Close[t-252 : t]) distance(t) = (High52W(t) - Close(t)) / High52W(t) Signal(t) = +1 if distance(t) < threshold_pct
Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
| threshold_pct | float | 0.05 | Max distance from 52W high to enter long (e.g. 0.05 = within 5%) |
Source Code
def run(ticker: str, start: str, end: str, **params) -> dict:
threshold_pct = float(params.get("threshold_pct", 0.05))
df = fetch_ohlcv(ticker, start, end)
high_52w = df["Close"].rolling(252).max()
distance = (high_52w - df["Close"]) / high_52w.replace(0, float("nan"))
pos = pd.Series(0.0, index=df.index)
pos[distance < threshold_pct] = 1.0
return run_backtest(df, pos, ticker=ticker, start=start, end=end,
strategy=METADATA["slug"], params={"threshold_pct": threshold_pct})
Further Reading
- George, T. & Hwang, C. (2004). The 52-Week High and Momentum Investing. Journal of Finance, 59(5), 2145–2176.
- Jegadeesh, N. & Titman, S. (1993). Returns to Buying Winners and Selling Losers. Journal of Finance, 48(1), 65–91.
- Bhootra, A. & Hur, J. (2013). The Timing of 52-Week High Price and Momentum. Journal of Banking & Finance, 37(10), 3773–3782.
When It Works / When It Fails
- Persistent bull markets with upward price momentum
- 52-week high proximity as a valid momentum proxy
- Low-churn environments with slow-moving signal changes
- Bear markets: long-only — no short side available
- Range-bound — many instruments near highs without conviction
- Choppy markets with frequent false signals near the threshold