I develop with EMA C++;
I want to know how to get "timestamp" of refreshMsg & updateMsg,
so that I can get the time when the msg is created.
Any RefreshMsg or UpdateMsg you receive is created by the server you are connected to, I am guessing that the time it was created by the server is not what you are after?
I would guess that you are after the timestamp for when the Tick / Update and hence the time of the Market Activity on the exchange where the data originates from. Is this correct?
Any timestamps provided by the exchange (or 3rd Party vendor) would appear in a field (in the FieldList) - but only if the exchange provided Refinitiv with any such timestamp.
If the exchange does not provide a timestamp then we do not typically add a timestamp field to the FieldList.
If the exchange does provide a timestamp, it is usually found in a TIME type field e.g. TIMACT, TRDTIM_1, SALTIM
Where the exchange provides more accurate timings they appear in fields like
TRDTIM_MS (3853), SALTIM MS (3854). These are unsigned integer fields as they contain milliseconds since midnight - so for example 29,295,123 is 08:08:15:123.
Note that sometimes the _MS fields wont contain millisecond granularity so e.g. they may just contain a value like 29,295,000 = 08:08:15:000. This would be the case if the exchange did not provide a millisecond accurate value.