Execution Cancels/trade busts

Imported from previous forum

[ original email was from Hugo Darley - hugo.darley@fidessa.com ]
Hi,

I am performing FIX certification with a broker and have come across a snag when trying do trade busts.

The broker is sending a trade bust to me, but within the trade bust the order volume(tag 38) has been reduced by the amount of shares being cancelled.

The broker has said this is correct because the shares do not ‘reopen’ on the order after being filled and busted however, on all other certification I have seen just that - the order volume remains the same and the shares are effectively open again.

If as the broker says, the shares should not become available after the bust, surely you cannot reduce the order volume in the same message? Would it not be better to bust the fill and then send an unsolicited order-amend? (The other problem is that this is with DMA flow and so that last question answers itself).

This is the first time I have seen this with any of our FIX brokers. Can anyone offer any advice?

Many thanks
Hugo

Hugo,

I assume you receive an ExecutionReport (ER) with ExecType=H=Trade Cancel. The execution should have no automatic effect on the volume (or any other field) of the order that led to the execution. The execution is an entity in its own right that can be canceled as a whole. You need to have ExecRefID filled with the value of the field ExecID in the original ER indicating the trade.

I do not see a reason why OrderQty should change in the ER. It is intended to be an echo of the order, not a reflection of an execution. You have fields CumQty and LeavesQty to capture the dynamic aspects of an order and LastQty to capture the trade-related amount.

Bottom line is that OrderQty should remain untouched for the ER conveying the bust. In my view, the broker is right about not “re-opening” the order but wrong in his usage of OrderQty in the ER with the bust. It is up to the owner of the order to then increase the order quantity by issuing an Order Cancel/Replace which is responded to by an ER that contains the new value for OrderQty.

Regards,
Hanno.

Hi,

I am performing FIX certification with a broker and have come across a
snag when trying do trade busts.

The broker is sending a trade bust to me, but within the trade bust the
order volume(tag 38) has been reduced by the amount of shares being
cancelled.

The broker has said this is correct because the shares do not ‘reopen’
on the order after being filled and busted however, on all other
certification I have seen just that - the order volume remains the same
and the shares are effectively open again.

If as the broker says, the shares should not become available after the
bust, surely you cannot reduce the order volume in the same message?
Would it not be better to bust the fill and then send an unsolicited order-
amend? (The other problem is that this is with DMA flow and so that last
question answers itself).

This is the first time I have seen this with any of our FIX brokers. Can
anyone offer any advice?

Many thanks Hugo

[ original email was from Hugo Darley - hugo.darley@fidessa.com ]
Hi Hanno,

Thanks for your answer, it confirms some of my suspicions. However, this is an execution report (35=8, 39=1, 150=1) as a cancel (20=1) of a partially filled order, rather than an atual trade cancel.

Does that change your answer?

Hugo

Hugo,

I assume you receive an ExecutionReport (ER) with ExecType=H=Trade
Cancel. The execution should have no automatic effect on the volume (or
any other field) of the order that led to the execution. The execution
is an entity in its own right that can be canceled as a whole. You need
to have ExecRefID filled with the value of the field ExecID in the
original ER indicating the trade.

I do not see a reason why OrderQty should change in the ER. It is
intended to be an echo of the order, not a reflection of an execution.
You have fields CumQty and LeavesQty to capture the dynamic aspects of
an order and LastQty to capture the trade-related amount.

Bottom line is that OrderQty should remain untouched for the ER
conveying the bust. In my view, the broker is right about not “re-
opening” the order but wrong in his usage of OrderQty in the ER with the
bust. It is up to the owner of the order to then increase the order
quantity by issuing an Order Cancel/Replace which is responded to by an
ER that contains the new value for OrderQty.

Regards, Hanno.

Hi,

I am performing FIX certification with a broker and have come across a
snag when trying do trade busts.

The broker is sending a trade bust to me, but within the trade bust
the order volume(tag 38) has been reduced by the amount of shares
being cancelled.

