Skip to content
All library documents

Finding Historical Index Constituents and Their Prices

Article Quant Q&A · Author: Terco

Summary

The document collects suggestions for obtaining historical index membership and constituent prices at monthly intervals. It points to professional data terminals and services, including Bloomberg, where index members can be queried with a date override and exported with selected price fields. It also mentions a blog source for historical S&P 500 and Nasdaq 100 membership, alongside several freely available constituent lists for other indices.

Web scraping is offered as another route: extract information from relevant websites and save it in a usable format. The answer cautions that scraped data sources change, so collection scripts need ongoing maintenance. It also reports that some providers do not distribute constituent data freely, and that free sources may be incomplete or out of date. The discussion is a set of sourcing leads rather than a standardized dataset or a detailed method for validating historical membership and prices.

Key ideas

  • Historical index membership can be queried through professional terminals using a date override.
  • Terminal exports can include constituent weights and selected price fields.
  • Some online sources offer historical membership or free constituent lists, with varying coverage and freshness.
  • Web scraping can collect data but requires maintenance when source pages change.
  • The document gives sourcing suggestions, not a validated data series or a complete collection workflow.

Tags

Full text
# Monthly data for popular indices (constituents).


# Monthly data for popular indices (constituents).












Trying to be concise:

- I am interested in the most popular indices (SP500, FTSE100, DAX30, CAC40, SMI30, etc).

- For each index I want to know its constituents in a monthly basis.

- For each constituent (each month) I would like to know its price.

Since it's monthly data I believe it is easier to find but I haven't been very successful for the moment.

I am willing to pay something reasonable (i.e. not too expensive).

I can get my hands on a Bloomberg terminal for a couple of hours but I have never used them and I don't know if I can do what I want in a reasonable amount of time.

I will be really grateful for any help on the subject. All suggestions are welcomed!

## Answer by Viquar (score 5, accepted)

https://quant.stackexchange.com/a/1263

All of these index constituents are available on Bloomberg and through Bloomberg Excel link. Just use one of those Index member formulas with a date override.

http://libfaq.smu.edu.sg/a.php?qid=2998

## Answer by Frank Hassler (score 3)

https://quant.stackexchange.com/a/1222

You can have a look at this QUANT - Blog.

You can get NDX100 and SP500 historical index constitution.

## Answer by user957 (score 1)

https://quant.stackexchange.com/a/1273

You can get this information by 'web scraping' - running a script (Python is ideal) which visits the relevant websites and extracts the prices from the HTML, then packages it into a suitable form (eg XML) and saves to disk.

The only drawback is that the script needs fairly regular maintenance, as the pages you are getting the information from tend to be updated quite regularly and when that happens the script needs to modified accordingly.

## Answer by MRC89 (score 0)

https://quant.stackexchange.com/a/35398

I went through the exercise of acquiring constituent data for indices as well as exchange constituents recently. After discussing the issue with both S&P Global and the FTSE Russel team the reply of both providers was that this data is not distributed in a free format (we were discussing this to include data on www.simfin.com).

As I don't currently have access to Bloomberg or Factset, I can not help you with professional tools, but I have made a list of sources for constituent data (freely available however not all up-to-date).

Here the list of free sources that I found:

Dow 30 - https://primeaim.wordpress.com/2014/09/24/central-index-keys-cik-for-dow-30-and-sp-500/

S&P 500 - https://primeaim.wordpress.com/2014/09/24/central-index-keys-cik-for-dow-30-and-sp-500/

Russell 2000 (scroll down to download CSV with constituents) - https://www.ishares.com/us/products/239710/ishares-russell-2000-etf

NASDAQ - http://rankandfiled.com/#/data/tickers

NYSE - https://dan.vonkohorn.com/blog/

Wilshire 5000 - http://financemainpage.com/Listing_of_All_Wilshire_5000_Stocks.html

## Answer by hroptatyr (score 0)

https://quant.stackexchange.com/a/35408

Using the terminal alone:

```
<INDEX> Index MEMB <GO>
```

e.g.

```
CAC Index MEMB <GO>
```

All constituents will show up with their weight and the last price. You can then use `Output -> Excel` to export them. Also you could add custom fields in case, for instance, you want yesterday's closing price (`PX_YEST_CLOSE`) instead of `LAST_PX`.

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.