Identifier conversion to RIC

Hello,
I am trying to get the RIC of a list of banks I got through S&P Capital IQ. For each bank, I have their name, their primary industry, and sometimes their SNL, CIQ, CUSIP, ISIN and LEI identifiers. I converted the ISIN codes to RIC by using the code: ek.get_symbology( symbol = ISIN , from_symbol_type = "ISIN", to_symbol_type = "RIC"). However, I only have a limited number of ISIN identifiers available (only for one third of my sample). The problem is similar for the CUSIP identifier. I have much more SNL, CIQ and LEI identifiers, but they does not seem to be supported as inputs for the function ek.get_symbology. Do you know if there is a function where we could use either the CIQ, the LEI identifiers or even the name of the banks to get their RIC?
Thanks a lot in advance.
Best Answer
-
Hi @eikon114
There is an RDP service (symbology) that will support the conversions you are after. For example, converting the following LEI to a RIC:
import refinitiv.data as rd
...# Symbology
request_definition = rd.delivery.endpoint_request.Definition(
method = rd.delivery.endpoint_request.RequestMethod.POST,
url = 'https://api.refinitiv.com/discovery/symbology/v1/lookup',
body_parameters = { # Specify body parameters
"from": [
{
"identifierTypes": ["LEI"],
"values": ["549300561UZND4C7B569"]
}
],
"to": [
{
"identifierTypes": ["RIC"]
}
],
"path": [
{
"relationshipTypes": ["InverseIsPrimarySecurityOf"],
"objectTypes": [
{
"from": "Organization",
"to": "AnyInstrument"
}
]
},
{
"relationshipTypes": ["InverseIsValuationQuoteOf"],
"objectTypes": [
{
"from": "AnyInstrument",
"to": "AnyQuote"
}
]
}
],
"reference": ["name","status","classification"],
"type": "strict"
}
)
response = request_definition.get_data()# Dump the json response from the platform containing the results
response.data.raw{'data': [
{
'input': [
{
'value': '549300561UZND4C7B569',
'identifierType': 'LEI'
}],
'output': [
{
'value': 'TRI.TO',
'identifierType': 'RIC',
'name': 'THOMSON REUTERS ORD',
'status': 'Active',
'classification': 'Ordinary Shares'
}]
}],
'requestId': 'cae84148-61ce-4b1c-aac9-e2036035a519',
'effectiveAt': '2022-03-21T15:43:21.313Z',
'messages': []
}0
Answers
-
Hi @eikon114,
Judging by the function `ek.get_symbology` mentioned in your question, I'm guessing that you're coding in Python?
Have you seen this answer (below) from my colleague? Does it answer your question?
If the above fails to help you, may I ask if searching the LEI, CIQ or name of the banks in the Eikon/Workspace search bar returns the correct RIC you're after? If so, I'd suggest using the Search API in Python. There's a great article on just that here:
https://developers.refinitiv.com/en/article-catalog/article/building-search-into-your-application-workflow
I also wrote a function that uses this API to output data in excel if that interests you. It is yet to be put into an article:https://gist.github.com/johnukfr/241c2b360a30f96371f430005c8d7738
0 -
Hi @eikon114
The above suggestion requires access to the PermID API.
If you don't have access to PermID API, you can also take a look at a simple bulk symbology conversion example I put together for a client - using the RDP Library - which can connect to Eikon as well as the Refinitiv Data Platform.
The above defaults to converting ISINs to RICS - but you can easily change the code to use others such as LEI.
You can run the above example against Eikon by creating a desktop session (rather than the platform session)
session = rdp.open_desktop_session(APP_KEY)
Note, however, that we will be replacing the RDP Library with the newer RD library - which also offers similar as well as additional features to the RDP library.
See the Symbology Tutorial for the RD Library
Symbology Tutorial | Refinitiv Developers
as well as the Endpoint tutorial - which is the interface used by my example above.
Endpoint Tutorial | Refinitiv Developers
0 -
You can use LEIs with the get_data method to get RICs. For example:
df, err = ek.get_data(
instruments = ['549300561UZND4C7B569@LEI','WFLLPEPC7FZXENRZV188@LEI'],
fields = ['TR.RIC']
)
dfThe output is:
With the get_symbology method, you can set best_match=False to get all mapped symbols.
ek.get_symbology( symbol = ISIN , from_symbol_type = "ISIN", to_symbol_type = "RIC", best_match=False)
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
- 685 Datastream
- 1.4K DSS
- 616 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
- 252 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
- 275 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
- 652 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
- 917 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
- 46 中文论坛