The broker has said this is correct because the shares do not ‘reopen’
on the order after being filled and busted however, on all other
certification I have seen just that - the order volume remains the
same and the shares are effectively open again.

If as the broker says, the shares should not become available after
the bust, surely you cannot reduce the order volume in the same
message? Would it not be better to bust the fill and then send an
unsolicited order- amend? (The other problem is that this is with DMA
flow and so that last question answers itself).

This is the first time I have seen this with any of our FIX brokers.
Can anyone offer any advice?

Many thanks Hugo

Well, it sounds as if you are still using FIX 4.2 where ExecTransType (20) still existed. It was replaced as of FIX 4.3. However, the semantic of ExecRefID should be the same, i.e. it contains a value referencing a previous ER and thus a trade is being canceled. Maybe the problem lies in the fact that it looks to you like an ER for an order. Is ExecRefID not being used by the broker? It is required for FIX 4.2 when ExecTransType=1=Cancel. ExecTransType of 1 or 2 automatically make it refer to an execution and not to an order.

Regards,
Hanno.

Hi Hanno,

Thanks for your answer, it confirms some of my suspicions. However, this
is an execution report (35=8, 39=1, 150=1) as a cancel (20=1) of a
partially filled order, rather than an atual trade cancel.

Does that change your answer?

Hugo

Hugo,

I assume you receive an ExecutionReport (ER) with ExecType=H=Trade
Cancel. The execution should have no automatic effect on the volume
(or any other field) of the order that led to the execution. The
execution is an entity in its own right that can be canceled as a
whole. You need to have ExecRefID filled with the value of the field
ExecID in the original ER indicating the trade.

I do not see a reason why OrderQty should change in the ER. It is
intended to be an echo of the order, not a reflection of an execution.
You have fields CumQty and LeavesQty to capture the dynamic aspects of
an order and LastQty to capture the trade-related amount.

Bottom line is that OrderQty should remain untouched for the ER
conveying the bust. In my view, the broker is right about not “re-
opening” the order but wrong in his usage of OrderQty in the ER with
the bust. It is up to the owner of the order to then increase the
order quantity by issuing an Order Cancel/Replace which is responded
to by an ER that contains the new value for OrderQty.

Regards, Hanno.

Hi,

I am performing FIX certification with a broker and have come across
a snag when trying do trade busts.

The broker is sending a trade bust to me, but within the trade bust
the order volume(tag 38) has been reduced by the amount of shares
being cancelled.

The broker has said this is correct because the shares do not
‘reopen’ on the order after being filled and busted however, on all
other certification I have seen just that - the order volume remains
the same and the shares are effectively open again.

If as the broker says, the shares should not become available after
the bust, surely you cannot reduce the order volume in the same
message? Would it not be better to bust the fill and then send an
unsolicited order- amend? (The other problem is that this is with
DMA flow and so that last question answers itself).

This is the first time I have seen this with any of our FIX brokers.
Can anyone offer any advice?

Many thanks Hugo

[ original email was from Hugo Darley - hugo.darley@fidessa.com ]
Yes, apologies, forgot to mention that. The ExecutionRefs are being used correctly, it’s just the use of this tag 38 that is puzzling me but your answers below should certainly help.

Kind regards
Hugo

Well, it sounds as if you are still using FIX 4.2 where ExecTransType
(20) still existed. It was replaced as of FIX 4.3. However, the semantic
of ExecRefID should be the same, i.e. it contains a value referencing a
previous ER and thus a trade is being canceled. Maybe the problem lies
in the fact that it looks to you like an ER for an order. Is ExecRefID
not being used by the broker? It is required for FIX 4.2 when
ExecTransType=1=Cancel. ExecTransType of 1 or 2 automatically make it
refer to an execution and not to an order.

Regards, Hanno.

Hi Hanno,

Thanks for your answer, it confirms some of my suspicions. However,
this is an execution report (35=8, 39=1, 150=1) as a cancel (20=1) of
a partially filled order, rather than an atual trade cancel.

