Markets: A Rigorous Course

1.9 Indices: free-float weighting and the divisor

Advanced about 20 min

Motivation

"The market fell 2%" means the Nifty 50 fell 2%. An index is a precisely defined portfolio, and its construction determines what the number measures, what index funds must buy, and how index futures and options settle.

1.9.1Free-float capitalisation#

Definitions

For constituent ii at time tt: price Pi,tP_{i,t}, shares outstanding NiN_i, and investible weight factor (IWF) fi∈(0,1]f_i \in (0,1], the fraction of shares available to ordinary investors (excluding promoter holdings, government strategic stakes and other locked-in holdings). The free-float market capitalisation of the index is

Mt=∑iPi,t Ni fi.(1.5)M_t = \sum_i P_{i,t}\, N_i\, f_i. \tag{1.5}

The index level is defined through a divisor DtD_t:

It=MtDt.(1.6)I_t = \frac{M_t}{D_t}. \tag{1.6}

For the Nifty 50, the base date is 3 Nov 1995 and the base value 1,000, so DD at the base was Mbase/1000M_{\text{base}}/1000; the index was launched on 22 Apr 1996 and moved from full to free-float capitalisation on 26 Jun 2009 (NSE Indices factsheet and methodology summaries). It is rebalanced semi-annually.

1.9.2Index returns and the divisor#

Proposition 1.3index return is a cap-weighted average

If the divisor and all Ni,fiN_i, f_i are unchanged between t−1t-1 and tt, then

ItIt−1−1=∑iwi,t−1 Ri,t,wi,t−1=Pi,t−1NifiMt−1,Ri,t=Pi,tPi,t−1−1.(1.7)\frac{I_t}{I_{t-1}} - 1 = \sum_i w_{i,t-1}\, R_{i,t}, \qquad w_{i,t-1} = \frac{P_{i,t-1}N_i f_i}{M_{t-1}}, \quad R_{i,t} = \frac{P_{i,t}}{P_{i,t-1}} - 1. \tag{1.7}
Proof

It/It−1=Mt/Mt−1=∑iPi,tNifi/Mt−1=∑iPi,t−1NifiMt−1⋅Pi,tPi,t−1=∑iwi,t−1(1+Ri,t)I_t/I_{t-1} = M_t/M_{t-1} = \sum_i P_{i,t}N_i f_i / M_{t-1} = \sum_i \frac{P_{i,t-1}N_i f_i}{M_{t-1}}\cdot\frac{P_{i,t}}{P_{i,t-1}} = \sum_i w_{i,t-1}(1+R_{i,t}), and ∑iwi,t−1=1\sum_i w_{i,t-1} = 1.∎

Consequences: weights drift with prices, so a cap-weighted index fund needs no trading except when the basket, share counts or IWFs change. The index is a price index: ordinary dividends are not in Ri,tR_{i,t}, so the index falls when a constituent goes ex-dividend.

Proposition 1.4divisor adjustment

Suppose that after the close at tt the basket changes (a constituent is replaced, shares outstanding change through a rights issue or buyback, or an IWF is revised). Let MtM_t and Mt′M_t' be the free-float capitalisations before and after the change, both at the closing prices of tt. The index stays continuous (ItI_t unchanged) if and only if the divisor becomes

Dt′=Dt⋅Mt′Mt.(1.8)D_t' = D_t \cdot \frac{M_t'}{M_t}. \tag{1.8}

After the change, Proposition 1.3 holds with the new weights. A split or bonus requires no divisor change.

Proof

Continuity means Mt/Dt=Mt′/Dt′M_t/D_t = M_t'/D_t', which is (1.8). For a split of ratio kk (one share becomes kk), the theoretical ex-price is P/kP/k and the share count kNkN (Proposition 1.5 below), so PNfP N f is unchanged, Mt′=MtM_t' = M_t and Dt′=DtD_t' = D_t. A bonus is the same with k=(a+b)/bk = (a+b)/b.∎

1.9.3Worked example: replacing a constituent#

Worked example

A toy three-stock index (illustrative numbers in the scale of large Indian banks and conglomerates):

Stock PP (₹) NN (shares) ff PNfPNf (₹ crore)
A 2,900 1,353 crore 0.50 19,61,850
B 1,650 760 crore 0.95 11,91,300
C 1,450 696 crore 0.75 7,56,900

M=₹39,10,050M = \text{₹}39{,}10{,}050 crore. If the index stands at 25,000, the divisor is M/25,000=156.40M/25{,}000 = 156.40 crore. Replace C with D (P=3,800P = 3{,}800, N=360N = 360 crore, f=0.28f = 0.28, PNf=3,83,040PNf = 3{,}83{,}040 crore). Then M′=35,36,190M' = 35{,}36{,}190 crore and D′=156.40×35,36,190/39,10,050=141.45D' = 156.40 \times 35{,}36{,}190/39{,}10{,}050 = 141.45 crore. The index is still 25,000. Index funds must sell all of C and buy D at the close of the effective date, which is the source of predictable closing-auction volume on rebalance days. These numbers are the fixtures of test_divisor_keeps_index_continuous_on_replacement in the tests of Exercise m01_mechanics (tests/test_m01_mechanics.py).

1.9.4Dividends and the TRI#

Total return index Let the index dividend in points on day tt be IDt=∑idi,tNifi/Dt\text{ID}_t = \sum_i d_{i,t}N_i f_i / D_t, where di,td_{i,t} is the dividend per share of constituent ii going ex on tt. The total return index (for example, Nifty 50 TRI) is built recursively:

TRIt=TRIt−1⋅It+IDtIt−1.(1.9)\text{TRI}_t = \text{TRI}_{t-1}\cdot \frac{I_t + \text{ID}_t}{I_{t-1}}. \tag{1.9}

It assumes dividends are reinvested in the index on the ex-date. Over long horizons the TRI and the price index diverge by roughly the dividend yield each year. Benchmark mutual funds against the TRI, as SEBI requires.

Practitioner notes

  • IWF changes and index inclusions move prices, because passive funds must trade a known quantity on a known date. Studying these flows is legitimate; front-running them on non-public information is not.
  • A cap-weighted index concentrates in the largest stocks. In the toy example A is half the index.
  • For Nifty futures and options the settlement price is derived from the index, so the index rules are part of the derivative contract.

See it live: current levels of 167 NSE indices, including India VIX, at https://oicharts.com/indices (one page per index, e.g. https://oicharts.com/indices/nifty-50). Compare the Nifty 50 with a sectoral index such as Nifty Bank on a day when one heavyweight moves sharply, and you will see Proposition 1.3 at work.

Create a free account

Reading is open to everyone. An account keeps your progress, answers, notes and code drafts, and gives you the study plan, the journals and the simulator. Running code needs an account approved for it.