re: App-level order status request reject
14 Sep 1997 9:39PM ET
> We propose an application-level reject of order status requests for unknown orders. This would mean a new OrdStatus enum to indicate "unknown order". Comments?
What do broker implementations actually do when an institution requests order status for an unknown order? Do they make no response, send an administrative level Reject message, or something else?
The proposal quoted above is quite attractive. Making no response is emotionally unsatisfying. Providing an administrative level "Reject" would seem to require either that the administrative level code know how to decide whether an order is known or that the application level code know the MsgSeqNum for an Order Status Request and be permitted to send an administrative level reject.
However, the proposal does raise some side issues. If this proposal were adopted, then how would one fill in the required fields (and certain interesing optional fields) in the Execution Report? Consider:
Tag 37, OrderID: This is normally assigned by the broker. It is optional in the status report request. Should the broker assign a new order number to the unknown order? If the institution provided Tag 37 in the Order Status Request,
should the broker parrot back that information? (Presumably not, since the OrderID provided by the institution might match the OrderID for a real order.)
Tag 11, ClOrdID: This is not required in an Execution Report. It is, however, required in an Order Status Request. Should the broker be required to provide this field with the information provided by the institution in the Order Status Request? (This might be the only way that the institution could figure out what was happening since the OrderID provided by the broker in the Execution Report is not guaranteed to match any OrderID known to the institution.)
Tag 17, ExecID: select in the normal way. This is required in the Order Status Report and not permitted in the Order Status Request.
Tag 20, ExecTranType: Status
Tag 39, OrdStatus: Unknown Order (presumably, "D")
Tag 55, Symbol: parrot back the value that is required to be included in the request, even if it is invalid
Tag 54, Side: parrot back the value from the request
Tag 38, OrderQty: How about 0? This field is required in the Execution Report. The request is prohibited from including this information. The broker denies that the order exists.
Tag 14, CumQty: How about 0? This field is required in the Execution Report. The request is prohibited from including this information. The broker denies that the order exists.
Tag 6, AvgPx: How about 0? This field is required in the Execution Report. The request is prohibited from including this information. The broker denies that the order exists.
Also, should the broker do anything special if the institution submits a Don't Know Trade message in response to an Execution Report with OrdStatus = Unknown Order? (Which seems likely to happen, particularly if the broker assigns a new OrderID for the unknown order.)