New answers tagged index
Bloomberg or datastream are the only possible sources.
This data isn't free obviously, but Euronext (the index provider) might be inclined to give you this information if it's for academic purposes. It's advertised on their website here: https://www.euronext.com/fr/market-data/products/end-day-index-data
As you said yourself, Yahoo finance provides the historical stock data. The only thing left is to know the historical composition of the CAC40. This information can be extracted from the french wikipedia site about the CAC40, or from the source @jean-paul-sartre mentioned. In my answer I will concentrate on how to scrap the information. Some time ago I ...
You can try Quandl. They have a nice API to R and Python which you can use to do the data-wrangling.
I'm not sure if you are looking for the components only or if you want more data, like the weights in the index. Unfortunately, unlike most other data on the web, it's hard to get any good financial data for free. The only easy way is to pay for accessing it through a financial data provider such as Bloomberg (with MEMB function when you select an index). ...
Maybe a Social Trading platform would be what you're looking for? They allow you to put together a portfolio for the world to view. Some even make it tradeable, usually as ETF (which carries the usual fees for investors, which are then split between you and the provider).
In addition to the above answers - You should be very careful that you do not introduce survivorship bias in your creation of indices and choose your data source carefully to remove such bias. For example, Yahoo Finance only contains currently-listed securities.
Both R and Python can do this very nicely. For Python you would need the pandas package and its dependencies. pandas has a lot of basic statistics, but for more advanced statistics like it looks like you want to do, you can use the statsmodels package, which can work directly with pandas data types. It can also download the csv files directly off the ...
It is essentially a statistical exercise, so I would choose R.
Top 50 recent answers are included