Market Breadth Is The Most Underrated Chart Pattern Filter
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.
Ready to try Chart Library?
Anchor any ticker + date — see what history says about your setup, with cohort statistics, feature attribution, and AI narrative.
Try it freeLearn the methodology
Chart Library is built on four canonical concepts. Read the pillars to understand what backs the numbers in this post:
Related Articles
Why we stopped backtesting our intelligence layer (and what we found instead)
Backtests are the right tool for trading strategies. They're the wrong tool for AI reasoning infrastructure. We tested Chart Library against itself: two identical Claude agents, one with our tools, one without. A blind LLM judge scored their reasoning across 50 out-of-sample scenarios. The agent with Chart Library won 50-0. Every reasoning dimension lifted. Paired t-statistic above 10 on every dimension. Here's how we got here.
We Mined 4M Chart Patterns. Here's the Cluster-First Paradigm That Came Out.
Traditional chart-pattern intelligence is anchor-first: take a (symbol, date), find its analogs. We tried the opposite — mine the V5 embedding space offline for clusters where forward returns were consistently positive (or negative) across train and test. Top 20 winning clusters and 20 losing clusters with full feature signatures, exposed as MCP tools. Backtested S8 strategy: Sharpe 0.90, max drawdown 6.6% (vs SPY 22.4%).
One Anchor Said -3.6%. 100 Anchors Said -0.5%. The Perils of Single-Anchor Decompositions.
Decomposing a cohort of 500 historical chart patterns for NVDA produced a striking slice: anchors formed inside an earnings window underperformed by -3.6 percentage points. We ran the same decomposition across 100 different anchors. The real population effect is -0.5pp, and half of it is an event-proximity artifact that also shows up on dividend dates. Here's the audit.