[This message was posted by Naresh Maharaj of Instinet Europe plc 
<[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/e8ce0dfb - PLEASE DO NOT REPLY BY MAIL.]

I have the following template:

Part of template
[decimal name="MDEntrySize" id="271"  presence="optional"] 
    [exponent][copy value="0"/][/exponent]
    [mantissa][delta/][/mantissa]
[/decimal] 

pmap [1] for the exponent
no bit for the mantissa as this is a delta operator

For the exponent I get the following hex value 0x83 which is 3 minus (1) for 
being optional && greater than zero giving a total value for the exponent of 2

For the mantissa the next hex value is 0x80 which is mandatory and a signed 
integer null.

Therefore when I get the final decimal it reads as [0 x 10.pow(2)] = 0;

This seems correct except when I compare this to the openfast implementation I 
get 100 (as below line 7 271=100)

The lines below show 4 entries under a single sequence.

The line beginning with '+' are from my own implementation. 
The line with * is from openfast implementation
Both versions processing the exact same binary message.

You can see line 8, field value 271=0 and does not match the openfast results.



13:16:26.345 DEBUG: SWX 
SenderCompID:SWXGROUP-MDI.P01|MsgSeqNum:1290985|PossResend:N|SendingTime:20090929-12:31:06.631|MDBookType:2|NoMDEntries:4

 *      279=2,269=0,48=CH0047533572,273=12:31:06.616,336=EBRk,1023=3,83=33358
 +      279=2,269=0,48=CH0047533572,273=12:31:06.616,336=EBRk,1023=3,83=33358
 
 *      
279=0,269=0,48=CH0047533572,270=1595.44,271=100,273=12:31:06.616,336=EBRk,346=0,6566=1,1023=3,83=33359
 +      
279=0,269=0,48=CH0047533572,270=1595.44,271=100,273=12:31:06.616,336=EBRk,346=0,6566=1,1023=3,83=33359
        
 *      279=2,269=1,48=CH0047533572,273=12:31:06.616,336=EBRk,1023=2,83=33360   
 +      279=2,269=1,48=CH0047533572,273=12:31:06.616,336=EBRk,1023=2,83=33360
 
 *      
279=0,269=1,48=CH0047533572,270=1610.44,271=100,273=12:31:06.616,336=EBRk,346=0,6566=1,1023=2,83=33361
 +      279=0,269=1,48=CH0047533572,270=1610.44,271=0,  
273=12:31:06.616,336=EBRk,346=1,6566=1,1023=2,83=33361


Another issue I noticed was reference to 346=1 (ln 8)

Part of template
[uInt32 name="NumberOfOrders" id="346" presence="optional"] [delta value="1"/] 
[/uInt32]

The value of hex is 0x81 = 1 minus (1) for optional && greater than zero which 
then has a field value of 0;
But as per the context instruction above the delta value is 1 and the Entry in 
in the state undefinded so the initial Uint value = 1;
Is this correct or have I made a wrong interpretation





[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
-~----------~----~----~----~------~----~------~--~---

Reply via email to