Synopsis
There are rare cases in which orders placed with a Trading Venue need to be cancelled, modified or become rejected. In this section, we will enumerate the difference between these actions and the common instances in which they occur.
Order Cancellation
Order cancellation is used to terminate an order that has already been submitted to the Trading Venue (This can include an order that remains unfilled or the remainder of a partially filled order). The order cancellation originates from the customer application and is therefore issued and controlled by the customer.
Orders can also be cancelled by the Trading Venue where minQty is supported by the ECN, if the remaining amount drops below minQty, the remaining amount will be cancelled by the ECN, resulting in OrderCanceled instead of OrderDone as the final state.
Order Modification
Order modification is available on LIMIT_GTC orders only, allowing for the modification of price and amount values for open orders already submitted to the Trading Venue. The modifyOrder() request is supported by the below Trading Venues only; details of the requirements for order identifiers can be found at 8.9.3 client order identifiers
| Trading Venue |
|---|
| CME |
| EBS |
| CURRENEX |
| FXCM |
HOTSPOT |
Order modification is also issued and controlled directly through use of the customer application.
Order Rejection
Order Rejections differ from Order Cancellation as they are issued and controlled by the Trading Venue. An order rejection may be in response to a customer submitting an order, or following the attempt to submit a cancellation or modification request (such as 'OrderCancelRejected'). Orders will ordinarily be rejected by a Trading Venue if there is a problem (or Trading Venue violation) concerning the event that is being attempted. Trading Venues will assist customers by providing a short text reason for the decision to reject an order event that MarketFactory transport to the customer application in the rejection message. Where a rejection reason message is not useful in identifying why an order was rejected further enquires can be made with the Trading Venue concerning individual orders.
Whisperer API Improvements
There is ongoing work to improve and normalise the rejection reasons that are communicated from the Trading Venues using the Whisperer application, Updates will be made in this section as the work progresses.