Skip to main content
Order Mass Status Request(AF) message requests the status of currently open orders. The exchange should respond with a series of Execution Reports(8) messages detailing orders.

Arguments

TagNameTypeRequiredComments
584MassStatusReqIDStringYesClient-assigned unique ID of this request
585MassStatusReqTypeStringYesSpecifies the scope of the mass status request. (see below)
9014MassStatusReqIDTypeintNoFor MassStatusReqType=7, it defines which ID or label represents the MassStatusReqID: 0 = OrigClOrdID, 1 = ClOrdId, 2 = DeribitLabel. Default is 0
11CurrencyStringRequired if MassStatusReqIDType is 1 or 2 and Symbol is missingTo search the order by DeribitLabel or ClOrdID
55SymbolStringRequired if MassStatusReqIDType is 1 or 2 and Currency is missingIf Currency is not specified, to search the order by DeribitLabel or ClOrdID
This message can be used in two ways: to request status of all your open orders, or to request the status of a single order(This also applies to closed orders). To request the status of all orders, choose a random MassStatusRequestId, and set MassStatusReqType=7. The server will respond with a series of Execution Reports(8) messages, where the first message contains MassStatusReqType=7 To request the status of a specific order: set MassStatusReqType=1, and set MassStatusReqId to the order ID. Please keep in mind this message also applies to closed orders. It is allowed to request status for an order (or several orders) by ClOrdID or DeribitLabel for example when connection is broken and server-side generated ID-s are not received. In that case set MassStatusReqType=7 and set MassStatusReqIDType=1 for the search by ClOrdID or use MassStatusReqIDType=2 for the search by DeribitLabel. In both cases Currency or Symbol are required for such a search.

Response

When the client requests the status of current orders, the exchange should reply with a series of special Execution Reports(8), one for every order requested.
TagNameTypeRequiredComments
37OrderIdStringNoUnique identifier for Order as assigned by the Deribit
11ClOrdIDStringNoDeribit replaces this field with the own value assigned by the server (it is not the client id from New Order Single(D))
41OrigClOrdIdStringNoThe original value assigned by the client in the New Order Single(D) message
39OrdStatuscharYesFor trade – order status.

Possible values:

  • 0 = New,
  • 1 = Partially filled,
  • 2 = Filled,
  • 4 = Cancelled
  • 8 = Rejected
54SidecharYesSide of order.

Possible values:

  • 1 = Buy,
  • 2 = Sell
60TransactTimeUTCTimestampYesTimestamp when the transaction represented by this Execution Report occurred. Fix timestamp
12CommissionfloatNoDeprecated. Always 0
151LeavesQtyQtyYesOrder quantity open for further execution (LeavesQty = OrderQty - CumQty) in Contract units corresponding to the ContractMultiplier in SecurityList
14CumQtyQtyYesTotal executed quantity or 0.0 in Contract units corresponding to the ContractMultiplier in SecurityList
38OrderQtyQtyYesOrder quantity in Contract units corresponding to the ContractMultiplier in SecurityList
40OrdTypecharYesOrder type.

Possible values:

  • 1 = Market,
  • 2 = Limit (by default),
  • 4 = Stop Limit,
  • S = Stop Market

44PricePriceYesPrice
150ExecTypecharNoDescribes the specific Execution Report.

Possible values:

  • I = equal to (Order Status),
  • 7 = (Stopped) for triggered stop orders,
  • 8 = Rejected,
  • 3 = (Done for day) for GTD orders,
  • C = (Expired) for the orders expired at delivery

18ExecInstMultipleCharValueNoCCurrently is used to mark POST ONLY orders and REDUCE ONLY orders.

POST ONLY possible values:

  • 6 = “Participate don’t initiate”,
  • A = “No cross” (only together with 6, “6A” — REJECT POST ONLY when the order is put to the order book unmodified or the request is rejected and order is cancelled),
REDUCE ONLY possible values:
  • E = ” Do not increase - DNI”
