I have question related to Market Depth response (L2 data).
In "Refresh" message which is the first response we receive sometimes contains flag called "Complete". I understand that the default of this flag is true if not present and we should wait for the next Refresh message.
Is it possible to get this 'Complete' flag even in "Update" event types (i.e all messages we receive after the "Refresh" ?
Complete flag will only be included in the Refresh message. Update messages will not have this flag - however, due to race around condition, it might happen that you receive an Update message before the final Refresh message is received. So you should be able to handle this situation in your application.
See the message description for MBO here - https://docs-developers.refinitiv.com/1595352524651/14977/#page/RDM%2520Usage%2FMarketbyOrder.2.2.html%23
As you are looking at L2 data, you may also find this article useful. Whilst using EMA C++ for the coding, much of the intro section and techniques would apply to data received using Websocket API as well.