Response to Order Mass Status when there are no orders that match the criteria

Imported from previous forum

Although the response to an order status request for an order that does not exist in the book is straightforward (OrdRejReason <103> = 5 - Unknown order), I could not find a suggestion as to what to respond to an order mass status request when no orders exist that match the criteria specified in the request (for example, all open orders of a PartyID). There are always timeouts, but I think the response could be more deterministic than that.

I would tend to issue an Execution Report as follows:

OrderID = "UNKNOWN"
MassStatusReqID = Original request’s MassStatusReqID
TotNumReports = 0 <== This indicates no exec reports will be returned.
ExecID = 0
ExecType = I (Order Status)
OrdStatus = ???
Side = ???
LeavesQty = 0
CumQty = 0
AvgPx = 0.00

There are many tags that are meaningless in this message, but need to be there for being required by the spec. These fields should be ignored by the client side. Another option would be to issue a specific message indicating that no open orders match the criteria, but I think that message does not exist yet.

I was wondering if anybody faced the same problem before, and whether a solution has been found. If no solution has been found, I would suggest to the ECN/Exchange working group to discuss this.

Cheers,
Jochen

[ original email was from Rikard Hedberg - rikard.hedberg@omxgroup.com ]
Jochen,

I think a decent solution would be to use the Business Message Reject message in this situation (using BusinessRejectReason = 0 or preferably an added one). However, that is not allowed according to the rules (volume 1 of the spec). Using the Execution Report, some identifying Instrument (component block) tags are required too - but there is nothing to enter there in your case, so what sence does the Execution Report make?

I will look forward to the discussion in the Exchanges wg, or a better answer from someone.

Regards

Rikard

Although the response to an order status request for an order that does
not exist in the book is straightforward (OrdRejReason <103> = 5 -
Unknown order), I could not find a suggestion as to what to respond to
an order mass status request when no orders exist that match the
criteria specified in the request (for example, all open orders of a
PartyID). There are always timeouts, but I think the response could be
more deterministic than that.

I would tend to issue an Execution Report as follows:

OrderID = “UNKNOWN” MassStatusReqID = Original request’s MassStatusReqID
TotNumReports = 0 <== This indicates no exec reports will be returned.
ExecID = 0 ExecType = I (Order Status) OrdStatus = ??? Side = ???
LeavesQty = 0 CumQty = 0 AvgPx = 0.00

There are many tags that are meaningless in this message, but need to be
there for being required by the spec. These fields should be ignored by
the client side. Another option would be to issue a specific message
indicating that no open orders match the criteria, but I think that
message does not exist yet.

I was wondering if anybody faced the same problem before, and whether a
solution has been found. If no solution has been found, I would suggest
to the ECN/Exchange working group to discuss this.

Cheers, Jochen

I will look forward to the discussion in the Exchanges wg, or a better
answer from someone.

Has there been any more discussions on this and has a solution been decided on?

Are any exchanges using this and how do they handle it? Specially crafted Execution Reports or Business Rejects?

Regards,

Henrik

There has been no further discussion on this so far. The process would be for someone to take ownership of this issue, prepare material and participate in a working group or committee. This would lead to a discussion and (hopefully) a decision. This would again require the owner of this issue to prepare a gap analysis or best practices document that can then be brought forward to the Global Technical Committee for approval.

A potential solution on the application level would be to extend the OrderMassActionRequest to include status requests. There is already a OrderMassActionResponse which would then convey the necessary information (e.g. empty result set). MassActionType (1373) would need another value such as “Retrieve order status”. The response would be carried in the fields MassActionResponse (1375)=1=Accepted and TotalAffectedOrders (533) to be 0. This would only require a single new enum value for tag 1373 as mentioned above.

Hope this helps,
Hanno.

I will look forward to the discussion in the Exchanges wg, or a better
answer from someone.

Has there been any more discussions on this and has a solution been
decided on?

Are any exchanges using this and how do they handle it? Specially
crafted Execution Reports or Business Rejects?

Regards,

Henrik

Hi Hanno,
has there been no response on this since 2008 ?
regards Dave

@davidgibbs, unfortunately no, apparently not a requirement shared by many. My view is that the proposal above makes sense, i.e. to set TotNumReports(911) to zero and fill only the required fields with something, e.g. Side(54) = 7 (Undisclosed). The presence of MassStatusReqID(584) clearly indicates it to be a response to an OrderMassStatusRequest(35=AF) message.

1 Like