question

Upvotes
Accepted
21 1 0 2

How to detect a closing run event in RFA 7.3+

My demo is using RFA 7.3 & 7.5 with RSSL connection. I would like to detect whether a message update event is a closing run event. In OMMItemEvent class, I can't find any useful function to identify it.

Could you tell me how to detect a closing run event?

treprfarfa-apiclosing-run
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 5.0 MiB each and 10.0 MiB total.

Upvotes
Accepted
20.3k 73 10 20

Hi @yujin.xu11

I could not find an example that explicitly checks for CLOSING_RUN but I did find a snippet of code which dumps out the RespTypeNum value converted to a string:

 private static void dumpRespTypeNum(OMMMsg msg, PrintStream ps)
 {
    if (msg.getMsgType() == OMMMsg.MsgType.REFRESH_RESP)
    {
        ps.println(" (" + OMMMsg.RespType.toString(msg.getRespTypeNum()) + ")");
    }
    else
    // msg.getMsgType() == OMMMsg.OMMMsg.MsgType.UPDATE_RESP
    {
        if ((msg.getMsgModelType() >= RDMMsgTypes.MARKET_PRICE)
                    && (msg.getMsgModelType() <= RDMMsgTypes.HISTORY))
        {
            ps.println(" (" + RDMInstrument.Update.toString(msg.getRespTypeNum()) + ")");
        }
    }
 }

The key things to note is that you are looking for a

  • msg.getMsgType() == OMMMsg.OMMMsg.MsgType.UPDATE_RESP and
  • msg.getMsgModelType() == RDMMsgTypes.MARKET_PRICE

If so, you can call msg.getRespTypeNum() and compare the value with the above CLOSING_RUN value or other update types as listed in the RDMUsage Guide under MarketPrice Update Message.

Note that the above online documentation link is to the latest RFA Java version 8.x.
The RFA v7.3 you are using is approx 9 yrs old and has not been supported for quite some time now. The oldest supported version in RFA v7.6.

You can find the latest and above older supported versions under the Download section



icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 5.0 MiB each and 10.0 MiB total.

Upvotes
20.3k 73 10 20

Hi @yujin.xu11

Please see this previous answer as well as this one How to detect closing run

You have not mentioned which RFA language version you are using - in RFA Java, for an Update type message you can check the RespType to check for the following value

RespTypeNum : RDMInstrument.Update.CLOSING_RUN =6

In C++ you would check for the value

rfa::rdm::INSTRUMENT_UPDATE_CLOSING_RUN = 6

However, please note that the above behaviour is exchange/asset class-specific so you would need to raise a Content ticket with some examples of the RIC codes you are interested in to confirm if the above is published for your particular data set.

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 5.0 MiB each and 10.0 MiB total.

Upvotes
21 1 0 2

Java is used in my project. Could you give me a simple example?


I found the com.reuters.rfa.example.framework.sub shipped in RFA package was somewhat complicated.

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 5.0 MiB each and 10.0 MiB total.

Click below to post an Idea Post Idea