Missing TRADE_DATE in Update Message

Hello.

I am using EMA Market Price Domain to retrieve market data. Some update messages contain field TRADE_DATE, some update messages does not. Could you please help me to understand if it is related to the fact that Refinitiv aggregates data from different sources and not all of them may have TRADE_DATE?

In general, I am trying to get UTC timestamp of the trade. So I try to sum values of the fields TRDTIM_MS and TRADE_DATE in milliseconds to achieve this goal.

Best Answer

  • Hi @vasiliev.nett

    The UpdateTypeNum=10 indicates that this update is one with 'other filtering and conflation applied'.

    I am not a content expert, so, it could be that because the TRADE_DATE hasn't changed since the last Refresh or Update Msg, it is not being sent out again OR it could be the filtering which is affecting this behaviour.

    I will raise a ticket for you with the Content HelpDesk - who should be able to provide an informed answer. I will update the ticket number here presently.


Answers

  • Hi @vasiliev.nett

    Do the updates that have no TRADE_DATE have a TRDPRC_1 or other trade-related price field? Or only Quote related Price fields?

    Please provide examples of such an update with all the fields you received and the UpdateType e.g. for EMA Java it would UpdateMsg.updateTypeNum() - which has values such as EmaRdm.INSTRUMENT_UPDATE_TRADE or EmaRdm.INSTRUMENT_UPDATE_QUOTE

    For EMA C++, it would be UpdateMsg.getUpdateTypeNum() with values such as ema::rdm::INSTRUMENT_UPDATE_QUOTE or ema::rdm::INSTRUMENT_UPDATE_TRADE


  • There is the example of messages I have received:

    RefreshMsg

    streamId="10"

    domain="MarketPrice Domain"

    solicited

    RefreshComplete

    state="Open / Ok / None / 'hash3Astatus-All is well'"

    itemGroup="00 3e"

    permissionData="03 03 86 28 49 c0"

    name="/AAL.L"

    nameType="1"

    serviceId="902"

    serviceName="hEDD"

    Payload dataType="FieldList"

    FieldList FieldListNum="0" DictionaryId="1"

    FieldEntry fid="6" name="TRDPRC_1" dataType="Real" value="2455.5"

    FieldEntry fid="16" name="TRADE_DATE" dataType="Date" value="04 FEB 2021"

    FieldEntry fid="22" name="BID" dataType="Real" value="2455.5"

    FieldEntry fid="25" name="ASK" dataType="Real" value="2456.5"

    FieldEntry fid="30" name="BIDSIZE" dataType="Real" value="169.0"

    FieldEntry fid="31" name="ASKSIZE" dataType="Real" value="1416.0"

    FieldEntry fid="178" name="TRDVOL_1" dataType="Real" value="170.0"

    FieldEntry fid="345" name="BID_TONE" dataType="Rmtes" value="(blank data)"

    FieldEntry fid="346" name="ASK_TONE" dataType="Rmtes" value="(blank data)"

    FieldEntry fid="3853" name="TRDTIM_MS" dataType="UInt" value="33460376"

    FieldEntry fid="3900" name="TRADE_ID" dataType="Rmtes" value="254288450305078"

    FieldEntry fid="4147" name="ASK_TIM_MS" dataType="UInt" value="33460804"

    FieldEntry fid="4150" name="BID_TIM_MS" dataType="UInt" value="33460804"

    FieldEntry fid="6614" name="TRD_STATUS" dataType="Enum" value="1"

    FieldEntry fid="6615" name="HALT_RSN" dataType="Enum" value="1"

    FieldEntry fid="8464" name="ASK_TONE1" dataType="Rmtes" value="(blank data)"

    FieldEntry fid="8469" name="BID_TONE1" dataType="Rmtes" value="(blank data)"

    FieldEntry fid="8927" name="INST_PHASE" dataType="Enum" value="3"

    FieldListEnd

    PayloadEnd

    RefreshMsgEnd

    ------------------------------------------------------------------------------------------------------------------------------

    UpdateMsg

    streamId="10"

    domain="MarketPrice Domain"

    updateTypeNum="10"

    name="/AAL.L"

    serviceId="902"

    serviceName="hEDD"

    Payload dataType="FieldList"

    FieldList FieldListNum="0" DictionaryId="1"

    FieldEntry fid="22" name="BID" dataType="Real" value="2454.5"

    FieldEntry fid="25" name="ASK" dataType="Real" value="2455.5"

    FieldEntry fid="30" name="BIDSIZE" dataType="Real" value="150.0"

    FieldEntry fid="31" name="ASKSIZE" dataType="Real" value="281.0"

    FieldEntry fid="4150" name="BID_TIM_MS" dataType="UInt" value="33476890"

    FieldEntry fid="4147" name="ASK_TIM_MS" dataType="UInt" value="33477110"

    FieldEntry fid="6" name="TRDPRC_1" dataType="Real" value="2455.5"

    FieldEntry fid="178" name="TRDVOL_1" dataType="Real" value="119.0"

    FieldEntry fid="345" name="BID_TONE" dataType="Rmtes" value="(blank data)"

    FieldEntry fid="346" name="ASK_TONE" dataType="Rmtes" value="(blank data)"

    FieldEntry fid="3853" name="TRDTIM_MS" dataType="UInt" value="33476889"

    FieldEntry fid="3900" name="TRADE_ID" dataType="Rmtes" value="254288450305106"

    FieldEntry fid="8464" name="ASK_TONE1" dataType="Rmtes" value="(blank data)"

    FieldEntry fid="8469" name="BID_TONE1" dataType="Rmtes" value="(blank data)"

    FieldListEnd

    PayloadEnd

    UpdateMsgEnd

  • Hello @vasiliev.nett

    The answer from Direct Feed/Content team is the following:

    FID 16 would update as and when we have trade on a trading day. It is the date the last trade occurred on FID-6.

    The scenarios where the FID would not update are:

    1. If only the quotes (bid and ask) are available but the trade is not executed.
    2. If the trade is cancelled.
    3. If the trade executed is a previous day trade. (PDTRDPRC) 3880 fid
    4. if ACT_FLAG has "A" as its update