For a deeper look into our Eikon Data API, look into:
Overview | Quickstart | Documentation | Downloads | Tutorials | Articles
There are 3 issues here
1. The timestamps are in GMT
get_timeseries method interprets the times in start_date and end_date values as GMT. The returned timestamps are also in GMT. For your request you need to use start_date='2021-07-09T13:30:00', end_date='2021-07-09T20:00:00'
2. Summarized timeseries in Eikon are timestamped with the end of the time interval, not the with the beginning. The time interval between 9:30 and 9:31 is labeled "9:31", not "9:30". So, the 1 minute open that corresponds to the daily open for US stocks is the open of "9:31" interval. And since the timestamps are in GMT, for TSLA.O on 2021-07-09 it is actually "13:31".
3. To have the 1 minute open at 13:31 GMT match the daily open you also need to include calendar='tradingdays' parameter.
Try the following
df = ek.get_timeseries('TSLA.O', start_date='2021-07-09T13:30:00', end_date='2021-07-09T20:00:00', interval='minute', calendar='tradingdays') df.loc['2021-07-09 13:31:00']