Error pulling RIC

I am geetting an error pulling the RIC HOSURF1.
TYpeError: get_data() missing 1 required positional argument: 'fields'
What other API fields do I need?
Best Answer
-
The get_data method requires the fields parameter as the second parameter. If you run the command without it, you will get the following error.
df, err = ek.get_data(['HOSURF1'])
get_data() missing 1 required positional argument: 'fields'Therefore, you need to specify fields in the second parameter.
HOSURF1 is a chain RIC that contains child RICs.
First, you need to use the following code to gel all child RICs in HOSURF1.
#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 ''
#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
rics = getUnderlying('HOSURF1')I defined the getUnderlying method to get all child RICs and called the method with HOSURF1. The function returns a list of child RICs.
Then, I called the get_data method with the list of child RICs and fields.
df, err = ek.get_data(rics, ["GV4_DATE","GV4_TEXT","GEN_VAL1","PRIMACT_1"]);
dfThe output is:
You can use Eikon Quote to see available fields.
You may need to refer to the Instrument Pricing Analytics - Volatility Surfaces and Curves article that shows how to use RDP to get Volatility Surfaces and Curves.
0
Answers
-
It seems you're using get_data() function without providing fields parameter.
Could you share your code ?
Especially to detail which lib (eikon or refinitiv-dataplatform) you're using and which function ?0 -
Yes this is Eikon for Commodities. Trying to pull this data through. RIC HOSURF1
Trying to pull from the Volatility Surface Calculator
0 -
0
-
@Jirapongse Thank you very much.
0
Categories
- All Categories
- 3 Polls
- 6 AHS
- 36 Alpha
- 166 App Studio
- 6 Block Chain
- 4 Bot Platform
- 18 Connected Risk APIs
- 47 Data Fusion
- 34 Data Model Discovery
- 687 Datastream
- 1.4K DSS
- 622 Eikon COM
- 5.2K Eikon Data APIs
- 10 Electronic Trading
- Generic FIX
- 7 Local Bank Node API
- 3 Trading API
- 2.9K Elektron
- 1.4K EMA
- 254 ETA
- 557 WebSocket API
- 38 FX Venues
- 14 FX Market Data
- 1 FX Post Trade
- 1 FX Trading - Matching
- 12 FX Trading – RFQ Maker
- 5 Intelligent Tagging
- 2 Legal One
- 23 Messenger Bot
- 3 Messenger Side by Side
- 9 ONESOURCE
- 7 Indirect Tax
- 60 Open Calais
- 276 Open PermID
- 44 Entity Search
- 2 Org ID
- 1 PAM
- PAM - Logging
- 6 Product Insight
- Project Tracking
- ProView
- ProView Internal
- 22 RDMS
- 1.9K Refinitiv Data Platform
- 674 Refinitiv Data Platform Libraries
- 4 LSEG Due Diligence
- LSEG Due Diligence Portal API
- 4 Refinitiv Due Dilligence Centre
- Rose's Space
- 1.2K Screening
- 18 Qual-ID API
- 13 Screening Deployed
- 23 Screening Online
- 12 World-Check Customer Risk Screener
- 1K World-Check One
- 46 World-Check One Zero Footprint
- 45 Side by Side Integration API
- 2 Test Space
- 3 Thomson One Smart
- 10 TR Knowledge Graph
- 151 Transactions
- 143 REDI API
- 1.8K TREP APIs
- 4 CAT
- 27 DACS Station
- 121 Open DACS
- 1.1K RFA
- 104 UPA
- 193 TREP Infrastructure
- 229 TRKD
- 918 TRTH
- 5 Velocity Analytics
- 9 Wealth Management Web Services
- 90 Workspace SDK
- 11 Element Framework
- 5 Grid
- 18 World-Check Data File
- 1 Yield Book Analytics
- 48 中文论坛