Skip to main content
Version: Staging

Auction Responder Specs

Both SpiderRock Connect and on-exchange auctions can be responded to via NewOrderSingle and NewOrderMultileg FIX messages.

Typically, a responder would subscribe for auction notices via a SpiderRock MLink server or by asking for a SpiderRock client FIX session with LiquidityRequest messages enabled. Both methods supply an AuctionNoticeID (sometimes called noticeNumber) that the client is expected to return to SpiderRock when responding to an auction.

Response orders can cancelled at any time by the user and will automatically expire at the end of the auction sequence they are responsive to.

SpiderRock generally follows FIX 4.4 conventions but can switch to FIX 4.2 conventions on request.

Application Messages

NewOrderSingle (Client to SpiderRock)

NewOrderSingle<D> messages are used to submit responses to single security auction notices (liquidity requests).

TagField NameReq'dTypeComments
StandardHeaderYMsgType = D
11ClOrdIdYstringClient order ID (24 character max)
5208SRCrossNoticeIDYstringQuoteRequestID from Liquidity Request
5094SROrderHandlingYint23 = BlockResponse
1AccountYStringSR account acronym
461CFJ CodeNstringOC = Option - Call[OPT]
OP = Option - Put[OPT]
201PutOrCallNintAlternative to CFICode<461>
0 = Put
1 = Call
167SecurityTypeNstringAlternative to CFICode<461>
OPT - Equity Option
55SymbolYstringExchange Symbol
- May incorporate symbol suffix (eg. VIA.A)
- For OPRA options, SpiderRock accepts an OSI code
65SymbolSfxNstringSymbol suffix
541MaturityDateNstringFor Options
YYYYMMDD
200MaturityMonthYearNstringAlternative to MaturityDate<541>
YYYYMM
205MaturityDayNintAlternative to MaturityDate<541>
1-31
202StrikePriceNfloatOption strike price
54SideYchar1 = Buy
2 = Sell
Must be opposite of the side in the liquidity request
38OrderQtyYintExecutable quantity
77OpenCloseNcharFor Options
O = Open
C = Close
A = Auto (SR determines whether child orders should be marked open or closed by looking up account/aggregate group position when child orders are created).
44PriceYdoubleLiquidity response price (4 decimals; does not need to be in normal price increments).
5098SROrderLimitTypeNint2 = Price (static price)
3 = PriceDeGa (delta/gamma adjusted price; uMid reference)
4 = PriceDeGaX (delta/gamma adjusted price; uCross reference)
Default is Price
5104SRTakeReachRuleYchar5 = FullSize
10 = AtMost25
11 = AtMost50
5108SROrderRefUPrcNfloatThe initial reference price for PriceDeGa and PriceDeGaX order limit types. Default is SR supplied underlier reference at time of order arrival.
5110SRorderRefDeltaNfloatThe reference delta for PriceDeGa and PriceDeGaX order limit types. Default is SR supplied delta at time of order arrival.
5112SROrderRefGammaNfloatThe reference gamma for PriceDeGa and PriceDeGaX order limit types. Default is SR supplied gamma at time of order arrival.
60TransactTimeYutcDttmYYYYMMDD-HH:MM:SS
(Message must arrive within 15 seconds to be considered valid).
StandardTrailerY

NewOrderMultileg (Client to SpiderRock)

NewOrderMultileg<AB> messages are used to submit responses to multi-leg security auction notices (liquidity requests).

