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
1 0 0 1

No longer able to retrieve a specific list of historical constituents

A few months back, I was able to get the historical data from the following index, "KLSE" using the following API:

get_data('0#.KLSE(2018-01-01)', list('TR.InstrumentName', 'TR.CompanyMarketCap(ShType=OUT)'))

But recently, nothing is returned unless I removed the date parameter. Using its other name, "KLCI" also did not return anything. However, the historical data are accessible on Eikon's UI.

Other indexes historical data such as "KLFI" are accessible e.g.

get_data('0#.KLFI(2018-01-01)', list('TR.InstrumentName', 'TR.CompanyMarketCap(ShType=OUT)'))

I've contacted customer support regarding the matter and they have asked me to post the question here.

Anything changed?

#contenthistoricalindexconstituents
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.

Hi @netr ,

Thank you for your participation in the forum. Is the reply below satisfactory in resolving your query?
If so please can you click the 'Accept' text on the left side of the appropriate reply? This will guide all community members who have a similar question.

Thanks,
AHS

@netr

Hi,

Please be informed that a reply has been verified as correct in answering the question, and marked as such.

Thanks,

AHS

Hi, sorry but the response didn't answer the question but I have contacted support.
Upvotes
Accepted
78.8k 250 52 74

@netr

Thanks for reaching out to us.

According to the Eikon Data API - Cheat Sheet article, you can use the following formula to get Index/Exchange Constituents as of a certain date.

IndexData,err = ek.get_data('0#.IXIC(20190102)',['TR.RIC'])
IndexData

However, it doesn't work with 0#.KLSE. You can contact the Eikon Excel support team directly via MyRefinitiv to verify what the problem is.


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
14.2k 30 5 10

Hi @netr ,

I'm sorry for this inconvenient, could you please try the code below instead?

df, err = ek.get_data('0#.KLSE', ['TR.InstrumentName', 'TR.CompanyMarketCap(ShType=OUT)'], {'SDate':'2018-01-01'})
display(df)

1671421602466.png

I've checked with the output from Eikon Excel formula and the outputs are match.

1671421649515.png

Hope this helps and please let me know in case you have any further questions.


1671421602466.png (28.1 KiB)
1671421649515.png (39.0 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
1 0 0 1

I tried the same on Excel:

=TR("0#.KLSE","TR.InstrumentName;TR.CompanyMarketCap(ShType=OUT)","SDate=2020-12-31 CH=Fd RH=IN",G11)

but this seems to only get the market cap value, not getting the constituents for the specific year? Changing the year seems to retain the same constituents?

I compared the results from Bursa Malaysia's official list and it doesn't seem to match - notice the ones in red are not in the list:
1671441094190.png




1671441094190.png (180.3 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.

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.