For a deeper look into our Elektron API, look into:

Overview |  Quickstart |  Documentation |  Downloads |  Tutorials |  Articles

question

Upvotes
Accepted
3 0 0 2

Refinitiv Realtime Optimised (Websocket API) - Not receiving complete response for requests sent periodically

Hi,


We are using Refinitiv Realtime Optimized (Websocket API) to recieve Realtime price. We notice that sometimes the response from Refinitiv does not come back with all the data requested. We receive only partial data.

The Api is used to fetch Realtime price every 2 minutes.

refinitiv-realtime#technology
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.

@lalith.kumar

To verify what the problem is, please share the code that you are using. Therefore, we can use it to replicate this issue.

You may also need to share all messages sent and retrieved by the application.

Upvotes
Accepted
18.2k 84 39 63

Hi @lalith.kumar

Updates are designed to present values that have changed in the backend. Many of the fields you can request will very rarely change so it is not the intention of the real-time systems to present hundreds of fields within an update when only a few change. Instead, when you request for real-time streaming data, you will receive the "Refresh" which is effectively a snapshot of the latest values. When there is any activity in the market where changes occur to an instrument, for example a trade, you will only receive the trade fields. It is up to the application to hold onto all fields within their own cache.

Alternatively, you can use the Pricing interface within the Refinitiv Data Libraries. These libraries provide a wrapper around the WebSocket service but include a layer of convenience such as requesting for streaming data and automatically managing a cache. What this means is when you open a Pricing stream for an instrument, the Pricing stream will manage updates and keep an up-to-date active cache. So, you can be notified when an update occurs and simply grab whatever fields you need within the cache.

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
14.6k 30 5 10

Hi @lalith.kumar ,

Regarding the Refinitiv Websocket API - Overview, could you please confirm whether the response you got is the update message type? as the update messages only contain fields that has an update compared to the previous response
1679992305018.png

The description of Request message and Update message is described in WebSocket API Specifications and Developers Guide below

  • Request message is sent from a consumer to a provider when it wants to request some data, or a capability, available from the provider. It can also be used to obtain a new response (e.g. synchronization point) or change selected attributes (e.g. priority) for an already open event stream.
  • Update message is used to represent asynchronous payload data events associated with an already opened event stream. Domain models may assign different meaning to Updates depending on the actual content modelled.

Hope this helps and please let me know in case you have any further questions.


1679992305018.png (114.2 KiB)
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
3 0 0 2

Hi @raksina.samasiri ,


I see response type as both Refresh and Update, but most of these occurrences where we are not getting complete data are Updates.


1679998485631.png



so, is this an expected behavior? Is there a way that we can receive all the data even if there is no update.

Thanks and Regards

Lalith Kumar


1679998485631.png (8.7 KiB)
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.

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.