tracking security/stream status
I'm building a real-time application listening tick-by-tick. I'm trying to find out any intra-day issues to my live item streams. For e.g.
1. Symbol status has been changed to not being "open" -- for e.g. halted.
2. Any technical issues because of which my stream is not publishing data
How do I catch these scenarios? Is the OnStatusMsg callback the right thing to use for these kind of issues?
I noticed StatusMsg has an OmmState which itself is a composition of 3 more enums. How can I check OmmState to make sure the stream / security is OK to use?
Best Answer
-
For#1. Symbol status has been changed to not being "open" -- for e.g. halted.
what you mean about Symbol status is the information from Exchange/Market such as Trade status "Open" or "Trade Halt", correct?
If it's the case, the information should come with some specific field/fid depending on data specification/Exchange. You have to contact content/data support team to check what fid/field you can used to check the status.
For#2. Any technical issues because of which my stream is not publishing dataHow do I catch these scenarios? Is the OnStatusMsg callback the right thing to use for these kind of issues?
Basically a Market Price status message is encoded using StatusMsg and sent by Provider. This message conveys state change information associated with an item stream. When a market data stream state changes, EMA application should process statusMsg it recieved from onStatusMsg() call back to check the OMMState.
There are state change information such as stream state, data state, status code and status text that you can get from OMMState to check the issue and the health of item. You can find more details about enum value from EMA Reference Manual locates in <EMA Install Path>/Ema/Docs/refman/ema/a00064.html#aa0f397a957db7a8586be45196be547b3 or checking OMMState.h from EMA pacakge.
There are some sample scenario such as when the service has gone down and your application stop recieving an update, it may recieve stream state Open but data state is Suspect. It indicates the health of the item is stale or unknown. If the service state is Up again, your applilcation should recieve data as usual and the DataState will change to Ok instead.
For some situation, the Provider server will set status code and status text that represent information about the issue. So your application may need to check OMMState::StatusCode and call OMMState::getStatusText to get more details about the status codes receives from the Provider server.0
Answers
-
Looks like StreamState != OpenEnum or DataState != OkEnum represent a technical issue.
Regarding, StatusCode, which Enum value represents no technical issue. Will it be NoneEnum?
0 -
Actually the status code depending on the Provider side set in the response message. But typically you should recieve NoneEnum in case that there is no problem.
0
Categories
- All Categories
- 6 AHS
- 39 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
- 60 Workspace SDK
- 9 Element Framework
- 5 Grid
- 13 World-Check Data File
- Yield Book Analytics
- 46 中文论坛