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

The speed of getting real-tiime (live) data through Eikon API in python

Hello,

I'm trying to get the real-time (live) data of Bid or Ask quote price and plot the data via python.

But when I use the loop in python, the speed of getting real-time data is too slow.

It may take 1 second for each price.

Therefore, it can't catch up on the stream/variation of the price in real-time.

I wanna get data at the same speed as the actual price changes.


Here is the simple example code.

import eikon as ek
ek.set_app_key('~~~~')

while True:
    df, err = ek.get_data(
            instruments = ['BTC='],
            fields = [SEC_ACT_1'])

    print(df['SEC_ACT_1'].iloc[0])

I think the speed of getting data is slower than the one of the function 'RtGet()' in Excel.


Then, how to improve the speed of getting real-time (live) data via Eikon API?


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.

@eunhwankoh


Thank you for your participation in the forum. Is the reply below satisfactory in answering your question? If yes please click the 'Accept' text next to the reply. This will guide all community members who have a similar question. Otherwise please post again offering further insight into your question.


Thanks,

AHS

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

Thanks,


AHS


1 Answer

· Write an Answer
Upvotes
Accepted
25.3k 87 12 25

Hi @eunhwankoh

To consume real-time streaming data, you should use the Streaming Price interface - rather than get_data().

You can find some older Eikon API Streaming examples at Refinitiv-API-Samples/Tutorial.EikonAPI.Python.Streaming: Tutorial notebooks explaining how to retrieve streaming data with the Eikon Data API (github.com)

However, I would strongly recommend that you use the Refinitiv Data Platform Library instead which also allows you to consume Streaming Data from Eikon by creating a Desktop Session.

Discover our Refinitiv Data Platform Library (part 1) | Refinitiv Developers

The easiest way to try out the RDP Library is via the CodeBook dev environment built into Eikon and Workspace. You can access CodeBook my simply typing CODEBK into the Eikon search bar.

Once Codebook has loaded, you can explore the Examples under '02 - Refinitiv Data Platform Library' - specifically examples 2.2.0 to 2.2.2.

You can also access Codebook from a browser running on the same PC as your Eikon - Use Eikon Data API or RDP Library in Python in CodeBook on Web Browser | Refinitiv Developers

If required, you can run the Python scripts locally outside of Codebook, just use your Eikon AppKey instead of the 'DEFAULT_CODE_BOOK_APP_KEY'

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 @eunhwankoh

If you are plotting data you may also find the following article interesting Streaming Data Visualisation with Matplotlib, ipywidgets and Dash Framework | Refinitiv Developers

Please note that I am a beginner with Dash, matplotlib or iPyWidgets and not an expert on the packages used in the above article. The article was written just to provide a glimpse into the integration of our streaming and historical data into data visualisation.

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.