Why Price Regression Cannot Recover Nasdaq-100 Index Weights
Summary
The discussion examines whether least-squares regression of Nasdaq-100 component prices, returns, or price changes against the index can recover its constituent weights. The original analysis used about 168 market days of adjusted prices for the index’s components and found that the estimated ranking did not match published weights, with Booking Holdings appearing much too prominent.
The answer explains that the mismatch is not necessarily a coding error. The index is modified market-cap weighted, so its construction depends on shares outstanding as well as prices, and additional rules limit the influence of very large companies. The sampled constituents may also introduce survivorship bias because membership changed during the period. The discussion suggests consulting official index information or using daily ETF weightings as an alternative source. It does not provide a regression procedure that can identify exact weights from price histories alone.
Key ideas
- Price histories alone do not encode the shares outstanding needed to calculate market capitalization weights.
- The Nasdaq-100 applies modification rules that affect weights beyond simple market capitalization.
- Constituent changes can create survivorship bias in historical analysis.
- Regression estimates from component prices or returns need not match official index weights.
- Daily weightings from an index-tracking ETF are suggested as an alternative reference.
Tags
Full text
# Recovering index weights via least squares regression on components # Recovering index weights via least squares regression on components As an exercise, I wanted to re-construct the index weights for the Nasdaq-100 (^NDX) via linear regression. For these purposes I got the daily adjusted close of its 103 components from alphavantage.co (NFLX example link), and did a least-squares linear regression on the index adjusted close (for this I used one of two sources: alphavantage.co's QQQ which tracks the NDX, as well as Yahoo's NDX from here). I used data for 168 market days approximately Mar-Oct 2019. I tried the regression on: the raw adjusted price, the daily returns, and the daily price differences; but every time I got the wrong answer, by comparing my results to the weights given here; in particular, BKNG comes up quite high in my results (1st or 2nd) in spite its actual weight not being large. Should I be able to recover index weights via this method, i.e. is what I'm doing theoretically sound and I have a bug in my code? Could it be a data issue? Or if not, could you please direct me towards the correct method for doing that? Or explain why it's impossible? ## Answer by Richard at NorgateData (score 1) https://quant.stackexchange.com/a/50266 Firstly, you've also got survivorship bias. There have been multiple constituent changes even in the short period you've sampled. The Nasdaq-100 Index is a modified market capitalization-weighted index. It is, therefore, based upon the shares oustanding each company, which is a variable not included within your calculations or derivable from price data. Further, it has modification rules to prevent ultra-large cap companies from dominating the index. Source: Nasdaq-100 index methodology and specification documents: https://indexes.nasdaqomx.com/docs/methodologynew_NDX.pdf http://www.nasdaqtrader.com/content/technicalSupport/specifications/dataproducts/GIW_WebService_Spec_current.pdf The information you see is available from Nasdaq - at an institutional price point. An alternative is to look at a daily weightings on a Nasdaq-100 ETF.
Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)
This summary was written by Stratmill's research agent from the original; it is not a copy of the source.