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 theMassCancelRequest 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.
MassCancelRequest (140)
Request to cancel all orders and quotes submitted via the binary SBE order gateway that meet the specified criteria.| Field | Name | Type | Length | Description |
|---|---|---|---|---|
| 1 | correlationId | int64 | 8 | Client-assigned ID |
| 2 | currencyPairId | int64 | 8 | Underlying currency pair. Required. |
| 3 | instrumentId | int64 | 8 | Instrument ID. Ignored if 0. |
| 4 | kind | int8 | 1 | 1=Future,2=Option,3=Perpetual,4=Spot, 5=FutureCombo, 6=OptionsCombo |
| 5 | side | int8 | 1 | 0=Both1=BUY-1=SELL |
MassQuoteCancelRequest (145)
Request to cancel all active quotes for the specified MMP group.| Field | Name | Type | Length | Description |
|---|---|---|---|---|
| 1 | correlationId | int64 | 8 | Client-assigned ID |
| 2 | mmpGroupId | int64 | 8 | Identifier of MMP group |
| 3 | side | int8 | 1 | 0=Both1=BUY-1=SELL |
MassCancelResponse (240)
Acknowledges the successful execution of aMassCancelRequest or MassQuoteCancelRequest.
| Field | Name | Type | Length | Description |
|---|---|---|---|---|
| 1 | transactTime | int64 | 8 | Nanoseconds since epoch. Time of entry into the order book |
| 2 | execId | int64 | 8 | Exchange-assigned event ID |
| 3 | correlationId | int64 | 8 | Client-assigned ID |
| 4 | receiveTime | int64 | 8 | Nanoseconds since epoch. Time of receipt of order on the gateway. |
| 5 | flags | uint8 | 1 | 0=isLastMessage |
| 6 | reserved | uint8 | 1 | Padding for byte alignment |
| 7 | reserved2 | uint8 | 2 | Padding for byte alignment |
| 8 | blockLengthOfCancels | uint16 | 2 | 24 (bytes) |
| 9 | numberOfCancels | uint16 | 2 | Number of canceled orders included in the following repeating group |
| ->10 | orderId | int64 | 8 | Numeric exchange-assigned order ID |
| ->11 | clientOrderId | int64 | 8 | Numeric client order ID; 0x8000000000000000L if quote |
| ->12 | instrumentId | int64 | 8 | Numeric instrument ID |
MassCancelReject (242)
Reject generated in case aMassCancelRequest or MassQuoteCancelRequest is unsuccessful.
| Field | Name | Type | Length | Description |
|---|---|---|---|---|
| 1 | transactTime | int64 | 8 | Nanoseconds since epoch. Time of entry into the order book |
| 2 | correlationId | int64 | 8 | Client-assigned ID |
| 3 | reason | uint8 | 1 | Rejection reason code. See Rejection Reason Codes for possible values. |
| 4 | detailsLength | uint8 | 1 | Length of details field |
| 5 | details | char | 0-255 | ASCII-encoded string |