[This message was posted by Declan Caulfield of Getco LLC <[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/487017bf -
PLEASE DO NOT REPLY BY MAIL.]
Heres a message from the CME:
static char anActualCMEMessage[] = {
0xc0, 0xa9, 0x10, 0x58, 0x47, 0xf6,
0x23, 0x55, 0x72, 0x76, 0x3b, 0x4b, 0x21, 0xf5, 0x09, 0x49, 0x53, 0x87, 0x8b,
0xc8, 0xb0, 0x1e,
0x53, 0xfb, 0x03, 0x4c, 0x88, 0x11, 0xfc, 0x06, 0x96, 0x3f, 0x61, 0x11, 0x80,
0x82, 0xc0, 0xb1,
0x80, 0x81, 0x03, 0xf4, 0x7e, 0x81, 0x80, 0xc0, 0xb0, 0x11, 0x4e, 0xf3, 0x59,
0xca, 0x03, 0xc2,
0xc9, 0x80, 0xc0, 0xb1, 0x80, 0x81, 0x03, 0xf4, 0x01, 0xd7, 0x80, 0xc0, 0xb0,
0x57, 0x30, 0xff,
0x28, 0x8e, 0xb2, 0x7e, 0xa9, 0x80, 0xc0, 0xb1, 0x80, 0x81, 0x03, 0xf4, 0x01,
0xa5, 0x80, 0xe8,
0xb0, 0x09, 0x67, 0x8b, 0x05, 0x24, 0xd7, 0x80, 0x7a, 0xfb, 0x80, 0x80, 0xe0,
0xb1, 0x80, 0x81,
0x80, 0x80, 0x80, 0xc8, 0xb0, 0x0f, 0x6b, 0xab, 0x77, 0x30, 0xa4, 0x5e, 0xd7,
0x03, 0xf4, 0x80,
0x81, 0xc8, 0xb1, 0x0d, 0x2d, 0x9d, 0x01, 0x5e, 0xed, 0x0a, 0xd5, 0x99, 0x80,
0x82, 0xc0, 0xb0,
0x7c, 0x22, 0x98, 0x38, 0xe6, 0x7e, 0xea, 0x02, 0xf7, 0x80
};
There are 11 Incremental Market Refreshes in here from Template 41.
The CME Java decoder outputs the following:
[34]="35005430" [35]="X" [49]="CME" [52]="20081031133712629" [75]="20081031"
[268]="11"
[22]="8" [48]="502267" [83]="58888" [MDEntryType]="0" [MDEntryPx]="2300"
[271]="790" [273]="133712000" [279]="5" [336]="2" [NumberOfOrders]="2"
[1023]="1"
[22]="8" [48]="502267" [83]="58889" [MDEntryType]="1" [MDEntryPx]="2800"
[271]="535" [273]="133712000" [279]="5" [336]="2" [NumberOfOrders]="2"
[1023]="1"
[22]="8" [48]="790894" [83]="53971" [MDEntryType]="0" [MDEntryPx]="3250"
[271]="480" [273]="133712000" [279]="5" [336]="2" [NumberOfOrders]="2"
[1023]="1"
[22]="8" [48]="790894" [83]="53972" [MDEntryType]="1" [MDEntryPx]="3750"
[271]="695" [273]="133712000" [279]="5" [336]="2" [NumberOfOrders]="2"
[1023]="1"
[22]="8" [48]="125421" [83]="59106" [MDEntryType]="0" [MDEntryPx]="3800"
[271]="480" [273]="133712000" [279]="5" [336]="2" [NumberOfOrders]="2"
[1023]="1"
[22]="8" [48]="125421" [83]="59107" [MDEntryType]="1" [MDEntryPx]="4300"
[271]="645" [273]="133712000" [279]="5" [336]="2" [NumberOfOrders]="2"
[1023]="1"
[22]="8" [48]="286072" [83]="145722" [MDEntryType]="0"
[271]="0" [273]="133712000" [279]="5" [336]="2" [NumberOfOrders]="0"
[1023]="1"
[22]="8" [48]="286072" [83]="145723" [MDEntryType]="1"
[271]="0" [273]="133712000" [279]="5" [336]="2" [NumberOfOrders]="0"
[1023]="1"
[22]="8" [48]="545571" [83]="4447" [MDEntryType]="0" [MDEntryPx]="35"
[271]="500" [273]="133712000" [279]="5" [336]="2" [NumberOfOrders]="1"
[1023]="1"
[22]="8" [48]="764352" [83]="32972" [MDEntryType]="1" [MDEntryPx]="1400"
[271]="525" [273]="133712000" [279]="5" [336]="2" [NumberOfOrders]="2"
[1023]="1"
[22]="8" [48]="703192" [83]="40242" [MDEntryType]="0" [MDEntryPx]="1250"
[271]="900" [273]="133712000" [279]="5" [336]="2" [NumberOfOrders]="2"
[1023]="1" [1128]="8"
It indicates that the MDEntryPx is absent for updates 7 and 8.
Then update 9 uses the prior value from update 6.
Heres the template entry for MDEntryPx:
<decimal name="MDEntryPx" id="270" presence="optional">
<exponent>
<default value="0" />
</exponent>
<mantissa>
<delta />
</mantissa>
</decimal>
There are multiple things in here that are confusing to me.
1 - The PMAP Bit for the MDEntryPx fields in updates 7 and 8 are not set. This
implies that I use the inital value and that the field is assigned. However I
only have an initial value for the exponent not the mantissa.
2 - The CME Java Decoder indicates the MDEntryPx fields are absent for updates
7 and 8 but then uses the prior value from 6 to calculate the new mantissa. The
spec says that if the prior State of a Delta Value is empty then it is a
dynamic error.
3 - Optional Default Fields indicate that when they are absent the state/value
should remain unchanged. This is how I have implemented it and the MDEntryPx
for updates 7 and 8 then inherits the prior value from update 6 and stay
assigned. Update 9 gets the correct delta value from 7 and 8 and everything
looks good.
Any thoughts on the correct implementation of this would be greatly appreciated.
Cheers,
Declan
[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
-~----------~----~----~----~------~----~------~--~---