Stop Orders

Imported from previous forum

[ original email was from Maura Sawyer - msawyer@bis.adp.com ]
Is tag 44 (Price) ignored if sent in with Tag 40 (Ord Type) = 3 for a STOP order?
Tag 99 will be sent to indicate Stop Price.

[ original email was from Ryan Pierce - rpierce@taltrade.com ]
> Is tag 44 (Price) ignored if sent in with Tag 40 (Ord Type) = 3 for a STOP order?
> Tag 99 will be sent to indicate Stop Price.

From a business standpoint, tag 44 (Price) has no meaning when OrdType(40)=Stop(3). StopPx(99) is conditionally required on Stop orders.

However, if you’re on the buy side, it is wise not to send anything in Price. It is possible that a sell-side implementation might see both Price and StopPx set on a Stop order, consider it an error, and reject the message.

[ original email was from Francesc Prats - fprats@meff.com ]
I am absolutely agree with Ryan. IMHO if the tag Price is filled in a Stop Order, the message MUST always be REJECTED by the Exchange because it is not clear where is the mistake: a) in the OrdType tag (it is filled as a Stop order instead of a Stop Limit Order) or b) in the Price tag.

> > Is tag 44 (Price) ignored if sent in with Tag 40 (Ord Type) = 3 for a STOP order?
> > Tag 99 will be sent to indicate Stop Price.
>
> From a business standpoint, tag 44 (Price) has no meaning when OrdType(40)=Stop(3). StopPx(99) is conditionally required on Stop orders.
>
> However, if you’re on the buy side, it is wise not to send anything in Price. It is possible that a sell-side implementation might see both Price and StopPx set on a Stop order, consider it an error, and reject the message.
>
>

[ original email was from Ryan Pierce - rpierce@taltrade.com ]
> I am absolutely agree with Ryan. IMHO if the tag Price is filled in a Stop Order, the message MUST always be REJECTED by the Exchange because it is not clear where is the mistake: a) in the OrdType tag (it is filled as a Stop order instead of a Stop Limit Order) or b) in the Price tag.

I think that is going a bit too far. The FIX spec generally clarifies what one must do if a conditionally required field is missing, but I don’t believe it says anything about what to do if a non-required and unnecessary field is present. I don’t think you can claim that a firm is not FIX compliant if they accept a stop order with both Price and StopPx set, provided that the firm ignores Price and uses StopPx as the stop price.

I also don’t think there’s anything in the FIX spec which would prohibit the sell-side from rejecting such an order, either.

This discussion illustrates why the buy-side shouldn’t send Price on a stop order.