103OrdRejReasonintYesPossible reasons:
  • 0 = no reject (the request has been accepted)
  • 1 = Unknown symbol
  • 2 = Exchange closed
  • 3 = Order exceeds limit
  • 4 = Too late to enter
  • 5 = Unknown order
  • 6 = Duplicate Order (e.g. dupe ClOrdID(11))
  • 7 = Duplicate of a verbally communicated order
  • 8 = Stale order
  • 9 = Trade along required
  • 10 = Invalid Investor ID
  • 11 = Unsupported order characteristic
  • 12 = Surveillance Option
  • 13 = Incorrect quantity
  • 14 = Incorrect allocated quantity
  • 15 = Unknown account(s)
  • 16 = Price exceeds current price band
  • 18 = Invalid price increment
  • 99 = Other

Note: Values 3, 4, and 5 will be used when rejecting an order due to pre-allocation information errors.

58TextStringNoFree format text string, usually exceptions
207SecurityExchangeStringNo”Deribit”
55SymbolStringYesInstrument symbol
854QtyTypeStringNoType of quantity specified in a quantity. Currently only 1 - Contracts
231ContractMultiplierfloatNoSpecifies a multiply factor to convert from contracts to total units
6AvgPxfloatNoAverage execution price or 0.0 if not executed yet or rejected
1138DisplayQtyQtyNoThe (max) quantity to be displayed in the orderbook. Contract units corresponding to the ContractMultiplier in SecurityList
9008DeribitMMProtectionBooleanNoOrder Market Maker Protection (MMP) flag. Important: manual admin action is necessary to activate Market Maker Protection MMP for an account
100012DeribitAdvOrderTypecharNoIf it is present then it denotes advanced order for options.

Possible values:

  • 0 = Implied Volatility Order (price defines fixed implied volatility in %),
  • 1 = USD Order (price defines fixed USD price of the option, advanced USD orders are not supported for linear options)

1188VolatilityfloatNoVolatility for Implied Volatility Orders (options orders with fixed volatility)
839PeggedPricePriceNoValue of fixed USD price for USD Orders (options orders with fixed USD price)
31LastPxPriceNoPrice of this last fill
32LastQtyQtyNoQuantity bought/sold on this last fill.
100010DeribitLabelStringNoA custom label for your order, max 64 grapheme clusters. Can be used by Order Cancel Request(F) to amend the order later on. This tag operates on grapheme clusters. A grapheme cluster is a user-perceived character, which can be represented by several unicode codepoints. Please refer to Unicode specification for more details about the grapheme clusters
9019MMPGroupStringNoA custom tag of MMP Group. This tag is present only for orders from Mass Quote
302QuoteSetIDStringNoidentifier for the Quote Set. This tag is present only for orders from Mass Quote.
117QuoteIDStringNoidentifier for the Quote. This tag is present only for orders from Mass Quote.
299QuoteEntryIDStringNoidentifier for the Quote Entry. This tag is present only for orders from Mass Quote.
Group FillsGrp
1362NoFillsNumInGroupNoNumber of fill entries for the order
=>1363FillExecIDStringNoUnique identifier of execution, concatenated via ’#’ symbol and trade sequence number, e.g., BTC-28SEP18#38
=>1364FillPxPriceNoPrice of this partial fill
=>1365FillQtyQtyNoQuantity bought/sold on this partial fill
=>1443FillLiquidityIndintNoIndicator to identify whether this fill was a result of a liquidity provider providing or liquidity taker taking the liquidity.

Possible values:

  • 1 = Added Liquidity,
  • 2 = Removed Liquidity

When responding to a MassStatusReqType=7 request, the server precedes the Execution Reports(8) messages with a special Execution Reports(8) message:
TagNameTypeRequiredComments
584MassStatusReqIDStringYesThe MassStatusReqID from the request. (Only for the first message response to a MassStatusReqType=7 request.)
585MassStatusReqTypeintYesThe MassStatusReqType from the request. (Only for the first message response to a MassStatusReqType=7 request.)
911TotNumReportsintYesThe total number of reports following this initial report