How to extract the daily market value of bond from Eikon API

Hi all,

The problem is that when I ran the following codes, I found that the returned value was only the latest market value of the bond, but I expected to get a time series.

Bond_fields = ["TR.ASKPRICE.date",
"TR.ASKPRICE",
"TR.MarketValueAnalytics",
"TR.CleanMarketValueAnalytics"]

Bond_RICs = ["78490FHF9="]

df, err = ek.get_data(Bond_RICs,
Bond_fields,
{'SDate':'2019-01-01','EDate':'2020-12-06', 'Frq': 'D'})

df

The returned result is :

1.png

I am looking forward to your response.

Best

Best Answer

  • @jun.he

    It is Datastream Web Service. The Python library for this API is DatastreamPy.

    The code looks like this:

    import DatastreamPy as DSWS

    ds = DSWS.Datastream(username = "username", password = "password")
    df = ds.get_data(
        tickers='8102EY,8157FG,7470EX,791PD3,831FGZ,7822M8,7534MF,8193WG,8062EM,789ZVN,8071ZR,8299LN,8262VC,8262MT,7855CR,8110J1,8165YD,7826DJ,7977LU,7843TK,8155WZ,8155JA,7856H5,7965X6,8430DE,7820HF,8071LM,7500KQ,7855QF,7983HE,8179ZK,8193MY,7531VP,8180YC,8155XA,8215GC',
        fields=['MV'],
        kind=1)
    df

    The output is:

    1695370216039.png

    The parameters of the get_data method are:

    get_data(tickers, fields=None, start='', end='', freq='', kind=1) 

Answers

  • @jun.he

    Thank you for reaching out to us.

    I checked with the Data Item Browser tool and found that the TR.MarketValueAnalytics and TR.CleanMarketValueAnalytics fileds don't support timeseries data.

    1695355830121.png

    I think this is why it didn't return timeseries data.

    You can contact the helpdesk support team directly via MyRefinitiv for confirmation.

  • Dear @Jirapongse,

    Thanks for your precise replies.

    I also have a question about how to translate the following Eikon Excel functions into the Python API code. For example, the following Eikon Excel function contains "Market Value" and is a daily time series.

    =@Thomson.Reuters.AFOSpreadsheetFormulas.DSGRID(CONCATENATE("8102EY,8157FG,7470EX,791PD3,831FGZ,7822M8,7534MF,8193WG,8062EM,789ZVN,8071ZR,8299LN,8262VC,8262MT,7855CR,8110J1,8165YD,7826DJ,7977LU,7843TK,8155WZ,8155JA,7856H5,7965X6,8430DE,7820HF,8071LM,7500KQ,7855QF,7983HE,8179ZK,8193MY,7531VP,8180YC,8155XA,8215GC,79"),"MV",Sheet1!$B$1,Sheet1!$B$2,"D","EDateCellRef=true;SDateCellRef=true;CustomHeader=true;CustHeaderDatatypes=ISIN;RowHeader=true;ColHeader=true;DispSeriesDescription=false;YearlyTSFormat=false;QuarterlyTSFormat=false")

    I wanted to get the corresponding Python code or column, but I could not find a suitable one.

    I am looking forward to hearing from you.

    Best.

  • Dear @Jirapongse

    Thanks for your help. You saved my life.

    I hope you have a lovely weekend

    Best.