Get root code
Hi all,
I'm trying to create a function to creates the RIC code of a futures contract based on information like underlying, expiration date, etc...
I understand how the RIC code is constructed, the only thing I need is a reliable way of getting the "root code" of the underlying of my future contract. Is there an API call where i can pass information (ISIN, CUSIP, ...) of the underlying and get its root code, so that i can then build the RIC code ? For ex I could input 'S&P500 EMINI" or its corresponding ISIN and get "ES" in return ?
Thanks for your help.
Best Answer
-
Hi ! I've been talking with the LSEG helpdesk and i've been provided an answer :
df = rd.get_data(
universe =
['1SPXFM4',
'ESH25'],
fields = ['MNEMONIC']
)This can fetch the root RICs for the given RICs. I've yet to test it but it looks promising
0
Answers
-
Hi @adam.leroux,
I am not sure, if there is a direct way to get the RIC root, I asked the Helpesk to learn more about it and will update you here. However I may have a solution for the second part of your problem, which is reconstructing RIC codes based on some parameters. Please check my article below which includes a Github repo link on the right:
Reconstructing RICs for expired futures contracts | Devportal (lseg.com)
I have created a python function which takes RIC root, expiration month and the year as an input and returns the futures RIC. For example for SPX that would be:
fr.get_futures('ES', 3, 2021)
Hope this helps for building the RIC. I will come back to you re finding the RIC root once get an update.
Best regards,
Haykaz
0 -
Hi, yes thats what i'm using too ahah, I only need a way to get the RIC root.
For exemple in the code you provided, find a way to know that SPX RIC root is "S".
0 -
It could be search API in the Refinitiv Data Library for Python.
df = rd.discovery.search(
view = rd.discovery.Views.SEARCH_ALL,
query = "S&P500 EMINI",
select = "BusinessEntity,DocumentTitle,RIC,RicRoot",
top = 100)
dfThe examples are on GitHub.
0 -
Hi @adam.leroux ,
I have learned from Helpdesk that there is no straightforward way to get the RIC Roots (please note that there are many not just one) and my colleague's suggestion above seems to be the best approach we have. What you can further do is apply some additional filter criteria to get only the RIC roots you are interested in, for example:
df = rd.discovery.search(
view = rd.discovery.Views.EQUITY_QUOTES,
top = 1000,
filter = "(AssetState eq 'AC' and SearchAllCategory eq 'Futures' and SearchAllCategoryv2 eq 'Futures' and ((UnderlyingQuoteRIC eq '.INX')))",
select = "RIC,SearchAllCategoryv2,SearchAllCategory,DTSubjectName,ExpiryDate,UnderlyingQuoteRIC, RicRoot"
)
dfBest regards,
Haykaz
0 -
That is great that you are provided with a workable solution. I was initially thinking you wanted to input instrument RIC, eg .INX or .SPX and get the RIC Roots (such as ES) back where the code with MNEMONIC will not return anything. Nevertheless, this is a solution if you provide futures RICs as an input Universe.
0
Categories
- All Categories
- 6 AHS
- 37 Alpha
- 161 App Studio
- 4 Block Chain
- 4 Bot Platform
- 16 Connected Risk APIs
- 47 Data Fusion
- 30 Data Model Discovery
- 608 Datastream
- 1.3K DSS
- 577 Eikon COM
- 4.9K Eikon Data APIs
- 7 Electronic Trading
- Generic FIX
- 7 Local Bank Node API
- Trading API
- 2.7K Elektron
- 1.3K EMA
- 236 ETA
- 519 WebSocket API
- 33 FX Venues
- 10 FX Market Data
- 1 FX Post Trade
- 1 FX Trading - Matching
- 12 FX Trading – RFQ Maker
- 5 Intelligent Tagging
- 2 Legal One
- 20 Messenger Bot
- 2 Messenger Side by Side
- 9 ONESOURCE
- 7 Indirect Tax
- 59 Open Calais
- 264 Open PermID
- 39 Entity Search
- 2 Org ID
- PAM
- PAM - Logging
- 8.4K Private Comments
- 6 Product Insight
- Project Tracking
- ProView
- ProView Internal
- 20 RDMS
- 1.4K Refinitiv Data Platform
- 367 Refinitiv Data Platform Libraries
- 3 Refinitiv Due Diligence
- LSEG Due Diligence Portal API
- 3 Refinitiv Due Dilligence Centre
- Rose's Space
- 1.1K Screening
- 18 Qual-ID API
- 13 Screening Deployed
- 23 Screening Online
- 10 World-Check Customer Risk Screener
- 990 World-Check One
- 44 World-Check One Zero Footprint
- 45 Side by Side Integration API
- Test Space
- 3 Thomson One Smart
- 1.2K TR Internal
- Global Hackathon 2015
- 2 Specialists Who Code
- 10 TR Knowledge Graph
- 150 Transactions
- 142 REDI API
- 1.7K TREP APIs
- 4 CAT
- 21 DACS Station
- 117 Open DACS
- 1.1K RFA
- 103 UPA
- 172 TREP Infrastructure
- 224 TRKD
- 886 TRTH
- 5 Velocity Analytics
- 5 Wealth Management Web Services
- 59 Workspace SDK
- 9 Element Framework
- 5 Grid
- 13 World-Check Data File
- Yield Book Analytics
- 46 中文论坛