It looks as if the volumes given for london equities (eg BP.L) are wrong when pulling 1min bars through get_timeseries(). Off by couple orders magnitude!
any idea?
Hi @kenley.macandog , @t.hubert
You can use interval="tas" to retrieve timeseries information.
Here is the sample code:
df = ek.get_timeseries('BP.L', fields=['BID','ASK','TRDPRC_1','VALUE','COUNT'], start_date="2020-02-13", end_date="2020-02-14", interval="tas")df
Please see the (small amount of the) data point below:
Hi @t.hubert
Here is the sample API call to retrieve 1-minute bar data.
However, for data clarification, please contact Refinitiv Content Helpdesk at https://my.refinitiv.com
They will be able to confirm which you on any content questions.
I know how to get the bars, I am just pointing out that those volume numbers make no sense at all. 1 billion BP shares traded in one minute? eh?
I posted the sample code just to make sure that the API call is correct.
For content clarification, please contact Refinitiv Content Helpdesk at https://my.refinitiv.com
Moderators in this forum cannot confirm content behavior.
@chavalit-jintamalit Client Tony Hubert reached us for the data issue.
I have engaged our Data Team and confirmed that London Stock Exchange (LSE) is providing volume data on FID 1031 which is the data being retrieved in the call retrieval you provided.
FID1031 displays both regular trades and theoretical trades from the exchange feed. This is why we are getting millions or billions of trade volume on the auction session (pre/post market). I have confirmed that this data logic has been like this for quite a while and Refinitiv has no control on the flow of data.
We have a way to filter out theoretical trades/data in Eikon apps like the CHT and TAS app. However the issue lies on those using fields to consume the data like those using API and Eikon Excel.
Need assistance if you can help client to check other call retrieval in Python which will only retrieve data from the regular trading session which is between 08:00- 16:30 London Time. This is the only workaround I can think of. If you also know other fields to use in Python, please share it to client.
For the moment I am doing exactly this: imposing continuous trading hours on the data retrieved. The problem with this however is that opening auctions tend to open not exactly but a random amount of time after 0800 London time.
Also London has an intra ay auction at 1100 London time which may last a minimum of 2 minutes.
Another auction that should then be filtered out is the expiration auction every third friday of the month.
And then you have the ciruit breaker auctions that can happen any random moment.
So I guess the only option is filtering out any number that is x standard deviations away from normal.