Shares outstanding every quarter - Python API

Was looking to get the shares outstanding every quarter. Used the following

ek.get_data('STEL.SI', fields = ['TR.ISPeriodEndDate','TR.CompanySharesOutstanding'] , parameters= {'Frq' : 'FQ', 'SDate' : 0, 'EDate': -12, 'CH' : 'Fd'})

The TR.ISPeriodEndDate was to give the reporting date. Unfortunately, this gives

InstrumentIncome Statement Period End DateCompany Shares

STEL.SI 2018-03-31. 16329158300.0

STEL.SI 2018-03-31. 16329158300.0

STEL.SI 2018-03-31 16329158300.0

STEL.SI 2018-03-31. 16329158300.0

STEL.SI 2017-03-31. 16329100000.0

STEL.SI 2017-03-31. 16329100000.0

rather than the reporting quarter dates.

Pls advise what would be the correct query

Best Answer

  • chavalit-jintamalit
    Answer ✓

    Hi @rajanraju

    The TR.ISPeriodEndDate is for Income Statement Period End Date.

    image

    I think you may need Income Statement Last Update Date or Source Date ?

    You can use "Data Item Browser" to search for fields and see its description.

    Please see this article.

Answers

  • @chavalit.jintamalit thank you. I used Balance Sheet Period End Date:

    ek.get_data('STEL.SI', fields = ['TR.BSPeriodEndDate','TR.CompanySharesOutstanding'], parameters= {'Period':'FQ0','Frq': 'FQ', 'SDate':0, 'EDate': -12, 'CH':'Fd'})

    and it works!

  • @rajanraju
    For TR.* fields that can return timeseries there's always date and calcdate output that can be requested along with the values. For your use case I think the best call would be

    ek.get_data('STEL.SI', ['TR.CompanySharesOutstanding.calcdate',
    'TR.CompanySharesOutstanding'],
    {'Frq':'FQ', 'Sdate':'0', 'Edate':'-12'})
  • @Alex Putkov. many thanks. this solves a lot of my issues!!