Hi,
I want to identify those companies that have been listed on the STOXX Europe 600 during the whole period of 2015-2022, and exclude those that have joined or leaved during the period. Is there a simple way to do this?
@lauri.karimo Thanks for your question - here is how you can get a list of leavers and joiners using the Refinitiv Data Libraries:
import refinitiv.data as rd
rd.open_session()
rd.get_data(['.STOXX'], ['TR.IndexJLConstituentChangeDate','TR.IndexJLConstituentRIC.change','TR.IndexJLConstituentRIC'], {'SDate':'-1Y', 'EDate':'-7Y', 'IC':'B'})
Is this what you are looking for? I hope this can help.
Hi @lauri.karimo ,
Using the Data Item Browser, I found the following
This gives you the Joiners, Leavers and Both. With this, you can filter out joiners within your time period:
import pandas as pd# !pip install refinitiv-dataimport refinitiv.data as rd # pip install httpx==0.21.3 or 0.14.2rd.open_session( name="desktop.workspace", config_name="C:/Example.DataLibrary.Python-main/Configuration/refinitiv-data.config.json")df1: pd.DataFrame = rd.get_history( universe=["0#.STOXX50"], fields=['TR.ClosePrice'], start = '2022-01-31', end = '2023-01-30', interval="daily")df2: pd.DataFrame = rd.get_data( universe=[".STOXX50"], fields=['TR.IndexJLConstituentChangeDate','TR.IndexJLConstituentName', 'TR.IndexJLConstituentRIC','TR.IndexJLConstituentComName'], parameters={'IC':'J', 'SDate':'2022-01-31', 'EDate':'2023-01-30'})RICs_to_inc: list = [i for i in df1.columns if i not in df2["Constituent RIC"].to_list()]df: pd.DataFrame = df1[RICs_to_inc]