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

Overview |  Quickstart |  Documentation |  Downloads |  Tutorials |  Articles

question

Upvotes
Accepted
1 0 0 0

WebSocket API - understanding Conflation

Hi,

Please confirm if the below understanding is correct -

Websocket API operates with a 3 sec tradesafe conflation. This would mean quotes will be conflated i.e., API consumer will get 3 updates every second. Is this right?

If so, when we get data every .333ms - are we receiving the latest bid/ask quote or the data will be collated and sent out?

And, there is no conflation on trade ( i.e., consumer will receive all trades).


Thanks

Sheetal

treprdp-apiwebsocketsrrtotradeconflation
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
Accepted
14.7k 39 12 18

Hi @bansalshah, I have received the reply from the product team, and they inform that if a Trade Event occurs, it flushes the events queue, thereby sending out all the quote events which might have been collected - waiting to be conflated.

So, the Quote updates will be conflated, only if there are no Trade updates in that 330 ms interval. Hope this helps.

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.3k 23 8 12

Hello @Sheetal Addigi

The data conflation means multiple update messages are combined into a single update message to reduce traffic. The 3 seconds tradesafe conflation means the consumer will get every Trade updates and a single update that combined latest Quote data by 3 seconds.

Please see example of different between Tick by Tick Quote and Conflation Quote below.


conflation.png (257.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
7.6k 15 6 9

@Sheetal Addigi

Are you using Elektron Websocket API with Elektron Realtime (ERT) in Cloud?
ERT in Cloud currently delivers 3 updates a second (assuming any Market Activity actually takes place) + plus all trades as well - this is known as Trade Safe conflation.

When Trade Safe conflation is enabled on the server- then any Trade type updates will always be passed to the consumer - whereas Quote type updates will be conflated like the sample picture provided by Wasin.

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
23.5k 84 10 22

Hi @Sheetal Addigi

Please note that Websocket API itself does not implement Conflation of any type. The Conflation is down to whichever feed / service you are connecting to.

Therefore, if you are connecting to ERT in Cloud then you will get the conflated feed as described above.

If, however, you are using Websocket API to connect to an TREP ADS server then the data you receive will depend on how your Market Data team has configured that particular service - e.g. full tick, delayed , conflated etc.


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.

Thanks, Umer. I have a follow-up question -

It is unclear to me from the image above if it indicates there are 3 events (1,2,3) updates sent a second.

It looks like one of the below- can you please clarify what it means?

  1. There were 3 events in a second and only one was sent to consumer( maybe the latest)?
  2. Does Second: 1. Second:2, Second :3 indicates that in a second there were 3 events - but again only one is sent to the consumer?


Wasin statement is confusing to me - "The 3 seconds tradesafe conflation means the consumer will get every Trade updates and a single update that combined latest Quote data by 3 seconds."

It says, a single update is received in 3 seconds which would mean for quotes, consumer receives single (one) update every 3 seconds? conflicts with what @moragodkrit has stated.

Upvotes
1 0 0 0

@Wasin Waeosri statement is confusing to me - "The 3 seconds tradesafe conflation means the consumer will get every Trade updates and a single update that combined latest Quote data by 3 seconds."

It says, a single update is received in 3 seconds which would mean for quotes, consumer receives single (one) update every 3 seconds? conflicts with what @moragodkrit has stated.

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.

Upvote
14.7k 39 12 18

Hi @Sheetal Addigi, The first example from Wasin is an example of how conflation works. The time (conflation interval) used in his example is 3 seconds.

The ERT in Cloud service is currently configured for 3 updates/second conflation. This translates to 333 ms interval. So any quote updates occurring within that 333 ms interval will be merged into a single update.
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 @Gurpreet,

Conitnuing Sheetal's question here, If ERT in Cloud service is currently configured for 3 updates/second, then the data that I see does not follow that,


Here in the sample data for 9:38:11 th second, I have 5 quotes, 3 Unspecified, and 2 trades. Can you explain the reasoning for the same?


Data received at 9-38-11 th second for VOD.L Realtime.txt

@Gurpreet possible to set up a call and get our questions clarified?

Upvotes
14.7k 39 12 18

@bansalshah Can you please confirm which source you are getting this data from?

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 @Gurpreet,

I am using Websocket API to connect to ERT in Cloud service.

Thanks, I will reach out to product team to confirm the conflation interval. Please be mindful that the timestamp you have in the captures are your local ones and not representive of server time and do not account for network latency from cloud to your infrastructure.

Even if you dont consider the local time and check the Quote time in ns field returned in the data, the time is more precise there.

Are you able to provide a complete capture file - if you have it.

I am not able to upload the whole file because of the limit of 512 Kb for file upload. But here are two files for them. Data from Refinitiv -1.txtData from Refinitiv -2.txt