When are Market Price Refresh messages sent?

Nick_G
Nick_G LSEG
edited 2:55AM in EMA

I'm experimenting with consuming Market Price messages using the EMA. I have a simple prototype that logs in, subscribes to a RIC, then prints all the messages it receives to the console. When I run my program, after logging in, I see a single Refresh message and then a series of Update messages afterwards.

If I left my program running indefinitely, when should I expect to receive another Refresh message? For example, would I receive another Refresh at some point after the current trading day, to "reset" some of the fields to (blank data) before the next trading day?
Does this behaviour differ between RICs/exchanges/geographies etc?

I read section 6.2.2 of the domain model guide (https://developers.lseg.com/content/dam/devportal/realtimeapi_pdfs/emaj_rdm_usage_guide.pdf), but it doesn't seem to describe when that type of message will be sent.

By the way, whenever the guide mentions the "provider", I'm assuming it means Refinitiv/LSEG, so please let me know if I've got that wrong.

Thank you.

Answers

  • Hello @Nick_G

    A Refresh message is used to synchronize all data fields between a consumer and the source of data, and as such it can be sent at any time. It is typically sent when the consumer first requests data for an instrument, and also if the infrastructure senses a disconnect or any other event. An application should be prepared to receive an unsolicited Refresh message at any time - without any fixed schedule.

    Here is the recommended approach for a consumer application -

    Received a Refresh or unsolicited Refresh = discard existing internal cache and re-populate all fields.

    Received an Update message = replace the cached fields with new ones in the message.

  • Jirapongse
    Jirapongse ✭✭✭✭✭

    @Nick_G

    Typically, we use the Closing Run update type in the update message to reset fields.

    Closing Run Correction

    A broadcast message to reset fields within a record before commencement of trading. Typically such adjustments are: previous night‘s last traded price is copied to the close price field. These messages are not a reflection of market activity. The information is sent using an update event.

    image.png