Does that change your answer?

Hugo

Hugo,

I assume you receive an ExecutionReport (ER) with ExecType=H=Trade
Cancel. The execution should have no automatic effect on the volume
(or any other field) of the order that led to the execution. The
execution is an entity in its own right that can be canceled as a
whole. You need to have ExecRefID filled with the value of the field
ExecID in the original ER indicating the trade.

I do not see a reason why OrderQty should change in the ER. It is
intended to be an echo of the order, not a reflection of an
execution. You have fields CumQty and LeavesQty to capture the
dynamic aspects of an order and LastQty to capture the trade-related
amount.

Bottom line is that OrderQty should remain untouched for the ER
conveying the bust. In my view, the broker is right about not “re-
opening” the order but wrong in his usage of OrderQty in the ER with
the bust. It is up to the owner of the order to then increase the
order quantity by issuing an Order Cancel/Replace which is responded
to by an ER that contains the new value for OrderQty.

Regards, Hanno.

Hi,

I am performing FIX certification with a broker and have come
across a snag when trying do trade busts.

The broker is sending a trade bust to me, but within the trade
bust the order volume(tag 38) has been reduced by the amount of
shares being cancelled.

The broker has said this is correct because the shares do not
‘reopen’ on the order after being filled and busted however, on
all other certification I have seen just that - the order volume
remains the same and the shares are effectively open again.

If as the broker says, the shares should not become available
after the bust, surely you cannot reduce the order volume in the
same message? Would it not be better to bust the fill and then
send an unsolicited order- amend? (The other problem is that this
is with DMA flow and so that last question answers itself).

This is the first time I have seen this with any of our FIX
brokers. Can anyone offer any advice?

Many thanks Hugo

If it was not clear, I also maintain that tag 38 (OrderQty) in FIX 4.2 should simply echo the current total quantity of the order and not try to tell you something about the amount being canceled. That amount can be found in field LastQty of the ER referenced by ExecRefID. OrderQty should ONLY change due to Order Cancel/Replace but not through an execution or an correction/cancellation of an execution.

Regards,
Hanno.

Yes, apologies, forgot to mention that. The ExecutionRefs are being used
correctly, it’s just the use of this tag 38 that is puzzling me but your
answers below should certainly help.

Kind regards Hugo

Well, it sounds as if you are still using FIX 4.2 where ExecTransType
(20) still existed. It was replaced as of FIX 4.3. However, the
semantic of ExecRefID should be the same, i.e. it contains a
value referencing a previous ER and thus a trade is being
canceled. Maybe the problem lies in the fact that it looks to you
like an ER for an order. Is ExecRefID not being used by the
broker? It is required for FIX 4.2 when ExecTransType=1=Cancel.
ExecTransType of 1 or 2 automatically make it refer to an
execution and not to an order.

Regards, Hanno.

Hi Hanno,

Thanks for your answer, it confirms some of my suspicions. However,
this is an execution report (35=8, 39=1, 150=1) as a cancel (20=1)
of a partially filled order, rather than an atual trade cancel.

Does that change your answer?

Hugo

Hugo,

I assume you receive an ExecutionReport (ER) with ExecType=H=Trade
Cancel. The execution should have no automatic effect on the
volume (or any other field) of the order that led to the
execution. The execution is an entity in its own right that can be
canceled as a whole. You need to have ExecRefID filled with the
value of the field ExecID in the original ER indicating the trade.

I do not see a reason why OrderQty should change in the ER. It is
intended to be an echo of the order, not a reflection of an
execution. You have fields CumQty and LeavesQty to capture the
dynamic aspects of an order and LastQty to capture the trade-
related amount.

Bottom line is that OrderQty should remain untouched for the ER
conveying the bust. In my view, the broker is right about not “re-
opening” the order but wrong in his usage of OrderQty in the ER
with the bust. It is up to the owner of the order to then increase
the order quantity by issuing an Order Cancel/Replace which is
responded to by an ER that contains the new value for OrderQty.

