Different Earnings Forecasts result using API

I am using the Refinitiv Dataplatform API to access the Earnings per Share Forecasts provided by companies in their Earnings Guidance. While doing so I realized that the results differ from the Refinitiv Workspace.

Below is an example for the Earnings Forecast of Walmart:

The API Code (Python) I am using is this:

rdp.get_data(
universe='WMT',
fields= ['TR.GuidanceDate', 'TR.GuidanceMeasure','TR.GuidanceCurrency', 'TR.GuidanceLowValue', 'TR.GuidanceHighValue', 'TR.GuidancePeriodYear', 'TR.GuidancePeriodMonth'],
parameters={'SDate':'2020-01-01', 'EDate':'2023-12-31', 'GuidMeasure':'EPS', 'FRQ':'Q'}
)

This produces the following result (For 2022):

1704697173209.png

If you compare the results to the Refinitiv Workspace:

1704697204241.png

one can see that the values differ. For example the API shows a forecast for 2022-02-17 but not the Workspace. Also the values differ. For 2022-05-17 the Earnings per Share forecast according to the API is between -7 and -6, according to the Workspace 6,46.

How can it be the case that I get different results in the API call?

Best regards,

Best Answer

  • raksina.samasiri
    Answer ✓

    For reference, below is the suggested Python code provided by Refinitiv support team

    import refinitiv.data as rd
    import pandas as pd

    rd.open_session()

    df = rd.get_data(
    universe = ['WMT'],
    fields = [
    'TR.GuidanceDate(Period=FY1,Frq=Q,SDate=2020-01-01,EDate=2023-12-31,GuidMeasure=EPS)',
    'TR.GuidanceMeasure(SDate=2020-01-01,Frq=Q,GuidMeasure=EPS,Period=FY1,EDate=2023-12-31)',
    'TR.GuidanceCurrency(SDate=2020-01-01,Frq=Q,GuidMeasure=EPS,Period=FY1,EDate=2023-12-31)',
    'TR.GuidanceLowValue(SDate=2020-01-01,Frq=Q,GuidMeasure=EPS,Period=FY1,EDate=2023-12-31,GuidAcctType=ALL)',
    'TR.GuidanceHighValue(SDate=2020-01-01,Frq=Q,GuidMeasure=EPS,Period=FY1,EDate=2023-12-31,GuidAcctType=ALL)'
    ]
    )
    pd.options.display.max_rows= None
    pd.options.display.max_rows= None
    df = df.dropna()
    display(df)

    1706088768885.png

    After conversion of the local parameters to global parameters, here's the code

    import refinitiv.data as rd
    import pandas as pd

    rd.open_session()

    df = rd.get_data(
    universe = ['WMT'],
    fields = [
    'TR.GuidanceDate',
    'TR.GuidanceMeasure',
    'TR.GuidanceCurrency',
    'TR.GuidanceLowValue',
    'TR.GuidanceHighValue'
    ],
    parameters = {'SDate':'2020-01-01','Frq':'Q','GuidMeasure':'EPS','Period':'FY1','EDate':'2023-12-31','GuidAcctType':'ALL'}
    )
    pd.options.display.max_rows= None
    pd.options.display.max_rows= None
    df = df.dropna()
    display(df)

Answers

  • Hi @PascalSchrader ,


    I'm afraid that experts keeping an eye on this Developer Q&A Forum are not content experts. For content questions please refer to my.refinitiv.com.

    With that said, having had a look at your inquiry, it seems as though other fields might be what you are after. Have you had a look at the Data Item Browser?

    1704717373220.png

  • Hi @jonathan.legrand,

    thanks for your reply. I talked to the Refinitiv support already and they referred me to the Developer Portal.

    I am looking for the Earnings Per Share as Dollar Value. But the result of the API call does not reflect the percentage change as well. For example for 2022-08-16 the percentage change in EPS for WMT are (10%)-(8%).Unbenannt.png