Tool Tutorials

Market Breadth Tutorial

Chapter 1

Foundations of Market Breadth

An index indicates where price traveled. Market breadth measures how many constituents participated in the move.

Cap-Weighting vs. Equal Participation

Most benchmark equity indices (such as the S&P 500 or Nasdaq 100) are market-capitalization weighted. In a cap-weighted index, a $4 trillion mega-cap technology firm carries significantly higher index influence than a $4 billion small-cap company.

Consequently, an index can record positive performance while a majority of its underlying stocks decline, a phenomenon hidden by headline index levels alone.

Market breadth removes weight adjustments by assigning exactly one vote per security:

Daily Market Breadth = Σ Direction Sign(Δ Closei)
Cap-Weighted Index Sized by market capitalization Mega-Cap Firm A +2.5% (Drives Index Green) Stock B −1% Stock C −1% Index closes: GREEN Equal-Weighted Breadth One security = one vote A (+1) B (−1) C (−1) 1 advancer vs 2 decliners Breadth: BEARISH (33.3% Advance)
The same three stocks under two methodologies. Cap-weighting can print a green index while equal-weight breadth is already bearish.

Building the Sample & Unchanged Securities

Breadth calculations isolate US common equities, filtering out ETFs, closed-end vehicles, real estate investment trusts (REITs), and preferred instruments to prevent double-counting.

  • Stocks Measured (N): ~3,400 US common stocks (rebuilt daily based on active listings).
  • Advancers (A): Securities where Closet > Closet−1.
  • Decliners (D): Securities where Closet < Closet−1.
  • Unchanged (U): Securities where Closet = Closet−1.
Stocks Measured (N) = A + D + U
Advancing Share (%) = (A ÷ N) × 100    Declining Share (%) = (D ÷ N) × 100
The Unchanged Slice & Percentage Sums

Example Session (July 20, 2026):

  • Stocks Measured (N): 3,428 Common Stocks
  • Advancers (A): 1,111 (32.4%)
  • Decliners (D): 2,279 (66.5%)
  • Unchanged (U): 38 (1.1%)

SUM: 32.4% + 66.5% = 98.9% (Missing 1.1% represents unchanged stocks).

Reason: Unchanged securities reside in the denominator (N) but do not belong to the numerator of either Advancers or Decliners.

Open Market Breadth
Chapter 2

Quantitative Snapshot Metrics & Percentiles

The snapshot dashboard summarizes breadth mechanics for the most recently settled trading session.

MetricValuePercentile Ranking Context
Advancers Count1,111 (32.4%)13th Percentile of 92 Stored Sessions
Decliners Count2,279 (66.5%)87th Percentile of 92 Stored Sessions
Daily A/D Ratio0.48713th Percentile (Weak Daily Participation)
5-Day Trailing A/D0.81228th Percentile (Smoothed Rolling Baseline)
10-Day Trailing A/D0.94542nd Percentile (Medium-Term Trend Baseline)
52-Week Highs80 SecuritiesPrimary Extremes
52-Week Lows81 SecuritiesPrimary Extremes
Breadth Streak2 Consecutive DownNet-decline sessions
Market Breadth Snapshot Dashboard (July 20, 2026 Benchmark)

Daily A/D Ratio Mechanics

Daily A/D Ratio = Advancers Count (A) ÷ Decliners Count (D)
Trailing k-Day A/D Ratio = (Σ At) ÷ (Σ Dt) over t = 1…k
  • A/D Ratio > 1.0: Net positive market participation (more stocks advancing than declining).
  • A/D Ratio < 1.0: Net negative market participation (more stocks declining than advancing).

Evaluating Context with Percentile Rankings

Raw counts vary across market regimes. To convert absolute breadth metrics into actionable intelligence, each raw output is evaluated against its stored historical distribution using a percentile rank:

PR = (L + (0.5 × S)) ÷ Stotal × 100 L = sessions with a lower value; S = sessions equal to the current reading; Stotal = total stored sessions.
Reference PointAdvancing Share
Weakest Session16.0%
July 20, 2026 (13th Percentile)32.4%
Median Session51.2%
Strongest Session84.4%
Historical Distribution of Advancing Share (92 Stored Sessions Sample)
Interpreting Percentiles
A raw Advancing Share of 32.4% becomes meaningful when evaluated against historical data: sitting at the 13th percentile confirms that only 1 out of every 8 historical sessions exhibited weaker breadth performance.
Chapter 3

Divergence: All Stocks vs. S&P 500

