How to get corporate action data for a list of specified ISINs?

The following is the code I used.

port_ISIN_list=['JP3164450003','MYL5125OO009','MYL5049OO001'.'SG1E20001293']
start_n_end_date='(DivType=65:66:61:60:70:75:4:3,SDate=2022-02-01,EDate=2022-12-31)'
fields=['TR.DivType'+start_n_end_date,'TR.DivPayDate'+start_n_end_date,'TR.DivExDate'+start_n_end_date,'TR.DivAnnouncementDate'+start_n_end_date,'TR.DivUnadjustedGross'+start_n_end_date,'TR.HeadquartersCountry', 'TR.DivCurr']
data, err = eikon.get_data(port_ISIN_list, fields)

I don't quite understand why there are missing fields. E.g. The first two rows apply to ISIN SG1E20001293. Yet there was a country of headquarters, and dividend currency on the first row but no cell value on the second row which applies to the same ISIN.

InstrumentDividend TypeDividend Pay DateDividend Ex DateDividend Announcement DateGross Dividend AmountCountry of HeadquartersDividend CurrencySG1E20001293Interim3/16/20222/25/20222/11/20220.0075SingaporeSGDSG1E20001293Special3/16/20222/25/20222/11/20220.0225



Can anybody help me how I can fill the second row with values?

Best Answer

  • raksina.samasiri
    Answer ✓

    Hi @hlteh3388 ,

    The parameters (e.g. start date, end date) are not supported in TR.HeadquartersCountry.

    The parameters supported in each field can be checked using Data Item Browser app in Eikon desktop or Refinitiv workspace (you may search for DIB in Eikon/Workspace search bar to access the app)

    For example, you could see from the screenshot below that TR.DivType's supported parameters are listed (including start-end date and Dividend Type) while none of the parameters mentioned is supported in TR.HeadquartersCountry.

    1645437106334.png

    To retrieve the data you want, you may use the code below to

    1. Retrieve data of fields that support specified parameters (I changed a code a bit by making it a global parameter, which means it's applied to all fields)
    2. Retrieve data of field that doensn't support the specified parameters
    3. Join them together using Instrument column
    import pandas as pd
    import eikon as ek

    ek.set_app_key('#### YOUR APP KEY ####')

    # step 1 get data with parameters
    port_ISIN_list=['JP3164450003','MYL5125OO009','MYL5049OO001','SG1E20001293']
    params = {'DivType':'65:66:61:60:70:75:4:3', 'SDate': '2022-02-01', 'EDate': '2022-12-31'}
    fields=['TR.DivType','TR.DivPayDate','TR.DivExDate'
    ,'TR.DivAnnouncementDate','TR.DivUnadjustedGross', 'TR.DivCurr']
    data, err = ek.get_data(port_ISIN_list, fields, params)

    # step 2 get HQ country
    hq_field=['TR.HeadquartersCountry']
    data_hq, err = ek.get_data(port_ISIN_list, hq_field)

    # step 3 join data together
    final_df = data.merge(data_hq, on='Instrument', how='inner')
    final_df

    1645437462853.pngHope this could help