Advances, Declines and Unchanged: NSE Breadth Basics
Before reading a breadth indicator, understand the stocks behind the count.

In Breadth Analysis 101, we looked at the different ways breadth can be expressed. Before I go further into those calculations, I want to slow down and look at what we are actually counting.
The question is simple: how many stocks finished the session higher, how many finished lower, and how many went nowhere?
I think this is the right place to begin. A sophisticated indicator cannot rescue a count that answers the wrong question.
What advances, declines and unchanged mean
For a daily, close-to-close count, take each stock in a defined group and compare its closing price with the previous session’s comparable closing price.
- Advance (A): today’s close is higher.
- Decline (D): today’s close is lower.
- Unchanged (U): the two closes are equal.
These are standard public breadth definitions, also discussed in Greg Morris’s introduction to market breadth. The examples below are our own illustrations, not observations from an actual NSE session.
Notice what is missing from the definition: the size of the move. A stock up 0.1% and another up 5% each contribute one advance. That is useful when the question is participation, but it does not tell us how much money an investor made.
The calculation, one stock at a time
Let C(i,t) be the comparable closing price of stock i on session t. Let E be the set of stocks with valid prices for both sessions.
A = count of stocks in E where C(i,t) > C(i,t−1)
D = count of stocks in E where C(i,t) < C(i,t−1)
U = count of stocks in E where C(i,t) = C(i,t−1)
Eligible count = A + D + U
For this example, every eligible stock belongs to exactly one group. A missing price is not an unchanged price; it is a missing observation.
A small Indian-market example
Imagine a ten-stock NSE basket. The numbers are hypothetical.
| Stock | Previous close (₹) | Current close (₹) | Classification |
|---|---|---|---|
| A | 100 | 102 | Advance |
| B | 200 | 201 | Advance |
| C | 150 | 153 | Advance |
| D | 80 | 81 | Advance |
| E | 250 | 255 | Advance |
| F | 400 | 404 | Advance |
| G | 120 | 118 | Decline |
| H | 300 | 294 | Decline |
| I | 500 | 500 | Unchanged |
| J | 60 | 60 | Unchanged |
We have 6 advances, 2 declines and 2 unchanged stocks. The check is 6 + 2 + 2 = 10.
The advancing share of the full eligible basket is 6 ÷ 10 × 100 = 60%. If we deliberately exclude unchanged stocks, the advancing share among stocks that moved is 6 ÷ 8 × 100 = 75%.
Both calculations are valid when labelled correctly. They answer different questions. I would not describe the second reading as “75% of the basket advanced.” Only six of the ten stocks did.
How I would read this alongside Nifty
Suppose an index representing this basket closed higher as well. The count would tell me that the gain had participation from a majority of the stocks. It would not tell me whether the index gain was mainly driven by a few large weights.
If the index rose while only two stocks advanced, I would want to investigate that narrow participation. I would not treat it as an automatic sell signal. A narrow session can occur inside an otherwise healthy trend.
My next question would be whether the pattern persists across sessions and whether it appears in the same universe I am comparing with the index.
Where the count can mislead
The reference price matters. Comparing with the opening price answers a different question from comparing with the previous close. Intraday readings can also change before the session ends.
Corporate actions require comparable prices. A split can change the quoted price without representing an equivalent economic loss. Suspended stocks, stale quotes and missing observations also need an explicit treatment before the count is interpreted.
Finally, a count measures how widespread a direction is. It does not measure the magnitude of gains and losses, liquidity, or the quality of the businesses involved.
Using this idea on IndexBreadth
When viewing breadth on IndexBreadth, start by checking the selected universe, timeframe and displayed label. Compare like with like before drawing a conclusion.
The calculations in this lesson explain the public concept. They are not a specification of IndexBreadth’s internal implementation.
I think the most useful habit here is to ask what sits behind the headline count. In the next lesson, we will look more closely at the denominator: which stocks were actually eligible to be counted?
Continue with why the eligible stock count matters.