Which fields to use in get_data that correspond to OPEN, HIGH, LOW, CLOSE, VOLUME in get_timeseries?

Is it possible to get the same data from get_timeseries with get_data or does it use a different back end all together?

Best Answer

  • @jokari69

    It is better to select fields in the same category. In this case, it could be Time Series Data.

    1633581284904.png

    data, err = ek.get_data(
        instruments=['AKERBP.OL'],
        fields=['TR.OPENPRICE.date', 'TR.HIGHPRICE', 'TR.LOWPRICE', 'TR.OPENPRICE', 'TR.CLOSEPRICE', 'TR.ACCUMULATEDVOLUME'],
        parameters={
            'SDate': '2008-05-01',
            'EDate': '2008-06-01'})
    data

Answers

  • hi @jokari69 ,


    I believe that you can recreate the get_timeseries fields with get_data. To find the corresponding fields, please use the Data Item Browser.


    As a quick example:


    data, err = ek.get_data(
        instruments=['VOD.L'],
        fields=['TR.HIGHPRICE.date', 'TR.HIGHPRICE', 'TR.LOWPRICE', 'TR.OPENPRICE', 'TR.PriceClose', 'TR.Volume'],
        parameters={
            'SDate': '2021-09-18',
            'EDate': '2021-09-29',
            'Frq': 'D'})
  • The mixed usage of all caps prices fields and camelcase price fields will lead to strange behaviour.

    As per TR.PriceClose definition it will return the last known value for this field on each day. This makes it return old data for empty business days. On the other hand the all caps prices like TR.CLOSEPRICE, TR.OPENPRICE, TR.HIGHPRICE, TR.LOWPRICE will only give data for their respective days and return nothing or nan for other days. The difference in behaviour can be clearly seen for a RIC like (AKERBP.OL) where this is prevalent.

    For clarity I added the CLOSEPRICE field as well a date field TR.PriceClose.date.

    You can see that the data looks join on index for two different tables. One from the all caps columns and date & 1 from the camelcase columns and date.

    It would be nice that some database export from Refinitiv gives some guidance on how to use these data sources properly as it seems pretty dangerous to mingle these fields.

    data, err = ek.get_data(
    instruments=['AKERBP.OL'],
    fields=['TR.OPENPRICE.date', 'TR.HIGHPRICE', 'TR.LOWPRICE', 'TR.OPENPRICE', 'TR.CLOSEPRICE', 'TR.PriceClose.date', 'TR.PriceClose', 'TR.Volume'],
    parameters={
    'SDate': '2008-05-01',
    'EDate': '2008-06-01'}