question

Upvotes
Accepted
3 0 0 2

OMM L2 start of trading day

We have a binary using RFA C++ 8.2.1.L1. We use OMM L2 to get L2 data. Our client subscribe during the morning to L2 data and everything is fine. We get a stream of L2 data. On the next day, during opening we still have order book from previous day present. How can we know it's a new day and order book has to be cleared ?

rfa-apiscreeningOMMlevel-2
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
16.7k 42 12 19

Hi @Nicolas.Brunel ,

You didn't specify, if your application disconnects overnight or stays connected. The orderbook behavior will depend on the listing venue. Some markets clear the books after the trading day and repopulate open orders next day, while others can leave the orders.

If your application stays connected, then look out for a clear cache message from the system, which implies your application should discard all the orders it is holding in the memory. Your application still has to process a clear cache, if it starts at 5AM and the market clears the old books right before trading start. This message can also be send during the trading hours or after trading halt etc.

Please read the article linked by Umer and see this question about details on clear 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.

We stay connected.
Ok, so you will definitely need to look out for the clear cache signal from infrastructure.
Upvotes
24.9k 87 10 22

Hi @Nicolas.Brunel

I am not a content expert, however, my understanding is that if you continue to process all the data events (Update and Unsolicited Refresh messages etc) you receive during the day, overnight and/or the next day - and apply those changes to your local orderbook object - then your local orderbook object should reflect the market position for the order book.

Note that the Update Messages should include add, update and delete actions - which you would be expected to apply to your orderbook object.

If you are doing all the above and you believe the local orderbook content is not correct, please raise a content type ticket with our Helpdesk. Please provide details of the instruments for which you are consuming the L2 data - so that the ticket is routed to the most appropriate content expert.


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.

@Nicolas.Brunel
The following article provides some information on processing Orderbook data events How to Sort & Process Level 2 Orderbook Data using EMA C++ API | Refinitiv Developers

Whilst the article is using EMA snippets, the overall process would still apply to RFA.

You can also refer to the RDMUsageGuide which is provided with your RFA SDK pacakge.

Upvotes
3 0 0 2

Thanks to everyone. We know what to implement now.

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.