今回、pythonのEikon_Data_APIを使用したデータ取得について質問があるためメールを送らせていただきました。
【質問】
・1枚目画像の「赤丸で囲んである指数の<RICコード>を取得」するにはどのようにしたらよいでしょうか?
2枚目画像では取得することができませんでした。
Upgrade from Eikon -> Workspace. Learn about programming differences.
For a deeper look into our Eikon Data API, look into:
Overview | Quickstart | Documentation | Downloads | Tutorials | Articles
今回、pythonのEikon_Data_APIを使用したデータ取得について質問があるためメールを送らせていただきました。
【質問】
・1枚目画像の「赤丸で囲んである指数の<RICコード>を取得」するにはどのようにしたらよいでしょうか?
2枚目画像では取得することができませんでした。
Thank you for your participation in the forum. Are any of the replies below satisfactory in resolving your query? If yes please click the 'Accept' text next to the reply that best answers your question. This will guide all community members who have a similar question. Otherwise please post again offering further insight into your question.
Thanks,
-AHS
Hi,
Please be informed that a reply has been verified as correct in answering the question, and marked as such.
Thanks,
AHS
Alternatively, you can expand the chain by your Python code using Eikon Data API.
import pandas as pd import time #Define getUnderlying() function def getUnderlying(baseRic): LONGNEXTLR = baseRic #For LONGLING1 to LONGLINK15 and LONGNEXTLR fields fields = ['LONGLINK{}'.format(x) for x in range(1, 15)] fields.append('LONGNEXTLR') all_underlying_rics = [] #if LONGNEXTLR is not empty, try to retrieve the data fields while LONGNEXTLR!='': df,e = ek.get_data(LONGNEXTLR,fields) LONGNEXTLR = df.iloc[0]['LONGNEXTLR'] if pd.notnull(df.iloc[0]['LONGNEXTLR']) else '' #If LONGLINK<x> field is not null, append its value to all_underlying_rics list for x in range(1, 15): currentField = 'LONGLINK{}'.format(x) all_underlying_rics.append(df.iloc[0][currentField]) if pd.notnull(df.iloc[0][currentField]) else None #delay between each API call for 1 second time.sleep(1) return all_underlying_rics
You can the function with below example:
ricList = getUnderlying('.TSEK') print(ricList)
I'm afraid .TSEK is a chain that does not have typical "0#" chain prefix, hence Eikon Data APIs do not recognize it as a chain. The only way I can think of retrieving the constituents for this chain is by using StreamingChain class of the content layer of RDP Library. Here's a quick example.
import refinitiv.dataplatform as rdp rdp.open_desktop_session('YOUR_APP_KEY') def print_chain_constituents(streaming_chain, constituents): print(constituents) streaming_chain = rdp.content.StreamingChain( name = '.TSEK', on_complete = lambda streaming_chain, constituents : print_chain_constituents(streaming_chain, constituents)) streaming_chain.open()
There are more examples of using StreamingChain class available in Codebook app in Eikon/Refinitiv Workspace under the __Examples__ folder -> 02 - Refinitiv Data Platform Library.
PyPI から refinitiv.dataplatform パッケージをインストールし,下記プログラムを実行しました.
このエラーを消すにはどうしたらよろしいでしょうか?