如何使用 Refinitiv Eikon API 检索指定交易所 RIC 的所有关联公司 RIC?

How to retrieve all associated company RICs for a specified exchange RIC using the Refinitiv Eikon API?

使用 Refinitiv(以前称为 Thomson Reuters )Eikon Data API,有谁知道如何快速 return 所有关联公司 RIC 用于交易所,例如奥斯陆证券交易所?

奥斯陆证券交易所的 RIC 似乎是 .OSEBX

并且 eikon.get_data 在文档字符串中有几个示例:

import eikon as ek
ek.set_app_key('set your app key here')
data, err = ek.get_data(["IBM", "GOOG.O", "MSFT.O"], ["TR.PriceClose", "TR.Volume", "TR.PriceLow"])
data, err = ek.get_data("IBM", ['TR.Employees', {'TR.GrossProfit':{'params':{'Scale': 6, 'Curn': 'EUR'},'sort_dir':'asc'}}])
fields = [ek.TR_Field('tr.revenue'),ek.TR_Field('tr.open',None,'asc',1),ek.TR_Field('TR.GrossProfit',{'Scale': 6, 'Curn': 'EUR'},'asc',0)]
data, err = ek.get_data(["IBM","MSFT.O"],fields)

所以我尝试了 eikon.get_data(instruments = ".OSEBX", fields = "RIC") 的不同变体,但没有成功。

有什么建议吗?

您可以使用 chain(始终以 0# 开头),如下所示:

data, err = ek.get_data('0#.OSEBX', 'TR.CommonName')

这将为您提供指数中所有公司的 RIC,以及它们各自的公司名称。

0#.OSEBX 是代表市场上所有交易股票的指数,所以你真正做的是请求指数成分股。

更好的方法是执行 Equity Screener 查询。例如,这将 return 所有在 OSE 和 Oslo Axess 上市的股票:

screener_exp ='SCREEN(U(IN(Equity(active,public,primary))), IN(TR.ExchangeMarketIdCode, XOAS, XOSL))'

df, e = ek.get_data(screener_exp, 'TR.CompanyName')

您可以使用 Eikon 构建筛选查询 Excel。