TagField NameReq'dTypeComments
StandardHeaderYMsgType = AB
11ClOrdIDYstringClient order ID (24-character max)
5208SRCrossNoticeIDYstringQuoteRequestID from LiquidityRequest
5094SROrderHandlingYint23 = BlockResponse
1AccountYstringSR account acronym
555NoLegsYintNumber of legs
=654LegRefIdYstringUsed to identify a specific leg
=608LegCEICodeNstringES = Equity Common Shares [CS]
F = Future [FUT]
OC = Option - Call [OPT]
OP = Option - Put [Opt]
=609LegSecurityTypeNstringAlternative to LegCEICode<608> for Equities and Futures only.
- Must be specified for Futures and Options
- If not specified, Equity assumed
OPT - Equitiy Option
CS or <empty> - Equity
=600LegSymbolYstringLeg Exchange symbol
- may incorporate symbol suffix, e.g. VIA.A
- For OPRA options, spiderRock accepts an OSI code in this field.
- For standardized futures products, maturity information can be inclided in this field, (e.g. GCZ22 [for the Dec-22 Comex Gold Future])
=601LegSymbolSfxNstringLeg Symbol Suffix
=611LegMaturityDateNstringFor Futures and Options
YYYYMMDD
=612LegStrikePriceNfloatOption strike price
=624LegSideYchar1 = Buy
2 = Sell
5 = Sell short
6 = Sell short exempt
Y = Sell auto (SR determines whether child orders should be selling long or short by looking up account/aggregate group position when child orders are created).
=623LegRatioQtyYintThe ratio of quantity for this individual leg relative to the entire multileg security
=564LegPositionEffectNcharFor Option leg:
O = Open
C = Close
For Stock leg when 624=1 (Buy) and 54=2 (Sell):
2 = Sell long
5 = Sell short
6 = Sell short exempt
A = Auto (SR determi9nes whether child orders should be marked open or closed by looking yp account/aggregate group position when child orders are created).
Default is A (Auto) if not supplied. Note: Auto is only allowed if the trading account is configured for auto-marking.
54SideYchar1 = Buy
2 = Sell
Must be opposite of the side in the liquidity request
38OrderQtyYintExecutable quantity
44PriceYdoubleLiquidity response price (4 decimals; does not need to be in normal price increments).
5098SROrderLimitTypeNint2 = Price (static price)
3 = PriceDeGa (delta/gamma adjusted price; uMid reference)
4 = PriceDeGaX (delta/gamma adjusted price; uCross reference)
Default is Price
5104SRTakeReachRuleYchar5 = FullSize
10 = AtMost25
11 = AtMost50
5108SROrderRefUPrcNfloatThe initial reference price for PriceDeGa and PriceDeGaX order limit types. Default is SR supplied underlier reference at time of order arrival.
5110SRorderRefDeltaNfloatThe reference delta for PriceDeGa and PriceDeGaX order limit types. Default is SR supplied delta at time of order arrival.
5112SROrderRefGammaNfloatThe reference gamma for PriceDeGa and PriceDeGaX order limit types. Default is SR supplied gamma at time of order arrival.
60TransactTimeYutcDttmYYYYMMDD-HH:MM:SS
(Message must arrive within 15 seconds to be considered valid).
StandardTrailerY

ExecutionReport (SpiderRock to Client)

TagField NameReq'dTypeComments
StandardHeaderYMsgType = 8
37OrderIDYstringUnique ID for order chain assigned by SpiderRock
11ClOrdIDYstringClient order ID (24-character max)
41OrigClordIDNstringConditionally required for response to a Cancel or Cancel/Replace request
(ExecType=PendingCancel, Replaced, or Canceled)
76ExecBrokerNstringValue from executing venue
5036SRUsernameNstringUsed for customer service and futures compliance
5012SRAltAccntNstring
5410SRExtTraderIDNstring
5350SRExecBrokerMPIDNstringExecuting Broker MPID
17ExecIDYstringUnique ID assigned by SpiderRock
20ExecTransTypeYInt
19ExecRefIDNstring
150ExecTypeYchar
60TransactTimeYutcDttmYYYYMMDD-HH:MM:SS.sss
Time the transaction represented by this ExecutionReport occured
39OrdStatusYchar
103OrdRejReasonNintFor optional use with ExecType = 8 (Rejected)
1AccountYstringAssigned by SpiderRock
54SideYcharValue from executing venue
Value may differ from client's order if execution order is sold short.
38OrderQtyYint
40OrdTypeYcharOrder type of this execution
77OpenCloseNcharValue from client's order
44PriceNdoubleValue from client's order
528OrderCapacityNcharValue from order to venue
32LastSharesYint
31LastPxYdouble
30LastMktNstringValue from executing venue
29LastCapacityNstringValue from executing venue
151LeavesQtyYint0 if order is not active, not (OrderQty-Cum)
14CumQtyYint
6AvgPxYdoubleExecution Price
58TextNstring
5605SRRejectCodeNintSee Appendix C for a list of SR reject codes
442MultiLegReportingTypeNcharUsed to indicate what an Execution Report represents (e.g. used with multi-leg securities, such as option strategies, spreads, etc.).
1 = SINGLE_SECURITY
2 = INDIVIDUAL_LEG
3 = MULTI_LEG_SECURITY
654LegRefIDNstringUsed to identify a specific leg for multileg order execution reports
439ClearingFirmNstringValue from client's order, or SpiderRock account config
440ClearingAccountNstringValue from client's order, or SpiderRock account config
167SecurityTypeNstringValue from client's order
55SymbolYstringValue from client's order
65SymbolSfxNstringValue from client's order
461CFICodeNstringValue from cient's order
201PutOrCallNintValue from client's order
541MaturityDateNstringValue from client's order
YYYYMMDD
200MaturityMonthyearNstringValue from client's order
YYYYMM
205MaturityDayNintValue from client's order
1-31
202StrikePriceNpriceValue from client's order
StandardTrailerY

