[This message was posted by gu gang of xiaganggongren <gu.g...@qq.com> to the "FAST Protocol" discussion forum at http://fixprotocol.org/discuss/46. You can reply to it on-line at http://fixprotocol.org/discuss/read/37331828 - PLEASE DO NOT REPLY BY MAIL.]
Hi folks, I'm a newbie to the wonderful world of FAST. Am I right to interpret the following instruction in the template file 13 <uInt32 name="RptSeq" id="83"><increment /></uInt32> as a field that requires a bit to be set in the presence map regardless of whether the field is mandatory or optional? If my interpretation is correct, then what happens if the bit in the pmap is 0? Does this mean there is no data in the stream? And if so, what would be the incremental value of this field? Below I provide more details. First are the 39 raw bytes (a), which are followed by the entire template file (b), and finally my attempt decoding the stream by hand (c) Any help is greatly appreciated. (a) raw bytes: (number of bytes = 39) c0 bf 1a 55 41 d2 23 57 7b 45 07 1b 0a e3 09 4a 1a 8b 81 df 81 07 66 0f b7 80 83 5f 78 2a e8 86 80 23 cc 84 0b 0e 98 (b) the template 1 -<template name="MDIncRefresh_63" id="63" dictionary="63" xmlns="http://www.fixprotocol.org/ns/fast/td/1.1"> 2 -<string name="MessageType" id="35"><constant value="X" /></string> 3 -<string name="ApplVerID" id="1128"><constant value="8" /></string> 4 -<string name="SenderCompID" id="49"><constant value="CME" /></string> 5 -<uInt32 name="MsgSeqNum" id="34"></uInt32> 6 -<string name="PosDupFlag" id="43" presence="optional"><default /></string> 7 -<uInt64 name="SendingTime" id="52"></uInt64> 8 -<uInt32 name="TradeDate" id="75"></uInt32> 9 -<sequence name="MDEntries"> 10 -<length name="NoMDEntries" id="268"></length> 11 -<uInt32 name="MDUpdateAction" id="279"><copy value="0" /></uInt32> 12 -<string name="MDEntryType" id="269"><copy value="0" /></string> 13 -<uInt32 name="RptSeq" id="83"><increment /></uInt32> 14 -<string name="QuoteCondition" id="276" presence="optional"><copy value="K" /></string> 15 -<uInt32 name="MDPriceLevel" id="1023"><copy value="1" /></uInt32> 16 -<uInt32 name="MDEntryTime" id="273"><copy value="0" /></uInt32> 17 -<int32 name="MDEntrySize" id="271"><delta /></int32> 18 -<decimal name="MDEntryPx" id="270"> 19 -<exponent><default value="-7" /></exponent> 20 -<mantissa><delta /></mantissa> 21 -</decimal> 22 -<uInt32 name="NumberOfOrders" id="346" presence="optional"><delta /></uInt32> 23 -<uInt32 name="SecurityID" id="48"><delta /></uInt32> 24 -<uInt32 name="SecurityIDSource" id="22"><constant value="8" /></uInt32> 25 -<string name="TradingSessionID" id="336"><default value="2" /></string> 26 -</sequence> 27 -</template> (c) my attempt to decode the 39 bytes as best as I could <som> c0 - pmap 100 0000 bf - template_id = 63 line 2,3,4 - constant fields, they won't be in the stream 1a 55 41 d2 23 57 7b 45 07 1b 0a e3 - SendingTime on line 7, decoded value=20090123201201507 09 4a 1a 8b - tradeDate on line 8, decoded value=20090123 81 length on line 10, decoded uInt32 value=1 line 11 - the Copy operator requires pmap bit, regardless of optionality, but the bit in the pmap is 0 so no data in stream, value=0 line 12 - the same as line 11: no data in stream, value=0 line 13 - increment operator makes pmap bit a requirement regardless of field optionality, but i don't see any positive bit in pmap, meaning no data in stream? how do I decode/consume the next 12 bytes? df 81 07 66 0f b7 80 83 5f 78 2a e8 - this is where I get lost... but I labored on... the rest are my guesses, but they seem to agree withe the values sent by CME 86 - MDEntrySize on line 17, decoded int value=6 80 - exponent on line 19, decoded int value=0 23 cc 84 - mantissa on line 20, decoded int value=4556 0b 0e 98 - SecurityID on line 23, decoded uInt32 value=182040 <eom> [You can unsubscribe from this discussion group by sending a message to mailto:unsubscribe+100932...@fixprotocol.org] --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Financial Information eXchange" group. To post to this group, send email to fix-protocol@googlegroups.com To unsubscribe from this group, send email to fix-protocol+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/fix-protocol?hl=en -~----------~----~----~----~------~----~------~--~---