Price index for stock

Is there a way to get the time series of the Price indices djusted for split ANDcash dividend?

Best Answer

  • Hi @Tulkkas

    1. Get RIC list from the index

    2. Split them into multiple lists (not more than 300)

    3. get_timeseries with corax = "adjusted" parameter (note that what is included in the calculation for adjusted value, you need to contact content helpdesk)

    The document is here.

    image

Answers

  • Hi, thx. So what is the limit in term of number of stocks for get data? Is there some documentation on that? Here you say 300 stocks max but does that depends on the period for which you want the data or is it independant?

  • Hi, thx. So what is the limit in term of number of stocks for get data? Is there some documentation on that? Here you say 300 stocks max but does that depends on the period for which you want the data or is it independant?

  • I have not come across the limitation on the number of stocks in get_data method.

    However, you will not receive more than this:

    • Datapoints returned per request - A datapoint is a 'cell', or a unique field value for a unique instrument on a unique time stamp. Datapoint limits vary by the content set being retrieved (for example, timeseries limits are different from news headline limits), but all are throttled on a per request basis and are not aggregated across all applications. Here are Datapoint limit examples per Eikon Data API function type
      • get_data: The current limit value (10-Oct-2019) is around 10,000 data points.
      • get_timeseries: The current limit value (10-Oct-2019) is 3,000 data points (rows) for interday intervals and 50,000 data points for intraday intervals. This limit applies to the whole request, whatever the number of requested instrument.
      • get_news_headlines: The current limit value (10-Oct-2019) is 100 headlines per request. The depth of history is 15 month.
      • get_news_story: The current limit value (10-Oct-2019) is 1 story per request.
      • get_symbology: No enforced limit (10-Oct-2019).

    Please refer to this document for more detail.

  • Thank you for this. For time serise, i do have issue regarding the number of instrument. If i send a request with more than 300 instrument i get the following error:

    rror: Error code 500 | Backend error. 500 Internal Server Error


    Any way around this?

  • @Tulkkas

    2. Split them into multiple lists (not more than 300)

  • I am trynig the corax field using get_data but the following does not work:

    index_id = ['BABA.K]
    data, err   = ek.get_data(index_id,['TR.PriceClose(SDate="24-Sep-2018", EDate="29-Oct-2019").date,TR.PriceClose(SDate="24-Sep-2018", EDate="29-Oct-2019",corax="adjusted")'])


    But it returns an error. How do incorporate the corax field in the fet_data fct?

  • @Tulkkas
    Always start a new thread when you have a new question. Old threads that already have an accepted answer are not monitored by moderators. Any post on an old thread with accepted answer can be easily missed and not receive a response.
    You have a whole bunch of syntax errors in your expression. Try this:

    ek.get_data('BABA.K',
                ['TR.PriceClose.date','TR.PriceClose'],
               {'SDate':'24-Sep-2018', 'EDate':'29-Oct-2019'})

    And have a look at this tutorial.

  • Hi, i will post it in another thread next time.

    Regarding my querry, i do not see any synthax errors expect the missing ' after BABA.K. Could you point out to me the errors?

    I have seen alternatively those 2 syntaxes for the same purpose:


    ek.get_data('BABA.K',['TR.PriceClose.date','TR.PriceClose'],            {'SDate':'24-Sep-2018', 'EDate':'29-Oct-2019'})


    data, err   = ek.get_data('BABA.K',['TR.PriceClose(SDate="24-Sep-2018", EDate="29-Oct-2019").date,TR.PriceClose(SDate="24-Sep-2018", EDate="29-Oct-2019")'])


    And you did not actually gave my any answer regarding my question about the field corax for adjusted for dividends. Thx

  • "corax" is not listed as a kwarg in get_data method signature, so here's your second syntax error. Apart from that, while it works in this instance, providing fields as a single comma separated string as opposed to a list of strings where each element represents a single field is not documented and therefore not guaranteed to work. Not to mention that such syntax also makes the code less readable.
    If you're looking for price history adjusted for capital events, you don't need any additional parameters, as this is the default. If you're looking for unadjusted price history you can use

    ek.get_data('BABA.K',
                ['TR.CLOSEPRICE.date',
                 'TR.CLOSEPRICE(Adjusted=0)'],
               {'SDate':'24-Sep-2018', 
                'EDate':'29-Oct-2019'})

    or you can use get_timeseries method where "corax" is a valid kwarg.

  • thank you for the precison. It was not clear before as many answers from users and moderators acutally mixed but both syntax.


    Whn you said adjusted, you mean for split, merger etc type of corporate actions but not for dividends right? Because this is usually a special adjuste type. Maybe also you have a specific time series for Total Return Price Index rather than applying adjusted on Price Index?

  • See this thread for discussion on how Refinitiv adjusts historical stock prices for capital changes. I don't think I understand the question in the last sentence. Perhaps the thread I referenced answers it too? If not, would you care to start a new thread and elaborate?