[This message was posted by John Greenan of http://www.alignment-systems.com 
<[email protected]> to the "4.2 Changes" discussion forum at 
http://fixprotocol.org/discuss/5. You can reply to it on-line at 
http://fixprotocol.org/discuss/read/696851a1 - PLEASE DO NOT REPLY BY MAIL.]

Interesting....

There is at least one global Investment Bank that does not get 39/150 right 
when busting full fills.

See below example.  The full fill is bust but the bust has 30=2 (Filled)

This is live and in production today.




Outbound Message        2009-04-27 16:09:05,192 INFO  
out.ORDERROUTINGHUB_BUYSIDE_COMPID - >297 OrderSingle (8=FIX.4.2 9=281 35=D 
49=BUYSIDE_COMPID 56=ORDERROUTINGHUB 34=297 52=20090427-14:09:05 97=N 
128=SELLSIDE_COMPID 50=BuySideDealerName 11=LZR1010570-1!FUT 21=3 100=XLIF 
207=XLIF 54=1 60=20090427-14:09:05 38=5 40=1 15=GBP 59=0 439=JPMCLR 440=89567 
107=90 DAY STERLING FUTURE 0609 200=200906 55=L M9 22=5 48=L M9 167=FUT 
1=BOOKING_ACCOUNT 10=237 )

pending new     
Inbound Message 2009-04-27 16:09:05,582 INFO  in.ORDERROUTINGHUB_BUYSIDE_COMPID 
- <370 ExecutionReport (8=FIX.4.2 9=361 35=8 49=ORDERROUTINGHUB 
56=BUYSIDE_COMPID 115=SELLSIDE_COMPID 34=370 50=SELLSIDE_COMPID 
57=BuySideDealerName 43=N 52=20090427-14:09:05 369=297 
37=065867546-LN24:090427:96283 11=LZR1010570-1!FUT 109=BUYSIDE_COMPID 
76=SELLSIDE_COMPID 17=12408316147001560 20=0 150=A 39=A 1=BOOKING_ACCOUNT 55=L 
M9 48=L M9 22=5 167=FUT 200=200906 207=XLIF 54=1 38=5.0 40=1 15=GBP 59=0 32=0.0 
31=0.0 151=5.0 14=0.0 6=0.0 60=20090427-14:09:05.000 10=191 )
        
new     
Inbound Message 2009-04-27 16:09:09,317 INFO  in.ORDERROUTINGHUB_BUYSIDE_COMPID 
- <371 ExecutionReport (8=FIX.4.2 9=361 35=8 49=ORDERROUTINGHUB 
56=BUYSIDE_COMPID 115=SELLSIDE_COMPID 34=371 50=SELLSIDE_COMPID 
57=BuySideDealerName 43=N 52=20090427-14:09:08 369=297 
37=065867546-LN24:090427:96283 11=LZR1010570-1!FUT 109=BUYSIDE_COMPID 
76=SELLSIDE_COMPID 17=12408316147001570 20=0 150=0 39=0 1=BOOKING_ACCOUNT 55=L 
M9 48=L M9 22=5 167=FUT 200=200906 207=XLIF 54=1 38=5.0 40=1 15=GBP 59=0 32=0.0 
31=0.0 151=5.0 14=0.0 6=0.0 60=20090427-14:09:09.000 10=166 )
        
fill    
Inbound Message 2009-04-27 16:09:30,145 INFO  in.ORDERROUTINGHUB_BUYSIDE_COMPID 
- <372 ExecutionReport (8=FIX.4.2 9=385 35=8 49=ORDERROUTINGHUB 
56=BUYSIDE_COMPID 115=SELLSIDE_COMPID 34=372 50=SELLSIDE_COMPID 
57=BuySideDealerName 43=N 52=20090427-14:09:29 369=297 
37=065867546-LN24:090427:96283 11=LZR1010570-1!FUT 109=BUYSIDE_COMPID 
76=SELLSIDE_COMPID 17=96283.LN24:090427:49107 20=0 150=2 39=2 1=BOOKING_ACCOUNT 
55=L M9 48=L M9 22=5 167=FUT 200=200906 207=XLIF 54=1 38=5.0 40=1 15=GBP 59=0 
32=5.0 31=2365.0 151=0.0 14=5.0 6=2365.0 75=20090427 60=20090427-14:09:29.000 
10=196 )
        
fill - busted   
Inbound Message 2009-04-27 16:09:36,145 INFO  in.ORDERROUTINGHUB_BUYSIDE_COMPID 
- <373 ExecutionReport (8=FIX.4.2 9=400 35=8 49=ORDERROUTINGHUB 
56=BUYSIDE_COMPID 115=SELLSIDE_COMPID 34=373 50=SELLSIDE_COMPID 
57=BuySideDealerName 43=N 52=20090427-14:09:35 369=297 
37=065867546-LN24:090427:96283 11=LZR1010570-1!FUT 109=BUYSIDE_COMPID 
76=SELLSIDE_COMPID 17=12408316147001580 20=1 19=96283.LN24:090427:49107 150=0 
39=2 1=BOOKING_ACCOUNT 55=L M9 48=L M9 22=5 167=FUT 200=200906 207=XLIF 54=1 
38=5.0 40=1 15=GBP 59=0 32=0.0 31=0.0 151=5.0 14=0.0 6=0.0 75=20090427 
60=20090427-14:09:35.000 10=120 )

> Hi Elton,
> 
> Tag 150 should reflect the status of the order once the bust has been
> taken into account. So if the bust is the only trade of a fully filled
> order then the message would be 150=0/20=1. A bust on the last fill of
> an order filled in several clips should go back as 150=1/20=1.
> 
> Tag 39 could be different. A busted fill on a partially filled and
> cancelled order should generate 39=4/150=1/20=1 as per line 7 of example
> D35 in Appendix D.
> 
> The comment below made in an earlier post is interesting, especially
> since I heard something similar recently -
> 
> "One of our FIX partners told me that ExecType would be *always* 150=4
> when the Execution Report is busting an execution -- but I'm not sure
> about that."
> 
> - I personally do not understand the logic of this. 150=4 (Cancelled)
>   refers to the order not the fill, and does not follow the logic behind
>   tag 20 in 4.2 to denote the transction type being reported (new,
>   cancel, correct or status). 4.3 and later deprecate tag 20 and put the
>   values into tag 150, but a cancelled order and a trade cancel are
>   still distinct values (150=4 and 150=H respectively).
> 
> A question for a wider audience - is there a common deviation from the
> spec with regards to reporting busts as 150=4 ?
> 
> Regards,
> 
> - Greg
> 
> 
> 
> > Hello,
> >
> > Thanks, but my question is: when an ExecutionReport is busting an
> > execution (20=1), what value should I use in tag 150? Does it have the
> > same value of tag 39?


[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