Why does ADS server always reply with the same market price to the consecutive MMT_MARKET_PRICE requ
Hello,
Whenever I send market price query continuously to the ADS server, server always replies the same price. The type of the response messages are always REFRESH. I also don’t know if it is normal that I never get UPDATE or STATUS type response messages.
I use the below code to query the ADS server. The code is called in a while loop continuously.
What can be wrong? Could you plese help?
Thanks in advanceReqMsg reqMsg = new ReqMsg();
AttribInfo attribInfo = new AttribInfo();
reqMsg.MsgModelType = ThomsonReuters.RFA.RDM.RDM.MESSAGE_MODEL_TYPES.MMT_MARKET_PRICE;
reqMsg.InteractionType = ReqMsg.InteractionTypeFlag.InitialImage | ReqMsg.InteractionTypeFlag.InterestAfterRefresh;
attribInfo.NameType = ThomsonReuters.RFA.RDM.RDM.INSTRUMENT_NAME_TYPES.INSTRUMENT_NAME_RIC;
attribInfo.Name = new RFA_String("TRYTOM=D3");
attribInfo.ServiceName = new RFA_String("IDN_RDF");
reqMsg.AttribInfo = attribInfo;
OMMItemIntSpec ommItemIntSpec = new OMMItemIntSpec();
ommItemIntSpec.Msg = reqMsg;
long itemHandle = this.ommConsumer.RegisterClient(this.marketPriceEventQueue, ommItemIntSpec, this);
int dispatchReturn = this.marketPriceEventQueue.Dispatch(10);
Best Answer
-
Hi @ali.takavci
You have specified an Interaction type of ReqMsg.InteractionTypeFlag.InitialImage | ReqMsg.InteractionTypeFlag.InterestAfterRefresh
This means you are requesting an Initial Image (Refresh) followed by any further events that occur after the Refresh - such as Updates or change in State/Status.
You don't need to keep requesting the same instrument - just request once and then call the dispatch() method in the loop. Your ProcessEvent handler should then receive a Refresh, followed by any Updates as and when they occur.
I recommend you work through the short Tutorials on this page to get a better understanding of how the RFA API works Robust Foundation API .Net Tutorial
1
Answers
-
Hi @ali.takavci,
The behaviour you are seeing is completely normal. You will only see changes in the price if market conditions change. If you are viewing a symbol that is inactive or viewing it outside market trading hours, you won't see changes that frequently.
Try a symbol that you know is very active and one that is actively trading and you should see the values changing. You will also see UPDATE messages when market conditions change for this symbol.
1 -
Hi Umer, thank you very much for the helpful reply. As you said, registering the request once is enough and I needed to dispatch in a loop.
Tutorial 3 - RFA Event Dispatch Mechanism explains the issue very well. Thank you very much for the instruction.
0 -
Hi Nick, thank you very much for the helpful reply. In fact, I was receiving update type messages very very rare and my client was stucking with the same refresh messages most of the time. Umer's suggestion is the solution. market price request should have been made only once outside the while loop. Thank you for the kind response.
0
Categories
- All Categories
- 6 AHS
- 37 Alpha
- 161 App Studio
- 4 Block Chain
- 4 Bot Platform
- 16 Connected Risk APIs
- 47 Data Fusion
- 30 Data Model Discovery
- 608 Datastream
- 1.3K DSS
- 577 Eikon COM
- 4.9K Eikon Data APIs
- 7 Electronic Trading
- Generic FIX
- 7 Local Bank Node API
- Trading API
- 2.7K Elektron
- 1.3K EMA
- 236 ETA
- 519 WebSocket API
- 33 FX Venues
- 10 FX Market Data
- 1 FX Post Trade
- 1 FX Trading - Matching
- 12 FX Trading – RFQ Maker
- 5 Intelligent Tagging
- 2 Legal One
- 20 Messenger Bot
- 2 Messenger Side by Side
- 9 ONESOURCE
- 7 Indirect Tax
- 59 Open Calais
- 264 Open PermID
- 39 Entity Search
- 2 Org ID
- PAM
- PAM - Logging
- 8.4K Private Comments
- 6 Product Insight
- Project Tracking
- ProView
- ProView Internal
- 20 RDMS
- 1.4K Refinitiv Data Platform
- 367 Refinitiv Data Platform Libraries
- 3 Refinitiv Due Diligence
- LSEG Due Diligence Portal API
- 3 Refinitiv Due Dilligence Centre
- Rose's Space
- 1.1K Screening
- 18 Qual-ID API
- 13 Screening Deployed
- 23 Screening Online
- 10 World-Check Customer Risk Screener
- 990 World-Check One
- 44 World-Check One Zero Footprint
- 45 Side by Side Integration API
- Test Space
- 3 Thomson One Smart
- 1.2K TR Internal
- Global Hackathon 2015
- 2 Specialists Who Code
- 10 TR Knowledge Graph
- 150 Transactions
- 142 REDI API
- 1.7K TREP APIs
- 4 CAT
- 21 DACS Station
- 117 Open DACS
- 1.1K RFA
- 103 UPA
- 172 TREP Infrastructure
- 224 TRKD
- 886 TRTH
- 5 Velocity Analytics
- 5 Wealth Management Web Services
- 59 Workspace SDK
- 9 Element Framework
- 5 Grid
- 13 World-Check Data File
- Yield Book Analytics
- 46 中文论坛