I am trying to predict Bank Nifty using its constituents. I dont want to calculate exact value of bank nifty (like 36745), just a percentage return.

For example, If we calculate return from 3rd Sept close to 6th Sep open, the returns are:

HDFCBANK: 0.24745%

ICICIBANK: 0.15187%

AXISBANK: 0.35714%

KOTAKBANK: 0.9013%

SBIN: 0.13908%

INDUSINDBK: 0.22416%

AUBANK: 0.00427%

BANDHANBNK: 0.10501%

FEDERALBNK: 0.78455%

IDFCFIRSTB: 0.7667%

How can I calculate by exactly how much percentage Bank Nifty will increase or decrease?

I looked at the latest ratio from here: https://www1.nseindia.com/content/indices/ind_nifty_bank.pdf

So I did this calculation, but it is not matching 100%. What am I doing wrong?

I multiply the return of each stock by its weight and divide by 100, then sum it all, like this:

HDFCBANK: 0.24745 * 30.18/100 = 0.07468%

ICICIBANK: 0.15187 * 22.06/100 = 0.0335%

AXISBANK: 0.35714 * 11.87/100 = 0.04239%

KOTAKBANK: 0.9013 * 11.4/100 = 0.10275%

SBIN: 0.13908 * 10.61/100 = 0.01476%

INDUSINDBK: 0.22416 * 5.53/100 = 0.0124%

AUBANK: 0.00427 * 2.29/100 = 0.0001%

BANDHANBNK: 0.10501 * 1.78/100 = 0.00187%

FEDERALBNK: 0.78455 * 1.5/100 = 0.01177%

IDFCFIRSTB: 0.7667 * 1.06/100 = 0.00813%

Total sum is: 0.30234%

But Bank Nifty total percentage return is: 0.31854%

There is an error of 0.0162% in my calculation, what am I doing wrong?