The Metric
Market breadth = the percentage of stocks trading above their 50-day moving average. You can compute it for any universe on any day — we do it for US equities.
High breadth (80%+ above MA): broad rally, healthy participation, typical of bull markets.
Low breadth (30% or below): narrow tape, defensive sectors leading, typical of late bull markets or early bear markets.
The number doesn't require exotic data. A Python script against free daily bars can compute it. Yet most chart pattern work treats every pattern the same regardless of market breadth.
Our Data on Breadth × Pattern Outcomes
Across 16,438 forward-tested pattern predictions, bucketing by market breadth at the time of the signal:
- Breadth Q1 (low, ~30-40% above MA): bullish win rate 49.1%, bearish win rate 55.2%
- Breadth Q2: bullish 31.8%, bearish 76.6%
- Breadth Q3: bullish 30.5%, bearish 74.9%
- Breadth Q4 (high, ~60%+ above MA): bullish 29.1%, bearish 78.0%
The striking finding: bearish signals get MORE reliable as breadth gets higher. That seems backward — shouldn't bearish signals work best when the tape is weak?
Why Bearish Signals Work Better at High Breadth
The intuition runs backward, but the data is consistent with a specific mechanism: when breadth is broad (Q4) but individual names are triggering bearish pattern signals, those specific names are showing idiosyncratic weakness in an otherwise-strong tape. They're the stocks that missed the party — usually because fundamentals or sector rotation is working against them.
When breadth is already low (Q1), everything is selling off together. A bearish pattern signal doesn't distinguish between 'this stock is uniquely weak' and 'the whole market is weak.' Signal-to-noise collapses.
The counterintuitive rule that falls out of this data: BEARISH signals on strong-breadth days are worth taking more seriously than bearish signals on weak-breadth days.
The Bullish Side Is More Intuitive
Bullish signals behave as you'd expect — they're most reliable when breadth is LOW (49.1% in Q1 vs 29.1% in Q4). This matches academic work on mean reversion: when the tape is washed out, bullish setups on individual names have room to run because the crowd positioning is already bearish.
Note the asymmetry though: bullish Q1 at 49% is close to coin-flip. Bearish Q4 at 78% is a real edge. The pattern-match system is much better at identifying weakness than strength in our current dataset.
How to Use This
Two practical applications:
- Before acting on any bullish pattern signal, check market breadth. At Q4 breadth, you might want to pass — 29% win rate is not an edge.
- Before acting on any bearish pattern signal, check market breadth. At Q4 breadth, the signal is stronger. At Q1, much of the weakness may already be priced in.
Our /api/v1/market-context endpoint includes market breadth as part of the regime snapshot. Chart Library's own regime filter on search results does this automatically — toggle 'Regime-matched only' and matches are filtered by regime similarity including breadth.
Caveats
This study covers our current forward test dataset (March-April 2026), which was a bearish period. The breadth-conditioned effect is real in that sample but needs multi-regime validation.
Breadth is a regime dimension, not a signal. Don't use it alone — use it as a filter on pattern signals that have other information content.
Past patterns do not guarantee future results.