Publishing 0 value to Reuters RIC

Best Answer
-
You've posted this in group "RFA + Market Data Interfaces" so I'm assuming that is what you are using. The MarketData interfaces are considered legacy. (yeah, I know, the name "market data interfaces" tricks you into believing that is what you must use). Anyway, in this answer I'll assume that you are indeed doing that.
In this legacy world data would be published in either Marketfeed or SASS3 format. You are right that with respect to Marketfeed the convention has always been that in order for a value to be interpreted by the end consumer as a true zero it must be published as "-0", i.e. with a minus prefix. All other forms of zero ("0.0", "+0.0", "0", etc) will be (should be) interpreted by the end consumer as a blank value.
See, the things to realize is that Marketfeed is really a text format. Everything travels the wire as text regardless of field type. So what you publish into a field of type PRICE is really just text. Basically as a publisher you could put any nonsense in there if you like.. but the consumer will of try to interpret the value as a decimal number - and fail if you've put rubbish into the field.
If you insist to use the legacy interfaces then you can find example of a publisher in Legacy\Examples\com\reuters\rfa\legacyexample\session\mdpub. Also have a look at how Legacy\Examples\com\reuters\rfa\legacyexample\utility\MFEncoder.java works. For example to publish a true zero you would do something like:
_mfEncoder.appendField("22", "-0.0"); // publish true zero into BID field
or to publish what the consumer should interpret as a blank:
_mfEncoder.appendField("22", "+0.0"); // publish blank into BID field
The same thing applies if you are doing contribution rather than publishing. Same principle.
.. but at the end of the day you are much better off by not using these legacy interfaces and instead doing an OMM Provider application.
In OMM world there's native support for blank values whereas in Marketfeed it is clearly something that was "invented" as an after-thought. Also in OMM you have strongly typed fields as opposed to Marketfeed's everything-is-really-just-text.
0
Categories
- All Categories
- 3 Polls
- 6 AHS
- 36 Alpha
- 166 App Studio
- 6 Block Chain
- 4 Bot Platform
- 18 Connected Risk APIs
- 47 Data Fusion
- 34 Data Model Discovery
- 690 Datastream
- 1.4K DSS
- 629 Eikon COM
- 5.2K Eikon Data APIs
- 11 Electronic Trading
- 1 Generic FIX
- 7 Local Bank Node API
- 3 Trading API
- 2.9K Elektron
- 1.4K EMA
- 255 ETA
- 559 WebSocket API
- 39 FX Venues
- 15 FX Market Data
- 1 FX Post Trade
- 1 FX Trading - Matching
- 12 FX Trading – RFQ Maker
- 5 Intelligent Tagging
- 2 Legal One
- 25 Messenger Bot
- 3 Messenger Side by Side
- 9 ONESOURCE
- 7 Indirect Tax
- 60 Open Calais
- 280 Open PermID
- 45 Entity Search
- 2 Org ID
- 1 PAM
- PAM - Logging
- 6 Product Insight
- Project Tracking
- ProView
- ProView Internal
- 23 RDMS
- 2K Refinitiv Data Platform
- 721 Refinitiv Data Platform Libraries
- 4 LSEG Due Diligence
- LSEG Due Diligence Portal API
- 4 Refinitiv Due Dilligence Centre
- Rose's Space
- 1.2K Screening
- 18 Qual-ID API
- 13 Screening Deployed
- 23 Screening Online
- 12 World-Check Customer Risk Screener
- 1K World-Check One
- 46 World-Check One Zero Footprint
- 45 Side by Side Integration API
- 2 Test Space
- 3 Thomson One Smart
- 10 TR Knowledge Graph
- 151 Transactions
- 143 REDI API
- 1.8K TREP APIs
- 4 CAT
- 27 DACS Station
- 121 Open DACS
- 1.1K RFA
- 106 UPA
- 194 TREP Infrastructure
- 229 TRKD
- 918 TRTH
- 5 Velocity Analytics
- 9 Wealth Management Web Services
- 95 Workspace SDK
- 11 Element Framework
- 5 Grid
- 19 World-Check Data File
- 1 Yield Book Analytics
- 48 中文论坛