Regards, Hanno.

Hi,

I am performing FIX certification with a broker and have come
across a snag when trying do trade busts.

The broker is sending a trade bust to me, but within the trade
bust the order volume(tag 38) has been reduced by the amount of
shares being cancelled.

The broker has said this is correct because the shares do not
‘reopen’ on the order after being filled and busted however, on
all other certification I have seen just that - the order volume
remains the same and the shares are effectively open again.

If as the broker says, the shares should not become available
after the bust, surely you cannot reduce the order volume in the
same message? Would it not be better to bust the fill and then
send an unsolicited order- amend? (The other problem is that
this is with DMA flow and so that last question answers itself).

This is the first time I have seen this with any of our FIX
brokers. Can anyone offer any advice?

Many thanks Hugo

[ original email was from Hugo Darley - hugo.darley@fidessa.com ]
Perfect, thanks

If it was not clear, I also maintain that tag 38 (OrderQty) in FIX 4.2
should simply echo the current total quantity of the order and not try
to tell you something about the amount being canceled. That amount can
be found in field LastQty of the ER referenced by ExecRefID. OrderQty
should ONLY change due to Order Cancel/Replace but not through an
execution or an correction/cancellation of an execution.

Regards, Hanno.

Yes, apologies, forgot to mention that. The ExecutionRefs are being
used correctly, it’s just the use of this tag 38 that is puzzling me
but your answers below should certainly help.

Kind regards Hugo

Well, it sounds as if you are still using FIX 4.2 where
ExecTransType
(20) still existed. It was replaced as of FIX 4.3. However, the
semantic of ExecRefID should be the same, i.e. it contains a
value referencing a previous ER and thus a trade is being
canceled. Maybe the problem lies in the fact that it looks to
you like an ER for an order. Is ExecRefID not being used by the
broker? It is required for FIX 4.2 when ExecTransType=1=Cancel.
ExecTransType of 1 or 2 automatically make it refer to an
execution and not to an order.

Regards, Hanno.

Hi Hanno,

Thanks for your answer, it confirms some of my suspicions.
However, this is an execution report (35=8, 39=1, 150=1) as a
cancel (20=1) of a partially filled order, rather than an atual
trade cancel.

Does that change your answer?

Hugo

Hugo,

I assume you receive an ExecutionReport (ER) with
ExecType=H=Trade Cancel. The execution should have no automatic
effect on the volume (or any other field) of the order that led
to the execution. The execution is an entity in its own right
that can be canceled as a whole. You need to have ExecRefID
filled with the value of the field ExecID in the original ER
indicating the trade.

I do not see a reason why OrderQty should change in the ER. It
is intended to be an echo of the order, not a reflection of an
execution. You have fields CumQty and LeavesQty to capture the
dynamic aspects of an order and LastQty to capture the trade-
related amount.

Bottom line is that OrderQty should remain untouched for the ER
conveying the bust. In my view, the broker is right about not
“re- opening” the order but wrong in his usage of OrderQty in
the ER with the bust. It is up to the owner of the order to then
increase the order quantity by issuing an Order Cancel/Replace
which is responded to by an ER that contains the new value for
OrderQty.

Regards, Hanno.

Hi,

I am performing FIX certification with a broker and have come
across a snag when trying do trade busts.

The broker is sending a trade bust to me, but within the trade
bust the order volume(tag 38) has been reduced by the amount
of shares being cancelled.

The broker has said this is correct because the shares do not
‘reopen’ on the order after being filled and busted however,
on all other certification I have seen just that - the order
volume remains the same and the shares are effectively open
again.

If as the broker says, the shares should not become available
after the bust, surely you cannot reduce the order volume in
the same message? Would it not be better to bust the fill and
then send an unsolicited order- amend? (The other problem is
that this is with DMA flow and so that last question answers
itself).

This is the first time I have seen this with any of our FIX
brokers. Can anyone offer any advice?

Many thanks Hugo