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

Overview |  Quickstart |  Documentation |  Downloads |  Tutorials |  Articles

question

Upvotes
Accepted
24 5 7 11

Converting a list of tickers to RICs

Hi there

I try to convert a list to tickers (such as IBM, AAPL) to RICs, such that I can carry out later queries. I have ~ 4000 of such tickers, which include delisted ones (such as OB). It is not wise to check them manually one-by-one, therefore I am looking for built-in methods to do the conversion.

I've tried two methods: get_data() and get_symbology(). For each of the command I can pass the list of tickers in, and hopefully the return values would contain the corresponding RICs, if applicable.

The get_data() method didn't do a good job, for example, for the ticker 'CALX', it won't return the corresponding RIC (should be CALX.K).

For CALX, the get_symbology() didn't return me the RIC either, but it return a ISIN. I then can call get_symbology() again, using ISIN as lookup argument, to get me the CALX.K. Therefore, I can manage to covert tickers to RIC through ISIN.

So far it seems that get_symbology() would solve my problem, however, I found I still missed few ticker --> RIC conversion. For example, if I am looking to convert the ticker SIR (RIC = SIR.O, from desktop version), there is no anything else available from ek.get_symbology('SIR', from_symbol_type='ticker'), other than its own ticker. Therefore, my ISIN solution won't work either.

Can someone wade in this problem?

Thanks!

eikoneikon-data-apipythonworkspaceworkspace-data-apirefinitiv-dataplatform-eikonricssymbology
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.

Upvotes
Accepted
434 1 2 2

HI @renne.yao - you are getting this because there is a bestMatch parameter that is set to True by default. This is something that we will fix (add this on the function signature).

However meanwhile you can do the following:

ek.json_requests.send_json_request('SymbologySearch',{'symbols': ['CALX'], 'from': 'ticker', 'to': ['RIC'], 'bestMatchOnly': False})

This will always return a list of matching RICs. The first item should show the best match. For example - for the above request you would get:

{'mappedSymbols': [{'RICs': ['CALX.K', 'CALX.N', 'CALX.MW', 'CALX.ZY', 'CALX.Z', 'CALX.B', 'CALX.TH', 'CALX.DG', 'CALX.P', 'CALX.DY', 'CALX.C', 'CALX.PH', 'CALX.A', 'CALX.DF', 'CALX.BT1', 'CALX.NB', 'CALX.ITC', 'CALX.BAT', 'CALX.BYX', 'CALX.EI', 'CALX.W^E14'], 'bestMatch': {'error': 'No best match available'}, 'symbol': 'CALX'}]}

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.

Upvotes
166 10 17 21

Maybe you can give PermID`s record matching a try:

https://permid.org/match

Nevertheless, the get_symbology() should work too. Any suggestions @Alex_Putkov. or @jorge.santos?

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.

Thanks @Joris.Hoendervangers! However, the permid doesn't seem to give me RIC, but rather some detailed information about the underlying companies...

I had high hope for get_symbology() too, but the simple test for looking up ticker --> RIC with 'SIR' really get me down...