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

question

Upvotes
Accepted
34 3 7 6

TR.TotalReturn equivalent for equity indices

I have a quick question about how to calculate returns of equity indices over a certain period of time. For individual stocks, we have TR.TotalReturn and if I want to get returns from 2019-12-31 to 2020-01-10, the function below provides me with what I want:

df_stock_returns = ek.get_data(['3436.T', '8035.T', '7735.T'],

fields=['TR.TotalReturn', 'TR.TotalReturn.date'],

parameters={'SDate':'2019-12-31', 'EDate':'2020-01-10'})[0]

So, I don't have any problem with individual stocks. However, when it comes to equity indices, TR.TotaReturn is not compatible with indices such as .TOPX.

df_index_returns = ek.get_data('.TOPX', fields=['TR.TotalReturn'],

parameters={'SDate':'2019-12-31', 'EDate':'2020-01-10'})[0]

This returns NaN.

If I want to calculate individual stocks' relative returns vs. TOPIX, how can I do that? One idea is to use 1475.T, which is TOPIX ETF, as an individual stock, but an ETF is not exactly the same as an index. So, could someone let me know how I can sort it out? I also tried

df_index_returns = ek.get_data('.TOPX', fields=['PCTCHNG'],

parameters={'SDate':'2019-12-31', 'EDate':'2020-01-10'})[0]

but it only gives me the latest one day return, ignoring SDate and EDate parameters.

eikoneikon-data-apipythonrefinitiv-dataplatform-eikonworkspaceworkspace-data-api
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
18.2k 21 13 21

Hi @iwasakI

You can use TR.ClosePrice instead. (I also add TR.PriceClose.calcDate to display the date in case you are using TR.PriceClose)

And please note that 31 Dec 2019 to 5 Jan 2020 are holiday in Japan.


ahs2.png (52.3 KiB)
ahs.png (288.4 KiB)
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
18.2k 21 13 21

Hi @iwasakI

I am not sure if there is any field carrying the percent change information for an index asset type?

You can contact Refinitiv Content Helpdesk to clarify if there is such field at https://my.refinitiv.com/


Alternatively, you can calculate the change in your code:


ahs.png (47.1 KiB)
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
34 3 7 6

@chavalit.jintamalit Thank you for an idea. However, as you can see, TR.PriceClose suffers from unreasonable duplication for some reason. You can see four duplicated entries for 2019-12-30. This is an error. It is possible to deal with it by .duplicated() in pandas, but it is trickier when I retrieve more than one items at once. This is another headache to me.

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.

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.