Skip to main content

Mass Cancel Granularity

Mass cancels are scoped to an instrument or underlying currency pair and per side of the order book, using the fields in the MassCancelRequest below. There is no equivalent of a QuoteSetID for mass cancels. Because Starbase applies a speed bump to aggressive orders, individual cancel requests can reach the matching engine ahead of incoming aggressor orders. This makes fine-grained cancellation with regular CancelOrderRequest messages practical without requiring a broader mass cancel. Mass cancels are aligned with single cancels in their treatment of speed-bumped orders: both convert pending orders to IOC rather than removing them immediately. When the speed bump expires, the order attempts to fill as IOC and any unfilled remainder is cancelled. See Cancelling Pending Orders for full details.

MassCancelRequest (140)

Request to cancel all orders and quotes submitted via the binary SBE order gateway that meet the specified criteria.
At least one of indexId or instrumentId must be specified — the gateway rejects a MassCancelRequest that contains neither. Each mass cancel is routed to a single matching engine shard determined by the currency pair (an instrument ID implies its currency pair), so one request cannot span multiple currency pairs. To cancel every order across all currency pairs in a single call, use the REST cancel_all endpoint instead.

MassQuoteCancelRequest (145)

Request to cancel all active quotes for the specified MMP group.

MassCancelResponse (240)

Acknowledges the successful execution of a MassCancelRequest or MassQuoteCancelRequest. MassCancelResponse is a flat, fixed-length message. It acknowledges the request and reports the total number of cancellations, but does not itself carry per-order details. Cancelled orders are reported separately as unsolicited OrdersCanceled (310) messages, which contain the orders repeating group with one entry per cancelled order.

MassCancelReject (242)

Reject generated in case a MassCancelRequest or MassQuoteCancelRequest is unsuccessful.