The dashboard provides a global toggle between two sets of stocks: All Stocks (~3,400 securities) and S&P 500 (~500 securities).

How the Two Sets Differ
  • All Stocks: Represents broader market structure (Small, Mid, and Large Cap equities). High sensitivity to institutional risk sentiment.
  • S&P 500: Represents large-cap equities. Directly aligns with macro benchmark indices.

Move Size & Volatility Variance

While both sets often agree on overall market direction on a given day, they exhibit distinct volatility behaviors due to market capitalization differences.

Performance & Move Size MetricAll StocksS&P 500
Average Share Moving ≥ 3% (Daily)27.2%15.7%
July 20, 2026: Stocks Moving ≥ +3%6.0%1.2%
July 20, 2026: Stocks Moving ≥ −3%12.4%3.4%
Historical Volatility & Move Size Comparison (Shared Sessions)

Analytical Takeaways

  1. The Small-Cap Volatility Effect: Smaller capitalization stocks experience larger average price swings. Across shared sessions, over a quarter (27.2%) of the All Stocks set moves by ≥ 3% on an average day, compared to only 15.7% of S&P 500 constituents.
  2. Context-Driven Filtering:
    • Use All Stocks to measure broad economic market participation and macro liquidity shifts.
    • Use S&P 500 to evaluate participation relative to large-cap equity index benchmarks.
All Stocks S&P 500 only
Chapter 4

Cumulative Breadth & Divergence Visuals

Below the snapshot panel, dual charts illustrate participation dynamics: the A/D Ratio Tracking Chart and the Cumulative Breadth Divergence Chart.

Cumulative Advance-Decline Line Formula

The Cumulative Breadth line tracks running net participation over time:

Net Breadtht = At − Dt
Cumulative A/D Linet = Cumulative A/D Linet−1 + Net Breadtht
Cumulative High/Low Linet = Cumulative High/Low Linet−1 + (New Highst − New Lowst)
Index Level new high Cumulative Breadth Bearish divergence Index higher, breadth turning down
The index continues higher while cumulative breadth rolls over. That split is a bearish breadth divergence: a narrowing advance.

Identifying Breadth Divergences

Cumulative breadth measures total participation momentum rather than absolute stock prices. Comparing its slope to benchmark price indices highlights underlying market health:

  • Confirmed Bullish Expansion: Both the benchmark index and the Cumulative A/D Line make consecutive higher highs. This confirms broad participation across market sectors.
  • Bearish Breadth Divergence: The benchmark index makes a new high while the Cumulative A/D Line flattens or forms lower highs. This indicates a narrowing advance, where fewer large-cap stocks are driving index gains while the broader market weakens.
Divergence Timing Warning
Breadth divergences indicate underlying participation health, not explicit timing signals. Bearish divergences can persist for extended periods before price index reversals occur.
Chapter 5

Daily History Table & Extreme Breadth Flags

The daily history table provides a row-by-row log of recorded trading sessions, incorporating move-size breakdown metrics and extreme participation tags.

Date Advancers Decliners A/D Ratio Net Breadth Adv % Tag Signal
20-Jul-20261,1112,2790.487−1,16832.4%Standard Session
15-Jul-20262,8105405.203+2,27082.0%THRUST (≥80% Adv)
02-Jun-20264102,9500.139−2,54012.0%WASHOUT (≤20% Adv)
Daily Breadth History Log (Sample Excerpt)

Extreme Participation Flags: Thrust & Washout

Extreme breadth events occur when market participation becomes unified across sectors:

Breadth Thrust Flag ⇒ (At ÷ Nt) ≥ 0.80  (≥ 80% Advancing Share)
Breadth Washout Flag ⇒ (At ÷ Nt) ≤ 0.20  (≤ 20% Advancing Share)
  • Super Thrust / Super Washout: Triggered when participation crosses the 90% boundary in either direction.
Statistical Sample Warning on Extreme Tags
Across 92 recorded sessions, dataset history captured only 2 Thrust days and 3 Washout days. Because these events are rare, they represent isolated historical observations rather than large statistical samples. Treat extreme flags as regime context markers rather than standalone mechanical trade triggers.

Granular Move-Size Breakdown

Expanding any daily log row displays the constituent move-size distribution across multiple threshold buckets:

Movers Bucket (±k%) = count of names whose |day return| ≥ k%

Threshold buckets (±3%, ±5%, ±10%) are cumulative. A stock that advances +12% is recorded in the ≥ 3%, ≥ 5%, and ≥ 10% buckets simultaneously, helping analysts spot days with outsized tail volatility.

Open the daily history table