Symbol Conversion does not seem to give me the correct RIC.

Previously, I made a post about retrieving the data here, the code will be pasted again here.

When I typed in 'TYO', the code does not return the correct answer 'TYO' but 'TYOGc1'. I would be grateful if someone can help me out.

import pandas as pd
import refinitiv.data as rd
from refinitiv.data.content import symbol_conversion

def RefinitivRetriever(Ticker):
rd.open_session()
converted = []

Refinitiv_Info = symbol_conversion.Definition(
symbols = Ticker,
from_symbol_type = symbol_conversion.SymbolTypes.TICKER_SYMBOL,
to_symbol_types = [
symbol_conversion.SymbolTypes.RIC
],
).get_data()
# This step is to check if the conversion is successful. If not, fill in with an empty string.
for t in Ticker:
try:
converted = converted.append(Refinitiv_Info.data.raw['Matches'][t]['RIC'])
except KeyError:
converted = converted.append('')

# Return a dataframe with two columns, first one RIC list, while the second one Company Market Cap
RICs = Refinitiv_Info.data.df['RIC'].tolist()
MarketCap = rd.get_data(RICs, fields = ['TR.CompanyMarketCap'])
MarketCap.columns = ['RIC', 'MarketCap']

rd.close_session()

Best Answer

  • Hi @CharlesYan,

    Please use further arguments within the `symbol_conversion.Definition` to narow down your search. E.g.: `asset_class`


    import refinitiv.data as rd
    from refinitiv.data.content import symbol_conversion
    rd.open_session()

    test = symbol_conversion.Definition(
    symbols = "TYO",
    from_symbol_type = symbol_conversion.SymbolTypes.TICKER_SYMBOL,
    to_symbol_types = [symbol_conversion.SymbolTypes.RIC],
    asset_class="Funds").get_data()
    display(test.data.df)

    rd.close_session()


    1702977239479.png


    You can find information about these arguments here, which was linked here.

Answers