For a deeper look into our Eikon Data API, look into:

Overview |  Quickstart |  Documentation |  Downloads |  Tutorials |  Articles

question

Upvote
Accepted
16 1 0 2

How can I get all stocks satisfying some conditions and listed in NYSE on a certain date?

I tried to use R package ‘eikonapir’ to get all stocks listed in NYSE with a market cap bigger than 500 million. The code is as follows:

get_data('SCREEN(U(IN(Equity(active,public,primary))/*UNV:Public*/), IN(TR.ExchangeMarketIdCode,"XNYS"),TR.CompanyMarketCap>=500000000)','TR.TURNOVER,TR.CompanyMarketCap',list('Scale'=0,'SDate'='2010-01-04','FRQ'='D','Curn'='USD'))

It seems that the conditions in SCREEN are not based on the information on '2010-01-04'. The result has many stocks that was not listed in NYSE on '2010-01-04'. All I want is that the conditions in SCREEN are based on the information up to '2010-01-04'.

Thank you so much!

eikoneikon-data-apipythonworkspaceworkspace-data-apirefinitiv-dataplatform-eikonr
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
39.3k 76 11 27

It's not possible exactly. The closest you can do is include inactive and non primary issues in the screener, and then filter out issues that have historical market cap below the threshold or null. E.g.

ek.get_data('SCREEN(U(IN(Equity(active or inactive,public))/*UNV:Public*/),IN(TR.ExchangeMarketIdCode,"XNYS"))',['TR.CommonName','TR.CompanyMarketCap(SDate=20100104)']) 

This is not fool proof, but it's the closest I can think of to get you to an exchange listing as of a given day. You'll have to play around with it to see if you can get satisfactory result this way. You may want to employ additional criteria in the screener such as TR.InstrumentTypeCode to filter out unwanted asset types. And you may want to use TR.IssueMarketCap instead of TR.CompanyMarketCap.

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
39.3k 76 11 27

Equity Screener used in your expression only screens against the most recent value of any field used in criteria. I don't believe there's any way at all in Eikon to search for stocks with a market cap above a given threshold as of a given date. But you may want to verify this by reaching out to Thomson Reuters Helpdesk. The Helpdesk can be reached by either calling the Helpdesk number in your country or by using Contact Us capability in your Eikon application.

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.

how can I get all the stocks on a given date?

I'm not sure I understand the question. Assuming you're asking how you can get all the stocks satisfying a criteria as of a given date, then as I said I believe it is not possible in Eikon.

Hi Alex,

Since Equity Screener can only screens against the most recent value, is that possible that I first get all the stocks listed in NYSE on a given date and retrieve the market cap of them, then I filter them myself

Thank you so much!