OrderCancelRequest (Client to SpiderRock)

TagField NameReq'dTypeComments
Standard HeaderYMsgType = F
11ClOrdIDYstringClient order ID (24-character max)
41OrigClordIDYstringClOrdID<11> of the previous order (NOT the initial order of the day) when canceling an order (24-character max)
58TextNstringUser supplied text such as a cancel reason
60TransactTimeYutcDttmYYYYMMDD-HH:MM:SS.sss
Standard TrailerY

OrderCancelReject (SpiderRock to Client)

SpiderRock FIX Gateways follow FIX 4.4 style rules for CancelReject handling but can switch to FIX 4.2 on request.

TagField NameReq'dTypeComments
Standard HeaderYMsgType = 9
37OrderIDYstringUnique ID for order chain assigned by SpiderRock
11ClOrdIDYstringValue from client request
41OrigClOrdIDYstringConditionally required for response to a Cancel or Cancel/Replace request (ExecType=PendingCancel, Replaced, or Canceled)
434CxlRejResponseToYcharValid values:
1 = OrderCancelRequest <F>
2 = OrderCancel/Replace Request <G>
102CxlRejReasonNint
39OrdStatusYcharOrdStatus value after this cancel reject is applied
58TextNstring
Standard TrailerY

LiquidityRequest (SpiderRock to Client)

QuoteRequest<R> messages are used to notify responders about liquidity response opportunities. The same message is used for both flash (20ms) and block (up to 5 minutes) auctions.

TagField NameReq'dTypeComments
StandardHeaderYMsgType = R
131QuoteReqIDYstringMust be included as SRCrossNoticeID (24-character max) on New Order Single and New Order Multileg responses.
55SymbolYstringIf 167=OPT: OSI Option Code
If 167=MLEG: Exchange Symbol
167SecurityTypeYstringOPT = Equity Option
MLEG = Multileg Spread
38OrderQtyYintExecutable quantity
44PriceNfloatWill exist if initiator is disclosing a public price
54SideNchar1=Buy
2=Sell
Initiator Side
will exist if initiator is disclosing a public side
104IOIQualifierNcharL = UptoQty
A = AllorNone
M = QtyOrMore
303QuoteRegTypeYcharB = Block
F = Flash
60TransactTimeYutcDttmYYYYMMDD-HH:MM:SS.sss
5022SRClientFirmNstringSRClientFirmCode of the initiating client firm (if disclosed)
555No LegsNintNumber of legs (MLeg Only)
=600LegSymbolYstringIf 609=CS: Leg Exchange symbol
If 609=OPT: Option OSI code
=609LegSecurityTypeYstringOPT = Equity Option
CS = Equity
=624LegSideYchar1 = Buy
2 = Sell
=623LegRatioQtyYintThe ratio of quantity for this individual leg relative to the entire multileg security
StandardTrailerY