[This message was posted by Roman Holovakha of 1 <[email protected]> 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/1baedcb3 - PLEASE DO NOT REPLY BY MAIL.]
Hi Jason, >From your post: My problem is that for the very last field, tag 451, there is no initial value in the template for the exponent. Also, if I'm reading it correctly, the pmap bit is turned off for this field (because all pmaps end with an infinite string of zeros). >> This is correct. This means the exponent can't be null, which means I'm supposed to read the mantissa. >> This is incorrect. In your template exponent is Optional Default filed which >> means it can be null. (Please review the Table 3.2 on this page >> http://jettekfix.com/node/47) In your case exponent is null (as does not present in the stream and does not have initial value). (http://jettekfix.com/node/76) So if exponent is null we does not decode mandatory field at all. The null decoded value of Exponent means null of complex decimal value. (Please read the notes after the image 3.20 on this page http://jettekfix.com/node/58) In such case your table should look like: 11110011 Pmap 10110000 MandatoryDefault EntryType(269) Y 10000001 OptionalDefault PriceExp(270) Y 01111110 11100010 MandatoryDelta PriceMant(270) N/A 10001011 OptionalDelta EntrySize(271) N/A 10000000 OptionalDefault QuoteCond(276) Y OptionalConstant TradeCond(277) N OptionalCopy PriceLevel(1023) N 10000010 OptionalCopy NumOrders(346) Y 10000000 OptionalDefault TradingSessID(277) Y OptionalDelta TradeVol(1020) N OptionalDefault Tick Direction(274) N OptionalDefault NetChangeExp(451) N MandatoryDelta NetChangeMantissa(451) N/A 10000000 (Should be next Pmap) 11110101 (the first field in the fields group) ____________________ Best regards, Roman > I've read the other threads dealing with decimals and pmaps, but I'm > still stumped with a recent decode problem. Below is a snippet of > production data that I tried to parse the other day; it's the first > element of a sequence. The bits are on the left, and my reading of the > pmap status is on the far right. > > My problem is that for the very last field, tag 451, there is no initial > value in the template for the exponent. Also, if I'm reading it > correctly, the pmap bit is turned off for this field (because all pmaps > end with an infinite string of zeros). This means the exponent can't be > null, which means I'm supposed to read the mantissa. However, as you can > see, it appears that the mantissa field is lined up with what looks like > a null value on the wire. Even if it's not a null value, just a zero > value, what can I do with a decimal that has no exponent? I'm thinking I > *must* be reading that first pmap incorrectly. > > Help would be greatly appreciated. Thanks. > > 11110011 Pmap 10110000 MandatoryDefault EntryType(269) Y 10000001 > OptionalDefault PriceExp(270) Y 01111110 11100010 MandatoryDelta > PriceMant(270) N/A 10001011 OptionalDelta EntrySize(271) N/A 10000000 > OptionalDefault QuoteCond(276) Y OptionalConstant TradeCond(277) N > OptionalCopy PriceLevel(1023) N 10000010 OptionalCopy NumOrders(346) Y > 10000000 OptionalDefault TradingSessID(277) Y OptionalDelta > TradeVol(1020) N OptionalDefault Tick Direction(274) N OptionalDefault > NetChangeExp(451) N 10000000 MandatoryDelta NetChangeMantissa(451) N/A > 11110101 (Should be next Pmap) [You can unsubscribe from this discussion group by sending a message to mailto:[email protected]] -- You received this message because you are subscribed to the Google Groups "Financial Information eXchange" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/fix-protocol?hl=en.
