How to get last corporate action details with ex date, div type, event type for multiple rics in one

Hi All,


I am a rookie in using eikon API via python and given a try to grab last corporate action details with ex date, div type, event type for multiple rics in one go, also if there are more than 1 adj factor or special/final dividend on the same date and it should fetch details for both the events.

is it possible to do it for multiple rics in one go ?

i am using the below code but not getting the desired result, ideally it should have given me 3 rows with first row with ex date = 23 Jun 2021, adj factor 0.956333,
second row with ex date = 23 jun 2021, div type = FInal
third row wtih ex date = 23 Jun 2021, div type = special

import eikon as ek
import pandas as pd
from tabulate import tabulate
ek.set_app_key('<app key>')
data, err = ek.get_data('1171.HK',['TR.DivUnadjustedGross','TR.DivExDate','TR.DivType','TR.GICSSECTOR'],{
'SDate': '2020-07-01','EDate': '2021-07-26','DivType': '61:70'})
df = pd.DataFrame(data)
print(tabulate(df, headers='keys',tablefmt='fancy_grid'))


1627323774729.png1627323736359.png

Best Answer

  • @Atul.Sanwal

    You can retrieve dividend history for multiple instruments by passing a list of RICs to the first argument of get_data method.

    The reason your request does not retrieve 2021 dividends for 1171.HK is that by default SDate and EDate parameters are applied to the pay date. In your example the 2021 dividend pay date of 2021-08-03 falls outside of the date range specified by SDate and EDate parameters. You can change the value of EDate to include 2021-08-03 in the range. Or you can add 'DateType':'ED' parameter to make SDate and EDate apply to ex date. For other possible values for DateType parameter consult CodeCreator or DIB app.

    instruments = ['0001.HK','1171.HK']
    data, err = ek.get_data(instruments,
                            ['TR.DivUnadjustedGross','TR.DivExDate',
                             'TR.DivType','TR.GICSSECTOR'],
                            {'SDate': '2020-03-01','EDate': '2021-07-26',
    'DateType':'ED'})
    data

Answers

  • Hi Alex, appreciate your time, i have tried the above suggested code but i am getting NA for each parameter. can you please have a look ?

    capture.jpg

  • You have a typo in the request. The parameter name should be DateType, not DataType.