Upgrade from Eikon -> Workspace. Learn about programming differences.

For a deeper look into our Eikon Data API, look into:

Overview |  Quickstart |  Documentation |  Downloads |  Tutorials |  Articles

question

Upvotes
Accepted
1 0 0 1

How to get data of this kind of RIC?

ric.png


Hi all,

I'm using python to get data from Reuter, normally, with RIC which have its chart like ".DXY", It's been got easily by using eikon.get_timeseries(). However, some other RIC like "SBVOMO2022" or "VNOMO=SBVN", I cannot get the data by using eikon.get_timeseries(). So how to get all these ind of data?

Note: I have tried with eikon.get_data(), but it just work if the field is available, and I need to search for exist field (just work with "VNOMO=SBVN" but not "SBVOMO2022")


Thank you for your help!

refinitiv-dataplatform-eikon
ric.png (61.7 KiB)
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

1 Answer

· Write an Answer
Upvotes
Accepted
78.1k 246 52 72

@nguyen.minhson1511

SBVOMO2022 contains a list of page records.

1660708180344.png

First, we need to get the underlying RICs in SBVOMO202, and then subscribe to the ROW80_1 to ROW80_25 fields from those RICs.

1660708281067.png

The code looks like this:

#Define getUnderlying() function
def getUnderlying(baseRic):
    LONGNEXTLR = baseRic
    #For LONGLING1 to LONGLINK15 and LONGNEXTLR fields
    fields = ['LONGLINK{}'.format(x) for x in range(1, 15)]
    fields.append('LONGNEXTLR')
 
    all_underlying_rics = []
 
    #if LONGNEXTLR is not empty, try to retrieve the data fields
    while LONGNEXTLR!='':
        df,e = ek.get_data(LONGNEXTLR,fields)
        LONGNEXTLR = df.iloc[0]['LONGNEXTLR'] if pd.notnull(df.iloc[0]['LONGNEXTLR']) else ''
        #print(df)
        #If LONGLINK<x> field is not null, append its value to all_underlying_rics list
        for x in range(1, 15):
            currentField = 'LONGLINK{}'.format(x)            
            all_underlying_rics.append(df.iloc[0][currentField]) if pd.notnull(df.iloc[0][currentField]) else None
        #delay between each API call for 1 second
        time.sleep(1)
    return all_underlying_rics


ricList = getUnderlying('SBVOMO2022')


df, err = ek.get_data(
    instruments = ricList,
    fields = ['ROW80_1','ROW80_2','ROW80_3','ROW80_4','ROW80_5','ROW80_6','ROW80_7','ROW80_8','ROW80_9','ROW80_10',
         'ROW80_11','ROW80_12','ROW80_13','ROW80_14','ROW80_15','ROW80_16','ROW80_17','ROW80_18','ROW80_19','ROW80_20',
         'ROW80_21','ROW80_22','ROW80_23','ROW80_24','ROW80_25'])


for index, row in df.iterrows():
    display(row.transpose())

The output is:

Instrument                                         SBVOMO2022-1
ROW80_1       17:26 16AUG22    SBV OPEN MARKET AUCTION DATA ...
ROW80_2                            Open Market Auction Data ...
ROW80_3                                                     ...
ROW80_4       Session  Auction   Transaction       Term     ...
ROW80_5       No.      Date      Mode              (Days)   ...
ROW80_6                                                     ...
ROW80_7       =======  ========  ================  =======  ...
ROW80_8       195      16/08/22  Sell Outright     14       ...
ROW80_9       194      16/08/22  Sell Outright     7        ...
ROW80_10      193      16/08/22  Reverse Repo      7        ...
ROW80_11      192      15/08/22  Sell Outright     7        ...
ROW80_12      191      15/08/22  Reverse Repo      7        ...
ROW80_13      190      12/08/22  Sell Outright     7        ...
ROW80_14      189      12/08/22  Reverse Repo      7        ...
ROW80_15      188      11/08/22  Reverse Repo      7        ...
ROW80_16      187      10/08/22  Reverse Repo      7        ...
ROW80_17      186      09/08/22  Reverse Repo      7        ...
ROW80_18      185      08/08/22  Reverse Repo      7        ...
ROW80_19      184      05/08/22  Reverse Repo      7        ...
ROW80_20      183      04/08/22  Sell Outright     14       ...
ROW80_21      182      04/08/22  Reverse Repo      7        ...
ROW80_22      181      03/08/22  Reverse Repo      7        ...
ROW80_23      180      02/08/22  Reverse Repo      7        ...
ROW80_24      179      01/08/22  Reverse Repo      7        ...
ROW80_25      178      29/07/22  Reverse Repo      7        ...
Name: 0, dtype: object
Instrument                                         SBVOMO2022-2
ROW80_1       17:26 16AUG22    SBV OPEN MARKET AUCTION DATA ...
ROW80_2       177      28/07/22  Reverse Repo      7        ...
ROW80_3       176      27/07/22  Reverse Repo      7        ...

Otherwise, you need to contact the content support team directly via MyRefinitv and ask for other RICs that are not page records and can provide the same data.



1660708180344.png (19.7 KiB)
1660708281067.png (59.1 KiB)
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.