Refinitiv Data Library performance significantly worse than Eikon Data API

Hello,

Due to the fact the Eikon API is going to be phased out, I've started looking at replacing code from using the Eikon Library, to the Refinitiv Data Library in Python. Currently everything is clear and going smoothly, but I've noticed that the RD library has significantly worse performance than the eikon library.

For example, retrieving the CF_NAME for 24 bonds takes around 4.7 seconds. In Eikon, running the same command takes no longer than two seconds with the fastest I found being 1.15. This is quite a large difference and leads to issues that weren't present before, such as time-out errors in the function calls or the data being retrieved simply too slowly.

What could be the cause, and is there any way to change this? Also is the Eikon library that is being phased out refinitiv.data.eikon as well as the individual eikon library?

I'm running a desktop session on the RD library. Both libraries are fully updated.

Thank you in advance.

Best Answer

Answers

  • @ns02 The Eikon Data API is slightly older now and we have newer libraries that have access to newer services such as enhanced historical pricing models, search services, instrument pricing and many more. We would encourage customers to use the new Refinitiv Data Libraries - where the last version of the Eikon Data API will remain for backwards compatibility. But that library is feature complete now. From our testing the RD Library is much faster - particularly for historical pricing as that is a much newer service. In terms of the field you mentioned it should be exactly the same as it uses the same underlying service as the Eikon Data API but as you can see from below RD lib is much faster for the same service - here a 34 instrument chain:

    1721141988705.png


    -vs- RD

    1721142019008.png


    So wall time is 4.88s for Eikon Data API vs 1.49s RD Lib with Chain Decoder. Note you should restart both kernels before testing as there might be some prior caching. I hope this can help.


  • ns02
    ns02 Newcomer

    @jason.ramchandani01 . Indeed when I run your example the Refinitiv Data Library is faster. However, it seems in my test case where I provide a large list for the universe, I find that eikon performs significantly better. Is there a specific way I should query when requesting a large number of instruments in the universe that I cannot get from a chain object?

    1721145353407.png

  • ns02
    ns02 Newcomer

    Interestingly, if I run it on the individual rics in a for loop, RD library performs significantly better.

    1721145802278.png


  • Hello @ns02

    The LSEG Data Library - Python is available now. Can you try it?

  • ns02
    ns02 Newcomer

    Hello @wasin.w ,


    I have tested the new library, and I get similar performance to the Refinitiv Data Library, with performance still being slower than when using Eikon for both the get_data, and get_history/get_timseries functions.

    1726335083788.png

    1726335299684.png

  • Hi @ns02 ,


    We have an open Jira ticket for this, the team is currently investigating the issue. Will update here, once the changes are deployed.


    Best regards,

    Haykaz

  • ns02
    ns02 Newcomer

    Hi @aramyan.h ,

    I hope all is well. Is there any update by any chance on this issue?

    Best,

    ns