Skip to main content
Version: 8.5.3.1

Order Entry Specs

This document describes the application level FIX messages used to submit and manage orders for equities, futures, and options, including single-leg and multi-leg variants.

This document is intended to be used in conjunction with the SpiderRock FIX Session Guide which describes session level message handling and other SpiderRock FIX conventions in more detail.

Please refer to the OrderManagement section of this site for more information about SpiderRock execution and order management algos and concepts.

Supported Order Types

DMA style orders - These are market or limit orders with a simple limit price and a designated exchange.

Smart/Sweep style orders - These market or limit orders, with a simple limit price, and no designated exchange. These orders will be routed to one or more exchanges at SpiderRock's discretion.

Algorithmic orders These are orders with complex algo behavior and complex price and size limits. They can both provide and interact with liquidity on any public exchange.

Multi-Leg orders - Also known as spread orders, these are orders to buy and sell orders with more than one option simultaneously. Multi-Leg orders can have DMA, Smart/Sweep, or Complex Algo style order handling. They can also work legs individually across all relevant exchanges.

Opening/Closing auctions - Orders designated for participation in either exchange opening or closing auctions.

Order Life Cycle

Delayed start time The order may contain a start time parameter to specify when an order becomes active.

Wait-start The order can be be staged so that it does not become active until released (active size is initially zero).

Staged The order is entered by one user, and activated by another user.

StageReview The order is entered by one trading system, and activated by another system (compliance/risk).

Stop Time The order stops working when the stop time is reached.

Order Duration The order stops working when the order duration is reached

Price Range Cancel The order stops working when an underlying price is reached.

User Cancel The order is explicitly cancelled by the client

Note: Orders can be staged, released, and cancelled by any combination of SpiderRock GUI tools, the SpiderRock SRSE API, and FIX messaging.

Application Messages

NewOrderSingle (Client to SpiderRock)

NewOrderSingle<D> messages are used to submit orders for single securities. Both the standard order types and algorithmic order types offered by SpiderRock are communicated using this message.

In addition to standard FIX tags, SpiderRock uses custom FIX tags (5,000+) for SpiderRock specific parameters. More information about the SpiderRock tags can be found in the SpiderRock Tag Appendix below.

Basic Version

TagField NameReq'dTypeAssociated Record Value
(SpdrParentOrder)
Comments
Standard HeaderYMsgType = D
11ClOrdIdYstringaltOrderIdClient order ID (24 character max)
60TransactTimeYutcDttmorderDttmTime this order request was initiated/released. Formatted as: YYYYMMDD-HH:MM:SS.fff
Note: this order must arrive at SpiderRock within 15 seconds of the TransactTime to be considered a valid order.
1AccountYstringaccntSR account acronym. Must be configured prior to testing or trading
Superseded by SRAccnt
204CustomerOrFirmNstringfirmType0 = Customer
1 = Firm
2 = Broker / Dealer 4 = Market Maker
5 = Non-Member Market Maker
8 = Customer Professional
Will default to SR account configuration if not specified
Superseded by: SRFirmType
528OrderCapacityNcharorderCapacityA = Agency
G = Prop
I = Individual
P = Principal
R = Riskless
W = AgentOtherMember
Will default to SR account configuration if not specified
Superseded by: SROrderCapacity
167SecurityTypeNstringsecTypeAlternative to CFICode<461>
CS = Equity default
FUT = Future/Future Options
OPT = Equity Option
Superseded by :SRSecType
Default=stock
54SideYcharorderSide
ssaleFlag
1 = 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).
OrderSide superseded by: SROrderSide
SsaleFlag superseded by: SRShortSaleFlag
38OrderQtyYintorderSizeExecutable quantity
Superseded by: SRORderSize
77PositionEffectNcharpositionTypeO = Open
C = Close
R = Rolled
F = FIFO
Superseded by: SRPositionType
40OrdTypeNcharorderLimitType1 = Market
2 = Limit
5 = Market on Close
B = Limit on Close
Required for DMA and Smart/Sweep style orders. Not required for more complex order types. If necessary, use Market as the order type when submitting orders with more complex behavior.
Superseded by: SROrderLimitType
Default=Price
44PriceNfloatorderPrcLimitRequired for limit order types
Superseded by: SROrderPrcLimit
59TimeInForceNstringorderDuration
parentOrderHandling
0 = Day
2 = Opening
3 = Immediate or Cancel (IOC)
6 = Good Till Date/Time (or Duration)
7 = Closing
OrderDuration Superseded by: SRMarketSession
126ExpireTimeNUTCTimeStampgoodTillDttmSuperseded by: SRGoodTillDttm
100ExDestinationNmultiple-value
string
exchMaskSR Destination Code (see appendix)
Required for DMA style orders
Superseded by: SRExDestination
440ClearingAccountNstringclearingAccnt (in child order)Superseded by SRClearingFlipAccount, then SRClearingAccnt
439ClearingFirmNstringclearingFirm (in child order)Superseded by: SRClearingFlipFirm
Any SR TagsN
Standard TrailerY

Common Extensions

TagField NameReq'dTypeAssociated Record Value
(SpdrParentOrder)
Comments
5020SRAccntNstringaccntSR account acronym. Must be configured prior to testing or trading
Supersedes Account
5022SRClientFirmNstringclientFirmSR client firm acronym, used in account lookup. Must be configured prior to testing or trading
5012SRAltAccntNstringaltAccntSR alternative account acronym.
Must be configured prior to testing or trading
5166SRFirmTypeNstringfirmTypeSupersedes CustomerOrFirm
5168SROrderCapacityNcharorderCapacityA = Agency
G = Prop
I = Individual
P = Principal
R = Riskless
W = AgentOtherMember
Will default to SR account configuration if not specified
Supersedes OrderCapacity
5016SRSecTypeNstringsecTypeSupersedes SecurityType
5015SRSecKeyNstringsecTypeSupersedes typical resolution
5040SROrderSideNcharorderSideSupersedes Side
5172SRShortSaleFlagNcharssaleFlag1 = Long
2 = Short
3 = Exempt
4 = Auto
5 = Open
6 = Close
8 = Cover
7 = NA
5042SROrderSizeNintorderSizeSupersedes OrderQty
5170SRPositionTypeNcharpositionTypeSupersedes PositionEffect
5700LocateBrokerNstringlocateFirmSuperseded by: SRLocateFirm
5221SRLocateFirmNstringlocateFirmSupersedes LocateBroker
5098SROrderLimitTypeNcharorderLimitTypeSupersedes OrdType
5106SROrderPrcLimitNfloatorderPrcLimitSupersedes Price
5089SRMarketSessionNstringorderDuration
parentOrderHandling
Supersedes TimeinForce
5088SRGoodTillDttmNUTCTimeStampgoodTillDttmSupersedes ExpireTime
5094SROrderHandlingNstringparentOrderHandlingSupersedes typical resolution
If failure to resolve, Default=DMA
5360SRExDestinationNmultiple-value
string
exchMaskSupersedes ExDestination
5374SRClearingFlipAccountNstringclearingFlipAccnt (in child order)Supersedes ClearingAccount
5026SRClearingAccountNstringclearingAccnt (in child order)Supersedes ClearingAccount
5373SRClearingFlipFirmNstringclearingFlipFirm (in child order)Supersedes ClearingFirm
5375SRClearingFlipTypeNstringclearingFlipType (in child order)Examples:
BRKR
CMTA
GVUP
NSCC
DTCC
QSR
DVP

Example -- DMA

DMA orders are used to send a single order to a specific exchange or destination. This order type allows the client to control where the order is traded. Note that DMA orders may interact with dark liquidity in the SpiderRock platform if this is desired.

TagField NameReq'dTypeAssociated Record Value
(SpdrParentOrder)
Comments
Standard HeaderYMsgType = D
Basic NewOrderSingle FieldsSee "NewOrderSingle" above
100ExDestinationYstringexchMaskSR Destination Code (see appendix)
Standard TrailerY

Example - Smart/Sweep

Smart/Sweep orders are used to send an order without specifying a destination. SpiderRock will determine the optimal destination(s) for the order and will automatically sweep multiple destinations to maximize liquidity capture. This order type can optionally post any unfilled balance on an exchange.

TagField NameReq'dTypeAssociated Record Value
(SpdrParentOrder)
Comments
Standard HeaderYMsgType = D
Basic NewOrderSingle FieldsSee "NewOrderSingle" above
Standard TrailerY

Example - Staged/WaitStart

The SRStartType<5090> tag is used to send staged/wait orders to SpiderRock. These orders will be sent to the exchange once the client commands their release. Note that orders can be released in multiple ways: via the SpiderRock GUI tools, the SpiderRock SRSE/SQL API, and a Listexecute<L> FIX message. Staged orders will be acknowledged immediately; fills will only be reported after the order has been released.

TagField NameReq'dTypeAssociated Record Value
(SpdrParentOrder)
Comments
Standard HeaderYMsgType = D
Basic NewOrderSingle FieldsSee "NewOrderSingle" above
Algorithmic NewOrderSingle FieldsSee "NewOrderSingle" above
5086SRStageTypeYintspdrStageType1 = ModifyAny
2 = ModifyAlgo
5090SRStartTypeYintstartType2 = WaitTrigger (wait start)
Standard TrailerY

Example - Market-On-Open/Market-On-Close

Market-On-Open/Market-On-Close orders are used when participating in opening and closing exchange auctions. Note: Either FIX 4.2 or FIX 4.4style OrdType/TimeInForce tagging is allowed.

TagField NameReq'dTypeAssociated Record Value
(SpdrParentOrder)
Comments
Standard HeaderYMsgType = D
Basic NewOrderSingle FieldsSee "NewOrderSingle" above
59TimeInForceYcharparentOrderHandling2 = At the opening
7 = At the Close
Standard TrailerY

Example - SpiderRock Algorithm

Complex Algo/Parent orders express intent to interact with the market in a variety of ways. These parent orders can, and frequently do, result in multiple child orders being generated and routed to the exchange.

TagField NameReq'dTypeAssociated Record Value
(SpdrParentOrder)
Comments
Standard HeaderYMsgType = D
Basic NewOrderSingle FieldsSee "NewOrderSingle" above
5036SRUsernameNstringuserNameClient defined username
Used for customer service and futures compliance
If necessary, a default may be assigned to the FIX session. (24 character max)
5055SRProgressExposeTimeNintprogressExposeTimeDuration in seconds
5094SROrderHandlingYintorderHandlingPrimary order handling algorithm
1 = ActiveTaker
2 = PostOnly
3 = DMA
4 = MktOnOpn
5 = MktOnCls
11 = CrossResponse
12 = AuctionResponse
5096SRBalanceHandlingNintparentBalanceHandling0 = None (non-marketable balance will not be posted) default
1 = PostWith
2 = PostTurn
3 = PostImprove
4 = PostLimit
5 = PostLmtW
7 = PostWthF
9 = PostFlash
10 = PostFlashW
12 = PostFlashI
5090SRStartTypeNintstartType0 = Immediate
1 = WaitTrigger (wait for RiskGroup/Sweep trigger)
2 = Staged (wait for order to be modified/r eleased)
5089SRMarketSessioncharmarketSession1 = Regular Market
2 = Pre-Market
3 = Post-Market
4 = Regular and Pre-Market
5 = Regular and Post-Market
6 = All Day
5086SROrderDurationNintorderDurationOrder with SRMarketSession = GTD expires after working for this number of seconds.
5088SRGoodTillDttmNutcDttmgoodTillDttmOrder with SRMarketSession = GTD expires at this time.
5028SRExecBrokerCodeNstringexecBrkrCodeOverrides the default executing broker for this parent order
5034SRStrategyNstringstrategyClient strategy label. Displayed on SR Order Manager
5082SRExDestinationNstringexchMaskSpace separated exchange list; default = all available exchanges
5046SRMaxExposureSizeNintmaxExposureSizeMaximum simultaneous public exposure size across all exchanges
5048SRNumMakeExchangesNintnumMakeExchangesNumber of public exposure exchanges
5050SRPublicSizeNcharpublicSize0 = None
1 = Randomize
2 = MktSize
3 = FullSize
4 = MktSizeA
5 = MktSizeB
6 = MktSizeC
7 = FullSizeR
Max25Pct=8
Max50Pct=9
Max75Pct=10
NoSize=11
5052SRCanCxlOverlapNcharcanOverlapCxlReplWhen replacing (cancel-with-replacement) a child order, can cancel request overlap with new order? The order may overfill if 'Y'.
Y = Yes
N = No
5080SRMaxChildOrdersNintmaxChildOrdersUpper bound for the number of child orders generated for this parent order
Default: 1000
5054SRProgressRuleNintprogressRule0 = Immediate default
1 = Twap
2 = Vwap (not available for options)
3 = TwapReset
4 = VwapReset (not available for options)
5 = FastReset
6 = SlowReset
7 = TwapAlpha
8 = VwapAlpha (not available for options)
11 = SpdrPulse
5056SRProgressSliceCntNintprogressSliceCntnumber of slices to use (default = 4 or 8) [max 20]
5104SRTakeReachRuleNinttakeReachRule0 = None
1 = Delayed
2 = Passive
3 = WeakOnly
4 = RespondOnly
5 = FullSize
6 = ISOSweep
7 = AllOrNone
8 = QtyOrMore
9 = UpToQty
10 = AtMost25
11 = AtMost50
12 = MinTakeFee
5098SROrderLimitTypeNintorderLimitType0 = Market
1 = MarketArrival
2 = Prc
3 = PrcDe
4 = PrcDeX
5 = PrcDeT
6 = PrcDeP
7 = PrcDeXT
8 = PrcD
eXP 9 = Vol
10 = VolX
11 = PrcV
12 = PrcVX
13 = VolPrc
14 = RelMid
15 = RelJoin
16 = RelCross
17 = SmrtFast
18 = SmrtNorm
19 = RelTurn
20 = PrcDeEm
22 = VolEm
23 = Aux
24 = UPrcPct
25 = PkgNeutral
26 = RcPrem
27 = SynthLimitMM
28 = SynthLimitBW
29 = SynthLimitWW
5106SROrderPrcLimitNfloatorderPrcLimitApplies if SROrderLimitType<5098> = Prc
5126SROrderPrcOffsetNfloatorderPrcOffsetDefault=0
5132SRTakeAlphaFactorNfloattakeAlphaFactor
5134SRMakeAlphaFactorNfloatmakeAlphaFactor
5136SRTakeProbabilityNfloattakeProbability
5138SRMakeProbabilityNfloatmakeProbability
5259SRMaxSymDayDDeltaLnNfloatmaxSymDayDDeltaLnmax acct+symbol day $delta long
Should be a positive number; Defaults to no limit
5260SRMaxSymDayDDeltaShNfloatmaxSymDayDDeltaShmax acct+symbol day $delta short
Should be a positive number; Defaults to no limit
5058SRVwap ParticipationNfloatvwapParticipationTarget VWAP participation rate (target % of trade activity)
5290SRUserData1NstringuserData1User defined field (max 255 chars) - Can be returned on exec reports, forwarded on drop lines, or copied onto child orders. Please advise SpiderRock support staff of intended behavior.
5291SRUserData2NstringuserData2User defined field (max 255 chars) - Can be returned on exec reports, forwarded on drop lines, or copied onto child orders. Please advise SpiderRock support staff of intended behavior.
SR Option Specific FieldsSee "Algorithmic Order -- Option Specific Fields" below
Standard TrailerY

Algorithmic Order -- Option Specific Fields

The following fields can be included in Algorithmic orders when SecurityType<167> = Option.

TagField NameReq'dTypeAssociated Record Value
(SpdrParentOrder)
Comments
5170SRPositionTypeNintpositionTypePrimary position type (single leg orders)
5060SRAuctionResponderNstringauctionResponder0 =None
ANY = parent order can be an auction responder
5108SROrderRefUPrcNfloatorderRefUPrcThe stock reference price, a contribution to the order premium.
5110SROrderRefDeltaNfloatorderRefDelta
5112SROrderRefGammaNfloatorderRefGamma
5192SROrderRefRMetric1NfloatorderRefRMetric1User supplied custom risk metric
5194SROrderRefRMetric2NfloatorderRefRMetric2User supplied RMetric2 value
5196SROrderRefRMetric3NfloatorderRefRMetric3User supplied RMetric3 value
5198SROrderRefRMetric4NfloatorderRefRMetric4User supplied RMetric4 value
5200SROrderRefRMetric5NfloatorderRefRMetric5User supplied RMetric5 value
5212SROrderRefRMetric6NfloatorderRefRMetric6User supplied RMetric6 value
5236SROrderRefRMetric7NfloatorderRefRMetric7User supplied RMetric7 value
5116SROrderVolLimitNfloatorderVolLimitOrder volatility limit - Valid range: [0.005, 9.000].
Required if SROrderLimitType<5098> is Vol, VolX, or VolPrc
Ignored if SROrderLimitType is Market
5118SRRateOverrideNfloatrateOverrideMust be positive
5120SRSDivOverrideNfloatsdivOverride
5122SRDDivOverrideNstringddivOverrideDiscrete dividends override
Format:[years: amount, years:amount, ...]
5124SROverrideCodeNcharoverrideCodeSDiv/DDiv override rule (applies if LimitType = Vol)
0 = None
S = SDivOnly
D = DDivOnly
B = Both
5228SRMakeSurfWidthOffsetNfloatmakeSurfWidthOffset
5229SRTakeSurfWidthOffsetNfloattakeSurfWidthOffset
5140SRTakeSurfPrcOffsetNfloattakeSurfPrcOffset
5142SRTakeSurfVolOffsetNfloattakeSurfVolOffset
5144SRMakeSurfPrcOffsetNfloatmakeSurfPrcOffset
5146SRMakeSurfVolOffsetNfloatmakeSurfVolOffset
5072SRCxlUPrcRangeNboolcxlUPrcRangeCancel order if outside stock price range
Y = Yes
N = No
Z = Yes/Halt - Yes and also cancel on underlying halt
M = No/Halt - No, but cancel on underlying halt
5074SRMinUBidNfloatminUBidAny non-hold status will revert to markup if stock NBBO Mid is outside [midStockPx,maxUAsk] range.
5076SRMaxUAskNfloatSee description for minUBid
5078SRMinOptionPxNfloatmaxUAskOption price floor for orders tied to stock
5255SRMaxExpDayWtVegaLnNfloatmaxExpDayWtVegaLnmax accnt+expiration day wvega (time weighted) long. Should be a positive number; Defaults to no limit
5256SRMaxExpDayWtVegaShNfloatmaxExpDayWtVegaShmax accnt+expiration day wvega (time weighted) short. Should be a positive number; Defaults to no limit
5257SRMaxSymDayWtVegaLnNfloatmaxSymDayWtVegaLnmax acct+symbol day vega long. Should be a positive number; Defaults to no limit
5258SRMaxSymDayWtVegaShNfloatmaxExpDayWtVegaShmax acct+symbol day $delta short. Should be a positive number; Defaults to no limit

Algorithmic Order -- Option Autohedging Fields

If autohedging is enabled, then any resulting autohedge fills will be reported using the orders. Note that since autohedge trades are generated in response to option fills, perhaps over multiple orders, some accommodations must be made in the resulting autohedge execution reports. They cannot be reported back to the client on an order entry line; all autohedged drop reports are reported down a separate FIX drop line.

TagField NameReq'dTypeAssociated Record Value
(SpdrParentOrder)
Comments
5152SRAutoHedgeNcharautoHedgeN = NoHedge default
X = FastCrx
Y = FastDark
Z = SlowDark
F = AutoCrx
S = AutoTrn
M = AutoMid
A = SpdrAuto
1 = Spdr10S
3 = Spdr30S
9 = Spdr90S
5 = Spdr5M
H = Spdr30M
D = SpdrDay
12 = SmartFast
13 = SmartNorm
V1 = AlphaVwap1pct=V1
V2 = AlphaVwap2pct
V5 = AlphaVwap5pct
V25 = AlphaVwap25pct
T = Static

OrderCancelReplace (Client to SpiderRock)

The OrderCancelReplace<G> request is used to change the parameters of an existing New Order Single.

An ExecutionReport<8> with ExecType<150>=Pending Replace will be sent unless the OrderCancelReplace<G> can immediately be accepted (ExecutionReport<8> with ExecType<150>=Replaced) or rejected (OrderCancelReject<9> message).

An OrderCancelReplace<G> request will only be accepted if any associated child orders can successfully be cancelled. Requests that cannot be processed will be rejected with a CancelReject<3> message.

An order’s algorithmic parameters remain unaffected unless a new value is manually updated for a specific parameter. If a new value is not supplied, the previous order's algo parameters are carried forward onto the new order.

An OrderCancelReplace<G> request may be sent to increase the quantity on a filled order, but not a cancelled nor rejected order.

In addition to standard FIX tags, SpiderRock uses custom FIX tags (5,000+) for SpiderRock specific parameters. More information about the SpiderRock tags can be found in the SpiderRock Tag Appendix below.

Basic Version

TagField NameReq'dTypeAssociated Record Value
(SpdrParentOrder)
Comments
Standard HeaderYMsgType = G
1AccountYstringaccntSR account acronym. Must be configured prior to testing or trading
Superseded by SRAccnt
11ClOrdIdYstringaltOrderIdClient order ID (24 character max)
38OrderQtyYintorderSizeExecutable quantity
Superseded by: SRORderSize
54SideYcharorderSide
ssaleFlag
1 = 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).
OrderSide superseded by: SROrderSide
SsaleFlag superseded by: SRShortSaleFlag
40OrdTypeNcharorderLimitType1 = Market
2 = Limit
5 = Market on Close
B = Limit on Close
Required for DMA and Smart/Sweep style orders. Not required for more complex order types. If necessary, use Market as the order type when submitting orders with more complex behavior.
Superseded by: SROrderLimitType
Default=Price
44PriceNfloatorderPrcLimitRequired for limit order types
Superseded by: SROrderPrcLimit
59TimeInForceNstringorderDuration
parentOrderHandling
0 = Day
2 = Opening
3 = Immediate or Cancel (IOC)
6 = Good Till Date/Time (or Duration)
7 = Closing
OrderDuration Superseded by: SRMarketSession
126ExpireTimeNUTCTimeStampgoodTillDttmSuperseded by: SRGoodTillDttm
52SendingTimeNUTCTimeStampTime of message transmission
always expressed in UTC (Universal Time Coordinated, also known as “GMT”)
60TransactTimeYutcDttmorderDttmTime this order request was initiated/released. Formatted as: YYYYMMDD-HH:MM:SS.fff
Note: this order must arrive at SpiderRock within 15 seconds of the TransactTime to be considered a valid order.
100ExDestinationNmultiple-value
string
exchMaskSR Destination Code (see appendix)
Required for DMA style orders
Superseded by: SRExDestination
Any SR TagsN
Standard TrailerY

Common Extensions

TagField NameReq'dTypeAssociated Record Value
(SpdrParentOrder)
Comments
5020SRAccntNstringaccntSR account acronym. Must be configured prior to testing or trading
Supersedes Account
5022SRClientFirmNstringclientFirmSR client firm acronym, used in account lookup. Must be configured prior to testing or trading
5012SRAltAccntNstringaltAccntSR alternative account acronym.
Must be configured prior to testing or trading
5042SROrderSizeNintorderSizeSupersedes OrderQty
5040SROrderSideNcharorderSideSupersedes Side
5098SROrderLimitTypeNcharorderLimitTypeSupersedes OrdType
5106SROrderPrcLimitNfloatorderPrcLimitSupersedes Price
5089SRMarketSessionNstringorderDuration
parentOrderHandling
Supersedes TimeinForce
5088SRGoodTillDttmNUTCTimeStampgoodTillDttmSupersedes ExpireTime
5094SROrderHandlingNstringparentOrderHandlingSupersedes typical resolution
If failure to resolve, Default=DMA
5360SRExDestinationNmultiple-value
string
exchMaskSupersedes ExDestination

NewOrderMultileg (Client to SpiderRock)

A NewOrderMultileg<AB> message is used to submit an order for up to 6 option legs and one equity leg as a package. Both standard multi-leg order types and the more complex ones offered by SpiderRock are communicated using this message.

The NewOrderMultileg<AB> fields listed in the following table are used in common by all SpiderRock multileg orders. Additional fields are used by different order types to communicate their unique features. These fields are described in subsequent sections.

In addition to standard FIX tags, SpiderRock uses custom FIX tags (5,000+) for SpiderRock specific parameters. More information about the SpiderRock tags can be found in the SpiderRock Tag Appendix below.

Basic Version

TagField NameReq'dTypeAssociated Record Value
(SpdrParentOrder)
Comments
Standard HeaderYMsgType = AB
11ClOrdIdYstringaltOrderIdClient order ID (24 character max)
60TransactTimeYutcDttmorderDttmTime this order request was initiated/released. Formatted as: YYYYMMDD-HH:MM:SS.fff
Note: this order must arrive at SpiderRock within 15 seconds of the TransactTime to be considered a valid order.
1AccountYstringaccntSR account acronym. Must be configured prior to testing or trading
Superseded by SRAccnt
204CustomerOrFirmNstringfirmType0 = Customer
1 = Firm
2 = Broker / Dealer 4 = Market Maker
5 = Non-Member Market Maker
8 = Customer Professional
Will default to SR account configuration if not specified
Superseded by: SRFirmType
528OrderCapacityNcharorderCapacityA = Agency
G = Prop
I = Individual
P = Principal
R = Riskless
W = AgentOtherMember
Will default to SR account configuration if not specified
Superseded by: SROrderCapacity
167SecurityTypeNstringsecTypeAlternative to CFICode<461>
CS = Equity default
FUT = Future/Future Options
OPT = Equity Option
Superseded by :SRSecType
Default=stock
54SideYcharorderSide
ssaleFlag
1 = 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).
OrderSide superseded by: SROrderSide
SsaleFlag superseded by: SRShortSaleFlag
38OrderQtyYintorderSizeExecutable quantity
Superseded by: SRORderSize
77PositionEffectNcharpositionTypeO = Open
C = Close
R = Rolled
F = FIFO
Superseded by: SRPositionType
40OrdTypeNcharorderLimitType1 = Market
2 = Limit
5 = Market on Close
B = Limit on Close
Required for DMA and Smart/Sweep style orders. Not required for more complex order types. If necessary, use Market as the order type when submitting orders with more complex behavior.
Superseded by: SROrderLimitType
Default=Price
44PriceNfloatorderPrcLimitRequired for limit order types
Superseded by: SROrderPrcLimit
59TimeInForceNstringorderDuration
parentOrderHandling
0 = Day
2 = Opening
3 = Immediate or Cancel (IOC)
6 = Good Till Date/Time (or Duration)
7 = Closing
OrderDuration Superseded by: SRMarketSession
126ExpireTimeNUTCTimeStampgoodTillDttmSuperseded by: SRGoodTillDttm
440ClearingAccountNstringclearingAccnt (in child order)Superseded by SRClearingFlipAccount, then SRClearingAccnt
439ClearingFirmNstringclearingFirm (in child order)Superseded by: SRClearingFlipFirm
100ExDestinationNmultiple-value
string
exchMaskSR Destination Code (see appendix)
Required for DMA style orders
Superseded by: SRExDestination
555NoLegsYintNumber of leg repeating groups
Leg Repeating Group
654LegRefIdNhexlongOrderLegsItem.stockLegId
or
OrderLegsItem.LegIdN
(where N is NoLegs #)
Unique indicator for specific leg
608LegCFICodeNstringUsed to construct child order seckeySuperseded by: SRLegSecType
609LegSecurityTypeNstringSuperseded by: SRLegSecType
600LegSymbolYstringUsed to construct child order seckey
611LegMaturityDateNLocalMktDateUsed to construct child order seckey
610LegMaturityMonthYearY*month-yearUsed to construct child order seckey*Required if LegMaturityDate is absent.
205MaturityDayY*day-of-monthUsed to construct child order seckey*Required if LegMaturityDate is absent.
612LegStrikePriceYfloatUsed to construct child order seckey
1358LegPutOrCallY*intUsed to construct child order seckey0 = Put, 1 = Call
*Required if LegCFICode is absent
601LegSymbolSfxNstringUsed to construct child order seckeyWI = “When Issued” for a security to be reissued under an old CUSIP or ISIN
CD = a EUCP with lump-sum interest rather than discount price
623LegRatioQtyNfloatOrderLegsItem.multN (where N is NoLegs #)
624LegSideYcharOrderLegsItem.sideN (where N is NoLegs #)1 = Buy
2 = Sell
5 = Sell Short
Y = Sell Short Auto
6 = Sell Short Exempt
564LegPositionEffectNcharOrderLegsItem.posTypeN (where N is NoLegs #)O = Open
C = Close
R = Rolled
F = FIFO
End of Leg Repeating Group
Any SR TagsN
Standard TrailerY

Common Extensions

TagField NameReq'dTypeAssociated Record Value
(SpdrParentOrder)
Comments
5020SRAccntNstringaccntSR account acronym. Must be configured prior to testing or trading
Supersedes Account
5022SRClientFirmNstringclientFirmSR client firm acronym, used in account lookup. Must be configured prior to testing or trading
5012SRAltAccntNstringaltAccntSR alternative account acronym.
Must be configured prior to testing or trading
5166SRFirmTypeNstringfirmTypeSupersedes CustomerOrFirm
5168SROrderCapacityNcharorderCapacityA = Agency
G = Prop
I = Individual
P = Principal
R = Riskless
W = AgentOtherMember
Will default to SR account configuration if not specified
Supersedes OrderCapacity
5016SRSecTypeNstringsecTypeSupersedes SecurityType
5015SRSecKeyNstringsecTypeSupersedes typical resolution
5040SROrderSideNcharorderSideSupersedes Side
5172SRShortSaleFlagNcharssaleFlag1 = Long
2 = Short
3 = Exempt
4 = Auto
5 = Open
6 = Close
8 = Cover
7 = NA
5042SROrderSizeNintorderSizeSupersedes OrderQty
5170SRPositionTypeNcharpositionTypeSupersedes PositionEffect
5700LocateBrokerNstringlocateFirmSuperseded by: SRLocateFirm
5221SRLocateFirmNstringlocateFirmSupersedes LocateBroker
5098SROrderLimitTypeNcharorderLimitTypeSupersedes OrdType
5106SROrderPrcLimitNfloatorderPrcLimitSupersedes Price
5089SRMarketSessionNstringorderDuration
parentOrderHandling
Supersedes TimeinForce
5088SRGoodTillDttmNUTCTimeStampgoodTillDttmSupersedes ExpireTime
5094SROrderHandlingNstringparentOrderHandlingSupersedes typical resolution
If failure to resolve, Default=DMA
5374SRClearingFlipAccountNstringclearingFlipAccnt (in child order)Supersedes ClearingAccount
5026SRClearingAccountNstringclearingAccnt (in child order)Supersedes ClearingAccount
5373SRClearingFlipFirmNstringclearingFlipFirm (in child order)Supersedes ClearingFirm
5375SRClearingFlipTypeNstringclearingFlipType (in child order)Examples:
BRKR
CMTA
GVUP
NSCC
DTCC
QSR
DVP
5360SRExDestinationNmultiple-value
string
exchMaskSupersedes ExDestination
Leg Repeating Group Tags
5305SRLegSecTypeNstringSupersedes LegCFICode, LegSecurityType
5304SRLegSecKeyNstringUsed to construct child order seckeySupersedes typical resolution
5303SRLegSideNstringOrderLegsItem.sideN (where N is NoLegs #)Supersedes LegSide
B = Buy
S = Sell
5307SRLegShortSaleFlagNcharOrderLegsItem.ssaleFlag1 = Long
2 = Short
3 = Exempt
4 = Auto
5 = Open
6 = Close
8 = Cover
7 = NA
5306SRLegPosEffectNstringOrderLegsItem.posTypeN (where N is NoLegs #)O = Open
C = Close
A = Auto
End of Leg Repeating Group Tags

Example - DMA

DMA orders are used to send a multi-leg order to a specified exchange or destination. This order type is appropriate when the client wishes to control where the order is traded. Note that DMA orders may interact with dark liquidity in the SpiderRock platform if configured to do so.

TagField NameReq'dTypeAssociated Record Value
(SpdrParentOrder)
Comments
Standard HeaderYMsgType = AB
Basic NewOrderMultileg FieldsSee "NewOrderMultileg" above
100ExDestinationYstringexchMaskSR Destination Code (see appendix) - Required for DMA style orders
Superceded by: SRExDestination
Standard TrailerY

Example - Smart/Sweep

Smart/Sweep orders are used to send an order without specifying a destination. SpiderRock will determine the optimal destination(s) for the order and will automatically sweep multiple destinations to maximize liquidity capture. This order type can optionally post any unfilled balance on an exchange.

TagField NameReq'dTypeAssociated Record Value
(SpdrParentOrder)
Comments
Standard HeaderYMsgType = AB
Basic NewOrderMultileg FieldsSee "NewOrderMultileg" above
Standard TrailerY

Example - Staged/WaitStart

The SRStartType<5090> tag is used to send staged/wait orders to SpiderRock. These orders will be sent to exchange as market orders once the client commands their release. Note that orders can be released in multiple ways: via SpiderRock GUI tools, via the SpiderRock SRSE/SQL API, and via a Listexecute<L> fix message. Staged orders will be acknowledged immediately; fills will only be reported after the order has been released.

TagField NameReq'dTypeAssociated Record Value
(SpdrParentOrder)
Comments
Standard HeaderYMsgType = AB
Any Combination of Basic or Complex NewOrderMultiLeg Fields
5086SRStageTypeYintspdrStageType1 = ModifyAny
2 = ModifyAlgo
5090SRStartTypeYintstartType2 = WaitTrigger (wait start)
Standard TrailerY

Example - Multileg Algorithm

SpiderRock Algorithmic orders express intent to interact with the market in a variety of ways. These parent orders can, and frequently do, result in multiple child orders being generated and routed to the exchange.

TagField NameReq'dTypeAssociated Record Value
(SpdrParentOrder)
Comments
Standard HeaderYMsgType = AB
Basic NewOrderMultileg Fields (See NewOrderMultileg above)
5036SRUsernameNstringaltUserNameClient defined username. - Used for customer service and futures compliance - If necessary, a default may be assigned to the FIX session (24 character max).
5055SRProgressExposeTimeNintprogressExposeTimeDefault = 0
5094SROrderHandlingYintorderHandlingPrimary order handling algorithm
8 = Legger
9 = Seeker
10 = SeekerLegger
20 = CobMaker
5096SRBalanceHandlingNintparentBalanceHandling0 = None (non-marketable balance will not be posted)
4 = PostLimit
5086SRStageTypeYintspdrStageType1 = ModifyAny
2 = ModifyAlgo
5090SRStartTypeNintstartType0 = Immediate
1 = WaitTrigger (wait for RiskGroup/Sweep trigger)
2 = Staged (wait for order to be modified/released)
5089SRMarketSessioncharmarketSession1 = Regular Market
2 = Pre-Market
3 = Post-Market
4 = Regular and Pre-Market
5 = Regular and Post-Market
6 = All Day
5086SROrderDurationintorderDurationOrder with SRMarketSession = GTD expires after working for this number of seconds 0/missing = ignore
5088SRGoodTillDttmutcDttmgoodTillDttmOrder with SRMarketSession = GTD expires at this time working for this number of seconds
5034SRStrategyNstringstrategyClient strategy label. Displayed on SR Order Manager
5360SRExDestinationstringexchMaskComma separated exchange list; default = all available exchanges
5046SRMaxExposureSizeintmaxExposureSizeMaximum simultaneous public exposure size across all exchanges
5048SRNumMakeExchangesintnumMakeExchangesNumber of public exposure exchanges
5050SRPublicSizeNcharpublicSize0 = None
1 = Randomize
2 = MktSize
3 = FullSize
4 = MktSizeA
5 = MktSizeB
6 = MktSizeC
7 = FullSizeR
5080SRMaxChildOrdersintmaxChildOrdersUpper bound for the number of child orders generated for this parent order
5054SRProgressRuleintprogressRule0 = Immediate (default)
1 = Twap
3 = TwapReset
5 = FastReset
6 = SlowReset
7 = TwapAlpha
progressRule 11 = SpdrPulse
5056progressSliceCntintprogressSliceCntNumber of slices to use (default = 4 or 8) [max 20]
5104SRTakeReachRuleinttakeReachRule0 = Immediate
1 = Delayed
2 = Passive
5098SROrderLimitTypestringorderLimitType0 = Market
1 = MarketArrival
2 = Prc
3 = PrcDe
4 = PrcDeX
6 = PrcDeP
8 = PrcDeXP
14 = RelMid
15 = RelJoin
16 = RelCross
5100SRTakeLimitClasschartakeLimitClass0 = Simple
1=Surface
Probability=2
SurfProb=3
5102SRMakeLimitClasscharmakeLimitClass0 = Simple
1=Surface
Probability=2
SurfProb=3
5106SROrderPrcLimitfloatorderPrcLimitApplies if SROrderLimitType<5098> = Prc
5108SROrderRefUPrcpriceorderRefUPrcdefault=underlier.mid
5110SROrderRefDeltafloatorderRefDeltaDefault=option.delta
5112SROrderRefGammafloatorderRefGammaDefault=option.gamma
5116SROrderVolLimitNfloatorderVolLimitOrder volatility limit - Valid range: [0.005, 9.000].
Required if SROrderLimitType<5098> is Vol, VolX, or VolPrc
Ignored if SROrderLimitType is Market
5126SROrderPrcOffsetfloatorderPrcOffsetDefault=0
5128SRTakeAlphaTypechartakeAlphaType1 = Static
2 = Hawk
3 = Eagle
4 = Falcon
5 = Relative
5130SRMakeAlphaTypecharmakeAlphaType1 = Static
2 = Hawk
3 = Eagle
4 = Falcon
5 = Relative
5132SRTakeAlphaFactorfloattakeAlphaFactor
5134SRMakeAlphaFactorfloatmakeAlphaFactor
5136SRTakeProbabilityfloattakeProbability
5138SRMakeProbabilityfloatmakeProbability
5202SRLeadSidecharleadSideSROrderHandling=Legger Only
1 = Buy
2 = Sell
5204SRMaxCompletionSlippagefloatmaxCompletionSlippageSROrderHandling=Legger Only
5206SROrderRefPremiumfloatorderRefPremiumReference premium (multileg orders only)
5290SRUserData1NstringuserData1User defined field (max 255 chars)
Can be returned on exec reports; forward to drop lines or forwarded to child orders
Please advise SpiderRock support staff of intended behavior.
5291SRUserData2NstringuserData2User defined field (max 255 chars)
Can be returned on exec reports; forward to drop lines or forwarded to child orders
Please advise SpiderRock support staff of intended behavior.
Standard TrailerY

Example - Legger

Legger orders allow SpiderRock to determine optimal destination(s) for the order. SpiderRock will automatically sweep multiple destinations to maximize the order's liquidity capturer. Any unfilled balance can optionally be posted to exchange.

TagField NameReq'dTypeAssociated Record Value
(SpdrParentOrder)
Comments
Basic NewOrderMultileg Fields (See NewOrderMultileg above)
5094SROrderHandlingYintorderHandlingPrimary order handling algorithm
8 = Legger
5096SRBalanceHandlingNintparentBalanceHandling0 = None (non-marketable balance will not be posted)
4 = PostLimit
5202SRLeadSideNcharleadSideLegger Only
1 = Buy
2 = Sell
5204SRMaxCompletionSlippageNfloatmaxCompletionSlippageLegger Only
Standard TrailerY

MultilegCancelReplace (Client to SpiderRock)

The MultilegCancelReplace<AC> request is used to change the parameters of an existing New Order Single.

An ExecutionReport<8> with ExecType<150>=Pending Replace will be sent unless the MultilegCancelReplace<AC> can immediately be accepted (ExecutionReport<8> with ExecType<150>=Replaced) or rejected (OrderCancelReject<9> message).

An MultilegCancelReplace<AC> request will only be accepted if any associated child orders can successfully be cancelled. Requests that cannot be processed will be rejected with a CancelReject<3> message.

In addition to standard FIX tags, SpiderRock uses custom FIX tags (5,000+) for SpiderRock specific parameters. More information about the SpiderRock tags can be found in the SpiderRock Tag Appendix below.

Basic Version

TagField NameReq'dTypeAssociated Record Value
(SpdrParentOrder)
Comments
Standard HeaderYMsgType = AC
11ClOrdIdYstringaltOrderIdClient order ID of the cancel request (24 character max)
41OrigClOrdIdYstringaltPrevOrderIdClient order ID of the original order that is requested to be canceled (24 character max)
1AccountYstringaccntSR account acronym. Must be configured prior to testing or trading
Superseded by SRAccnt
38OrderQtyYintorderSizeExecutable quantity
Superseded by: SRORderSize
54SideYcharorderSide
ssaleFlag
1 = 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).
OrderSide superseded by: SROrderSide
SsaleFlag superseded by: SRShortSaleFlag
40OrdTypeNcharorderLimitType1 = Market
2 = Limit
5 = Market on Close
B = Limit on Close
Required for DMA and Smart/Sweep style orders. Not required for more complex order types. If necessary, use Market as the order type when submitting orders with more complex behavior.
Superseded by: SROrderLimitType
Default=Price
44PriceNfloatorderPrcLimitRequired for limit order types
Superseded by: SROrderPrcLimit
59TimeInForceNstringorderDuration
parentOrderHandling
0 = Day
2 = Opening
3 = Immediate or Cancel (IOC)
6 = Good Till Date/Time (or Duration)
7 = Closing
OrderDuration Superseded by: SRMarketSession
126ExpireTimeNUTCTimeStampgoodTillDttmSuperseded by: SRGoodTillDttm
52SendingTimeNUTCTimeStampTime of message transmission
always expressed in UTC (Universal Time Coordinated, also known as “GMT”)
60TransactTimeYutcDttmorderDttmTime this order request was initiated/released. Formatted as: YYYYMMDD-HH:MM:SS.fff
Note: this order must arrive at SpiderRock within 15 seconds of the TransactTime to be considered a valid order.
440ClearingAccountNstringclearingAccnt (in child order)Superseded by SRClearingFlipAccount, then SRClearingAccnt
439ClearingFirmNstringclearingFirm (in child order)Superseded by: SRClearingFlipFirm
100ExDestinationNmultiple-value
string
exchMaskSR Destination Code (see appendix)
Required for DMA style orders
Superseded by: SRExDestination
Leg Repeating Group
654LegRefIdNhexlongOrderLegsItem.stockLegId
or
OrderLegsItem.LegIdN
(where N is NoLegs #)
Unique indicator for specific leg
608LegCFICodeNstringUsed to construct child order seckeySuperseded by: SRLegSecType
609LegSecurityTypeNstringSuperseded by: SRLegSecType
600LegSymbolYstringUsed to construct child order seckey
611LegMaturityDateNLocalMktDateUsed to construct child order seckey
610LegMaturityMonthYearY*month-yearUsed to construct child order seckey*Required if LegMaturityDate is absent.
205MaturityDayY*day-of-monthUsed to construct child order seckey*Required if LegMaturityDate is absent.
612LegStrikePriceYfloatUsed to construct child order seckey
1358LegPutOrCallY*intUsed to construct child order seckey0 = Put, 1 = Call
*Required if LegCFICode is absent
601LegSymbolSfxNstringUsed to construct child order seckeyWI = “When Issued” for a security to be reissued under an old CUSIP or ISIN
CD = a EUCP with lump-sum interest rather than discount price
623LegRatioQtyNfloatOrderLegsItem.multN (where N is NoLegs #)
624LegSideYcharOrderLegsItem.sideN (where N is NoLegs #)1 = Buy
2 = Sell
5 = Sell Short
Y = Sell Short Auto
6 = Sell Short Exempt
564LegPositionEffectNcharOrderLegsItem.posTypeN (where N is NoLegs #)O = Open
C = Close
R = Rolled
F = FIFO
End of Leg Repeating Group
Any SR TagsN
Standard TrailerY

Common Extensions

TagField NameReq'dTypeAssociated Record Value
(SpdrParentOrder)
Comments
5020SRAccntNstringaccntSR account acronym. Must be configured prior to testing or trading
Supersedes Account
5022SRClientFirmNstringclientFirmSR client firm acronym, used in account lookup. Must be configured prior to testing or trading
5012SRAltAccntNstringaltAccntSR alternative account acronym.
Must be configured prior to testing or trading
5042SROrderSizeNintorderSizeSupersedes OrderQty
5040SROrderSideNcharorderSideSupersedes Side
5098SROrderLimitTypeNcharorderLimitTypeSupersedes OrdType
5106SROrderPrcLimitNfloatorderPrcLimitSupersedes Price
5089SRMarketSessionNstringorderDuration
parentOrderHandling
Supersedes TimeinForce
5088SRGoodTillDttmNUTCTimeStampgoodTillDttmSupersedes ExpireTime
5094SROrderHandlingNstringparentOrderHandlingSupersedes typical resolution
If failure to resolve, Default=DMA
5374SRClearingFlipAccountNstringclearingFlipAccnt (in child order)Supersedes ClearingAccount
5026SRClearingAccountNstringclearingAccnt (in child order)Supersedes ClearingAccount
5373SRClearingFlipFirmNstringclearingFlipFirm (in child order)Supersedes ClearingFirm
5375SRClearingFlipTypeNstringclearingFlipType (in child order)Examples:
BRKR
CMTA
GVUP
NSCC
DTCC
QSR
DVP
5360SRExDestinationNmultiple-value
string
exchMaskSupersedes ExDestination
Leg Repeating Group Tags
5305SRLegSecTypeNstringSupersedes LegCFICode, LegSecurityType
5304SRLegSecKeyNstringUsed to construct child order seckeySupersedes typical resolution
5303SRLegSideNstringOrderLegsItem.sideN (where N is NoLegs #)Supersedes LegSide
B = Buy
S = Sell
5307SRLegShortSaleFlagNcharOrderLegsItem.ssaleFlag1 = Long
2 = Short
3 = Exempt
4 = Auto
5 = Open
6 = Close
8 = Cover
7 = NA
5306SRLegPosEffectNstringOrderLegsItem.posTypeN (where N is NoLegs #)O = Open
C = Close
A = Auto
End of Leg Repeating Group Tags

ExecutionReport (SpiderRock to Client)

SpiderRock natively follows FIX 4.4 rules for ExecutionReport handling but can switch to FIX 4.2 on request. In addition to standard FIX tags, SpiderRock uses custom FIX tags (5,000+) for SpiderRock specific parameters. More information about the SpiderRock tags can be found in the SpiderRock Tag Appendix below.

TagField NameReq'dTypeAssociated Record Value
SpdrParentReport (r)
SpdrParentExecution (x)
Comments
Standard HeaderYMsgType = 8
115OnBehalfOfCompIDNstringexecBrkrClFirm (x)client/firm at executing broker
116OnBehalfOfSubIDNstringexecBrkrUserName (x)userName at executing broker
11ClOrdIDYstringparentNumber (x)See Also: SRBaseParentNumber
1AccountYstringaccnt (r)
execBrkrAccnt (x)
20ExecTransTypeYintexecStatus (x)0 = New
1 = Cancel
2 = Correct
3 = Status
150ExecTypeYcharexecStatus (x)0 = New
1 = Partial fill (Replaced)
2 = Fill (Replaced)
3 = Done for day
4 = Canceled
5 = Replace
6 = Pending Cancel (e.g. result of Order Cancel Request)
7 = Stopped
8 = Rejected
9 = Suspended
A = Pending New
B = Calculated
C = Expired
D = Restated (ExecutionRpt sent unsolicited by sellside, with ExecRestatementReason (378) set)
E = Pending Replace (e.g. result of Order Cancel/Replace Request)
F = Trade (partial fill or fill)
G = Trade Correct (formerly an ExecTransType (20))
H = Trade Cancel (formerly an ExecTransType)
I = Order Status (formerly an ExecTransType)
39OrdStatusYcharspdrOrderStatus (r)
fillQuantity (r)
execType (r)
0 = New
1 = Partially filled
2 = Filled
3 = Done for day
4 = Canceled
5 = Replaced (Removed/Replaced)
6 = Pending Cancel (e.g. result of Order Cancel Request)
7 = Stopped
8 = Rejected
9 = Suspended
A = Pending New
B = Calculated
C = Expired
D = Accepted for bidding
E = Pending Replace (e.g. result of Order Cancel/Replace Request)
41OrigClOrdIDNstringprevParentNumber (r)Conditionally required for response to a Cancel or Cancel/Replace request - (ExecType=PendingCancel, Replaced, or Canceled)
37OrderIDYhexlongbaseParentNumber (r)Unique ID for order chain assigned by SpiderRock
54SideYcharorderSide (x)
ssaleFlag (x)
Value from executing venue - Value may differ from client's order if execution order is sold short.
1 = Buy
2 = Sell
3 = Buy minus
4 = Sell plus
5 = Sell short
6 = Sell short exempt
7 = Undisclosed (valid for IOI and List Order messages only)
8 = Cross (orders where counterparty is an exchange, valid for all messages except IOIs)
9 = Cross short
A = Cross short exempt
B = “As Defined” (for use with multileg instruments)
C = “Opposite” (for use with multileg instruments)
D = Subscribe (e.g. CIV)
E = Redeem (e.g. CIV)
F = Lend (FINANCING - identifies direction of collateral)
G = Borrow (FINANCING - identifies direction of collateral)
38OrderQtyYintorderSize (x)parent order size
40OrdTypeYcharparentOrderHandling (r)
limitPrice (r)
orderLimitType (r)
1 = Market
2 = Limit
3 = Stop
4 = Stop limit
5 = Market on close (No longer used)
6 = With or without
7 = Limit or better (Deprecated)
8 = Limit with or without
9 = On basis
A = On close (No longer used)
B = Limit on close (No longer used)
C = Forex - Market (No longer used)
D = Previously quoted
E = Previously indicated
F = Forex - Limit (No longer used)
G = Forex - Swap
H = Forex - Previously Quoted (No longer used)
I = Funari (Limit Day Order with unexecuted portion handled as Market On Close. E.g. Japan)
J = Market If Touched (MIT)
K = Market with Leftover as Limit (market order then unexecuted quantity becomes limit order at last price)
L = Previous Fund Valuation Point (Historic pricing) (for CIV)
M = Next Fund Valuation Point –(Forward pricing) (for CIV)
P = Pegged
528OrderCapacityNcharorderCapacity (r)1 = Program Trade
2 = Index Arbitrage
3 = Non-Index Arbitrage
4 = Competing Market Maker
5 = Acting as Market Maker or Specialist in the security
6 = Acting as Market Maker or Specialist in the underlying security of a derivative security
7 = Foreign Entity (of foreign government or regulatory jurisdiction)
8 = External Market Participant
9 = External Inter-connected Market Linkage
A = Riskless Arbitrage
44PriceNfloatlimitPrice (r)Value from client's order
59TimeInForceNstringorderDuration (r)
parentOrderHandling (r)
0 = Day (or session)
1 = Good Till Cancel (GTC)
2 = At the Opening (OPG)
3 = Immediate or Cancel (IOC)
4 = Fill or Kill (FOK)
5 = Good Till Crossing (GTX)
6 = Good Till Date
7 = At the Close
Symbology
55SymbolYstringsecKey (x)Value from client's order
65SymbolSfxNstringsecKey (x)Value from client's order
167SecurityTypeNstringsecKey (x)MLEG = Multileg
CS = Common Stock
FUT = Future
OPT = Option
541MaturityDateNstringsecKey (x)Value from client's order YYYYMMDD
200MaturityMonthYearNstringsecKey (x)Value from client's order YYYYMM
205MaturityDayNintsecKey (x)Value from client's order 1-31
202StrikePriceNpricesecKey (x)Value from client's order
201PutOrCallNintsecKey (x)Value from client's order
0 = Put
1 = Call
100ExDestinationNstringchildExDest (r)Child order exchange destination
204CustomerOrFirmNcharfirmType (r)Child order firm type
0 = Customer
1 = Firm
2 = Broker / Dealer
3 = Broker Dealer Customer
4 = Market Maker
5 = Non-Member Market Maker
8 = Customer Professional
J =Fim JBO
77PositionEffectNstringpositionType (x)Parent order position type
O = Open
C = Close
R = Rolled
F = FIFO
439ClearingFirmNstringclearingFirm (x)Clearing firm
440ClearingAccountNstringclearingAccnt (x)Clearing firm account
19ExecRefIDNstringReference identifier used with Trade Cancel and Trade Correct execution types.
17ExecIDYstringUnique ID assigned by SpiderRock
654LegRefIDNstringlegRefId (x)Used to identify a specific leg for multileg order execution reports
6AvgPxYfloatsumFillMoney (x)
sumFillQty (x)
Execution price
14CumQtyYintsumFillQty (x)
151LeavesQtyYintorderSize(x)
sumFillQty (x)
0 if order is not active
31LastPxYfloatfillPrice (x)
32LastQtyYintfillQuantity (x)
30LastMktNstringfillMarket (x)
childExDest (x)
Value from executing venue
29LastCapacityNstringlastCapacity (x)Child order capacity
1 = Agent
2 = Cross as agent
3 = Cross as principal
4 = Principal
58TextNstringspdrCloseReason (r), orderClosedText (r)
60TransactTimeYutcDttmfillTransactDttm (x)
timestamp (r)
Time of execution/order creation (expressed in UTC)
75TradeDateNutcDttmsecKey (x)
fill.fillDttm (x)
Indicates date of trade referenced in this message in YYYYMMDD format. Absence of this field indicates current day (expressed in local time at place of trade)
76ExecBrokerNstringextExecBroker (r)Child executing venue
5607SRStreetExecIDNstringfillExecId (x)Street side execution ID
5608SRStreetExecRefIDNstringfillExecRefId (x)Street side execution ref Id
442MultiLegReportingTypeNcharparentShape (r)Used to indicate what an Execution Report represents (e.g. used with multi-leg securities, such as option strategies, spreads, etc.).
5602SRFillNumberNhexlongfillNumber (x)SpiderRock execution number
5611SRExchLiqTagNstringexchLiquidityTag (x)Exchange supplied liquidity code
5610SRLiquidityTagNstringspdrLiquidityTag (x)SpiderRock normalized venue liquidity tag
5619SRExchFeeEstNfloatfillExchFee (x)SpiderRock estimate of the exchange fee based on liquidity tags (best effort)
5618SRBillingRateNfloatfillBrkrRate (x)
fillRoutingRate (x)
Billing brokerage + Routing rate
5360SRExDestinationNstringchildExDest (x)Child order exchange destination
5627SRChildShortSaleFlagNstringchildSSaleFlag (x)
5625SRChildPositionTypeNstringchildPosType (x)Child order position type
5631SRStreetRouteNstringroutingCode (x)SpiderRock market routing code
5038SROrderDttmNutcDttmorderDttm (r)
5012SRAltAccntNstringaltAccnt (r)Client assigned account
5014SRAltUserNameNstringaltUserName (r)Client assigned user name
5034SRStrategyNstringparentStrategy (r)Client assigned strategy name
5009SRSpdrSourceNstringspdrSource (r)Source of this order (FIX, SRSE, HedgeTool, etc)
5000SRParentNumberNhexlongparentNumber (r)SpiderRock order id. See Also SRBaseParentNumber
5004SRBaseParentNumberNhexlongbaseParentNumber (r)Unique ID for order chain assigned by SpiderRock
See Also SRParentNumber
5290SRUserData1NstringuserData1 (r)Client supplied data field
5291SRUserData2NstringuserData2 (r)Client supplied data field
5088SRGoodTillDttmNdatetimegoodTillDttm (r)
Standard TrailerY

OrderCancelRequest (Client to SpiderRock)

An OrderCancelRequest<F> message requests the cancelation of all the remaining quantity of an order. The request will only be accepted if the order can be successfully pulled back from a downstream exchange, broker, or equivalent destination.

TagField NameReq'dTypeAssociated Record Value
(SpdrParentReport)
Comments
Standard HeaderYMsgType = F
1AccountYstringaccntSR account acronym. Must be configured prior to testing or trading
Superseded by SRAccnt
11ClOrdIdYstringaltOrderIdClient order ID of the cancel request (24 character max)
41OrigClOrdIDYstringaltPrevOrderIdClient order ID of the original order that is requested to be canceled (24 character max)
52SendingTimeNUTCTimeStampTime of message transmission
always expressed in UTC (Universal Time Coordinated, also known as “GMT”)
60TransactTimeYutcDttmorderDttmTime this order request was initiated/released. Formatted as: YYYYMMDD-HH:MM:SS.fff
Note: this order must arrive at SpiderRock within 15 seconds of the TransactTime to be considered a valid order.
Any SR TagsN
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'dTypeAssociated Record Value
(SpdrParentReport)
Comments
Standard HeaderYMsgType = 9
5520SROrderClassNstringValid values:
P = Parent
C = Child
R = RiskDrop
5340SROrderShapeNstringparentShape0 = Single
1 = Cross
2 = MLeg
3 = MLegCross
5009SRSpdrSourceNstringspdrSourceParent order source
5341SRHasStockLegNstringY = Yes
N = No
11ClOrdIdYhexlongpkey.parentNumber + ":CXL"Client order ID of the cancel request (24 character max)
41OrigClOrdIDYhexlongpkey.parentNumberClient order ID of the original order that is requested to be canceled (24 character max)
434CxlRejResponseToYcharValid values:
1 = OrderCancelRequest <F>
2 = OrderCancel/Replace Request <G>
102CxlRejReasonNint0 = TooLateToCancel
1 = UnknownOrder
2 = BrokerOption
3 = OrderAlreadyInPendingStatus
4 = UnableToProcessOrderMassCancelRequest
5 = DidNotMatchLastTransactTime
6 = DuplicateClOrdIdReceived
99 = Other
5000SRParentNumberNhexlongpkey.parentNumber
5004SRBaseParentNumberNhexlongpkey.baseParentNumber
5250SRRiskGroupIdNhexlongriskGroupId
37OrderIDYhexlongbaseParentNumberUnique ID for order chain assigned by SpiderRock
5020SRAccntNstringaccntSR account acronym.
39OrdStatusYcharspdrOrderStatus (r)
fillQuantity (r)
execType (r)
0 = New
1 = Partially filled
2 = Filled
3 = Done for day
4 = Canceled
5 = Replaced (Removed/Replaced)
6 = Pending Cancel (e.g. result of Order Cancel Request)
7 = Stopped
8 = Rejected
9 = Suspended
A = Pending New
B = Calculated
C = Expired
D = Accepted for bidding
E = Pending Replace (e.g. result of Order Cancel/Replace Request)
60TransactTimeYutcDttmorderDttmTime this order request was initiated/released. Formatted as: YYYYMMDD-HH:MM:SS.fff
58TextNstringorderClosedText

SpiderRock Tags Appendix

In addition to standard FIX fields, SpiderRock uses custom FIX tags with tag numbers in the range 5,000-5,999 for SpiderRock specific parameters.

TagField NameTypeEnums
5000SRParentNumberhexlong
5002SRPrevParentNumberhexlong
5004SRBaseParentNumberhexlong
5005SRParent390Numberlong
5006SRAltOrderIdstring
5007SRAltPrevOrderIdstring
5008SRGroupingCodehexlong
5009SRSpdrSourcestring
5010SRAltAutoHedgeIdstring
5011SRPackageIdlong
5012SRAltAccntstring
5014SRAltUserNamestring
5015SRSecKeystring
5016SRSecTypestringValid values:
1 = Stock
2 = Future
3 = Option
4 = MLeg
5017SRAssetTypestring
5018SRTickerSrcstring
5019SRSecurityDescstring
5020SRAccntstring
5022SRClientFirmstring
5023SRClientAccntstring
5024SRClearingFirmstring
5026SRClearingAccntstring
5027SRStrategyAccntstring
5028SRAccountRouteCodestring
5030SRExternExDeststring
5032SRExternParamsstring
5034SRStrategystring
5036SRUsernamestring
5037SROrderCreateTimestampdatetime
5038SROrderDttmdatetime
5039SRUSecDescstring
5040SROrderSidestringValid values:
B = Buy
S = Sell
5041SROrderStatusstringValid values:
0 = New
1 = PartialFill
2 = Filled
3 = DoneForDay
4 = Canceled
5 = Replaced
6 = PendingCxl
7 = Stopped
8 = Rejected
9 = Suspended
A = PendingNew
B = Calculated
C = Expired
D = Accepted
E = PendingRpl
G = CmeTradeCorrect
H = CmeTradeCxl
Y = PendingCls
Z = Closed
T = PendingTrg
5042SROrderSizeint
5044SROrderActiveSizeint
5046SRMaxExposureSizeint
5048SRNumMakeExchangesint
5050SRPublicSizestringValid values:
0 = None
1 = Randomize
2 = MktSize
3 = FullSize
4 = MktSizeA
5 = MktSizeB
6 = MktSizeC
7 = FullSizeR
8 = Max25Pct
9 = Max50Pct
10 = Max75Pct
11 = NoSize
5052SRCanCxlOverlapstringValid values:
Y = Yes
N = No
5054SRProgressRulestringValid values:
0 = None
1 = Twap
2 = Vwap
3 = TwapReset
4 = VwapReset
5 = FastReset
6 = SlowReset
7 = TwapAlpha
8 = VwapAlpha
9 = TwapAlphaC
10 = VwapAlphaC
11 = AutoComplete
12 = AllowImmediate
13 = Manual
14 = SpdrPulse
I = IOC
16 = FlashMakeTake
5055SRProgressExposeTimeint
5056SRProgressSliceCntint
5057SRCloseReasonint
5058SRVwapParticipationfloat
5060SRAuctionResponderstringValid values:
ANY = Any
5062SRMaxTakeExchFeefloat
5064SRMaxMakeExchFeefloat
5066SRIncTakeExchFeestringValid values:
1 = ExclFee
2 = IncFee
5068SRIncMakeExchFeestringValid values:
1 = ExclFee
2 = IncFee
5070SRMakeExchRulestringValid values:
1 = MaxPart
2 = FeeOptimal
3 = ImprvOnly
4 = FeeStrict
5072SRCxlUPrcRangestringValid values:
Y = Yes
N = No
5074SRMinUBidfloat
5076SRMaxUAskfloat
5078SRMinOptionPxfloat
5080SRMaxChildOrdersint
5081SRStageReviewstringValid values:
Y = Yes
N = No
5083SRStageTypestringValid values:
1 = ModifyAny
2 = ModifyAlgo
5085SRStartDttmdatetime
5086SROrderDurationint
5088SRGoodTillDttmdatetime
5089SRMarketSessionstringValid values:
1 = RegMkt
2 = PreMkt
3 = PostMkt
4 = PreRegMkt
5 = RegPostMkt
6 = AllDay
5090SRStartTypestringValid values:
1 = WaitTrigger
2 = TriggerAll
5092SRProgressTimeoutint
5094SROrderHandlingstringValid values:
1 = ActiveTaker
2 = PostOnly
3 = DMA
4 = MktOnOpn
5 = MktOnCls
8 = Legger
9 = Seeker
10 = SeekerLegger
11 = CrossResponse
12 = AuctionResponse
13 = AwayAlgo
14 = ExchPing
19 = SweepTake
20 = CobMaker
21 = TestParent
22 = BlockAuction
23 = BlockResponse
24 = Matrix
25 = FlashAuction
5096SRBalanceHandlingstringValid values:
1 = PostWith
2 = PostTurn
3 = PostImprove
4 = PostLimit
6 = MaxIntern
7 = PostWthF
8 = PostImprvR
9 = PostFlash
10 = PostFlashW
11 = PostPeg
12 = PostFlashI
5097SRAlgoTemplatestring
5098SROrderLimitTypestringValid values:
0 = Market
1 = MarketArrival
2 = Prc
3 = PrcDe
4 = PrcDeX
5 = PrcDeT
6 = PrcDeP
7 = PrcDeXT
8 = PrcDeXP
9 = Vol
10 = VolX
11 = PrcV
12 = PrcVX
13 = VolPrc
14 = RelMid
15 = RelJoin
16 = RelCross
17 = SmrtFast
18 = SmrtNorm
19 = RelTurn
5100SRTakeLimitClassstringValid values:
0 = Simple
1 = Surface
2 = Probability
3 = SurfProb
5102SRMakeLimitClassstringValid values:
0 = Simple
1 = Surface
2 = Probability
3 = SurfProb
5103SRIncludeSRNetworkstringValid values:
0 = None
1 = Include
2 = Exclude
3 = Disclose
5104SRTakeReachRulestringValid values:
0 = None
1 = Delayed
2 = Passive
3 = WeakOnly
4 = RespondOnly
5 = FullSize
6 = ISOSweep
7 = AllOrNone
8 = QtyOrMore
9 = UpToQty
10 = AtMost25
11 = AtMost50
12 = MinTakeFee
5106SROrderPrcLimitprice
5107SROrderRefUBidprice
5108SROrderRefUPrcprice
5109SROrderRefUAskprice
5110SROrderRefDeltafloat
5112SROrderRefGammafloat
5114SROrderRefThetafloat
5116SROrderVolLimitfloat
5117SROrderParentLmtPrcprice
5118SRRateOverridefloat
5120SRSDivOverridefloat
5122SRDDivOverridestring
5124SROverrideCodestringValid values:
0 = None
S = SDivOnly
D = DDivOnly
B = Both
5126SROrderPrcOffsetprice
5128SRTakeAlphaTypestringValid values:
0 = None
1 = Static
2 = Hawk
3 = Eagle
4 = Falcon
5 = Relative
5130SRMakeAlphaTypestringValid values:
0 = None
1 = Static
2 = Hawk
3 = Eagle
4 = Falcon
5 = Relative
5132SRTakeAlphaFactorfloat
5134SRMakeAlphaFactorfloat
5136SRTakeProbabilityfloat
5138SRMakeProbabilityfloat
5140SRTakeSurfPrcOffsetfloat
5142SRTakeSurfVolOffsetfloat
5144SRMakeSurfPrcOffsetfloat
5146SRMakeSurfVolOffsetfloat
5148SROrderRefEventMultfloat
5150SROrderRefEventDttmdatetime
5152SRAutoHedgestringValid values:
N = NoHedge
X = FastCrx
Y = FastDark
Z = SlowDark
F = AutoCrx
S = AutoTrn
M = AutoMid
A = SpdrAuto
1 = Spdr10S
3 = Spdr30S
9 = Spdr90S
5 = Spdr5M
H = Spdr30M
D = SpdrDay
12 = SmartFast
13 = SmartNorm
V1 = AlphaVwap1pct
V2 = AlphaVwap2pct
V5 = AlphaVwap5pct
V25 = AlphaVwap25pct
T = Static
21 = Custom
22 = AwayAlgo
5154SRHedgeInstrumentstringValid values:
0 = Default
1 = FrontMonth
2 = FutUnderlier
3 = Stock
4 = Future
5 = DirectStock
6 = DirectFuture
7 = GroupStock
8 = GroupFuture
9 = StkUnderlier
5156SRHedgeFKeystring
5158SRHedgeRatiofloat
5160SRHedgeSessionstringValid values:
1 = RegMkt
2 = PreMkt
3 = PostMkt
4 = PreRegMkt
5 = RegPostMkt
6 = AllDay
5162SRExternHedgeExDeststring
5164SRExternHedgeParamsstring
5166SRFirmTypestringValid values:
C = Customer
F = Firm
MM = MarketMaker
PC = ProCustomer
BD = BrokerDealer
AwayMM = AwayMM
JBO = FirmJBO
BDC = BrkrDlrCust
5167SRFutCustTypestringValid values:
I = Individual
PR = Proprietary
OM = OtherMember
NM = NonMember
5168SROrderCapacitystringValid values:
A = Agency
P = Principal
I = Individual
PR = Proprietary
AOM = AgentOtherMember
5169SRFutClearingRangestringValid values:
0 = Customer
1 = Firm
5170SRPositionTypestringValid values:
1 = NA
2 = Short
3 = Long
4 = Exempt
5 = Open
6 = Close
7 = Auto
5172SRShortSaleFlagstringValid values:
1 = Long
2 = Short
3 = Exempt
4 = Auto
5 = Open
6 = Close
8 = Cover
7 = NA
5173SRArrivalSSaleFlagstringValid values:
1 = Long
2 = Short
3 = Exempt
4 = Auto
5 = Open
6 = Close
8 = Cover
7 = NA
5174SRNoCrossGroupstring
5175SRArrivalFirmPosint
5176SRExchTraderIdstring
5177SRExchBadgeIdstring
5178SRLargeTraderIdstring
5180SRTradingLocationstring
5182SRRefRMetric1SrcstringValid values:
1 = User
2 = Vega
3 = WVega
4 = WTVega
5 = TVega
6 = Theta
7 = DTheta
8 = Gamma
9 = DGamma
10 = DDeltaIvS
5184SRRefRMetric2SrcstringValid values:
1 = User
2 = Vega
3 = WVega
4 = WTVega
5 = TVega
6 = Theta
7 = DTheta
8 = Gamma
9 = DGamma
10 = DDeltaIvS
5186SRRefRMetric3SrcstringValid values:
1 = User
2 = Vega
3 = WVega
4 = WTVega
5 = TVega
6 = Theta
7 = DTheta
8 = Gamma
9 = DGamma
10 = DDeltaIvS
5188SRRefRMetric4SrcstringValid values:
1 = User
2 = Vega
3 = WVega
4 = WTVega
5 = TVega
6 = Theta
7 = DTheta
8 = Gamma
9 = DGamma
10 = DDeltaIvS
5190SRRefRMetric5SrcstringValid values:
1 = User
2 = Vega
3 = WVega
4 = WTVega
5 = TVega
6 = Theta
7 = DTheta
8 = Gamma
9 = DGamma
10 = DDeltaIvS
5192SROrderRefRMetric1float
5194SROrderRefRMetric2float
5196SROrderRefRMetric3float
5198SROrderRefRMetric4float
5200SROrderRefRMetric5float
5202SRLeadSidestringValid values:
B = Buy
S = Sell
5204SRMaxCompletionSlippageprice
5206SROrderRefPremiumfloat
5208SRCrossNoticeIdhexlong
5210SRTheoVolfloat
5212SROrderRefRMetric6float
5213SRRefRMetric6SrcstringValid values:
1 = User
2 = Vega
3 = WVega
4 = WTVega
5 = TVega
6 = Theta
7 = DTheta
8 = Gamma
9 = DGamma
10 = DDeltaIvS
5214SRMaxExpDayRMetric6Lnfloat
5215SRMaxExpDayRMetric6Shfloat
5220SRLocatePoolstring
5221SRLocateFirmstring
5222SRLocateQuanint
5223SRLocateIDstring
5224SRFirmPositionint
5228SRMakeSurfWidthOffsetfloat
5229SRTakeSurfWidthOffsetfloat
5230SRStockLegGiveupstring
5232SRRiskResetTypestringValid values:
1 = RoutingCode
2 = Accnt
3 = ClientFirm
4 = Symbol
5233SRRiskResetValuestring
5235SRRefRMetric7SrcstringValid values:
1 = User
2 = Vega
3 = WVega
4 = WTVega
5 = TVega
6 = Theta
7 = DTheta
8 = Gamma
9 = DGamma
10 = DDeltaIvS
5236SROrderRefRMetric7float
5237SRMaxSymDayRMetric7Lnfloat
5238SRMaxSymDayRMetric7Shfloat
5239SRSymDayRMetric7Offsetfloat
5240SRRequestTypestringValid values:
1 = RFQ
2 = BlockAuction
5241SRRequestStatestringValid values:
1 = Start
2 = Update
5242SRQtyConditionsstringValid values:
0 = None
1 = UpToQty
2 = QtyOrMore
5244SRMinResponseQtyint
5246SRIndicatedPriceprice
5247SRPriceTypestringValid values:
1 = Static
2 = DeltaAdjusted
5248SRNbboCapModstringValid values:
0 = None
1 = NoCap
2 = Nbbo
3 = Penny
4 = FivePennies
5 = TenPennies
5250SRRiskGroupIdhexlong
5255SRMaxExpDayWtVegaLnfloat
5256SRMaxExpDayWtVegaShfloat
5257SRMaxSymDayWtVegaLnfloat
5258SRMaxSymDayWtVegaShfloat
5259SRMaxSymDayDDeltaLnfloat
5260SRMaxSymDayDDeltaShfloat
5261SRMaxGrpDayDDeltaLnfloat
5262SRMaxGrpDayDDeltaShfloat
5264SRMaxGrpDayVegaLnfloat
5265SRMaxGrpDayVegaShfloat
5266SRMaxGrpDayVegaAbsfloat
5267SRGrpDayVegaRatiofloat
5272SRMaxGrpDayRMetric1Lnfloat
5273SRMaxGrpDayRMetric1Shfloat
5274SRMaxGrpDayRMetric1Absfloat
5275SRGrpDayRMetric1Ratiofloat
5276SRMaxGrpDayRMetric2Lnfloat
5277SRMaxGrpDayRMetric2Shfloat
5278SRMaxGrpDayRMetric3Lnfloat
5279SRMaxGrpDayRMetric3Shfloat
5280SRMaxGrpDayRMetric4Lnfloat
5281SRMaxGrpDayRMetric4Shfloat
5282SRMaxGrpDayRMetric5Lnfloat
5283SRMaxGrpDayRMetric5Shfloat
5284SRMaxGrpDayContractsLnint
5285SRMaxGrpDayContractsShint
5286SRMaxGrpDayContractsAbsint
5287SRMaxSymDayVegaLnfloat
5288SRMaxSymDayVegaShfloat
5290SRUserData1string
5291SRUserData2string
5292SRDropData1string
5293SRDropData2string
5295SRChildDatastring
5296SRChildOrderPricefloat
5297SRChildOrderSizeint
5298SRChildOrderIdstring
5300SRLegIdlong
5301SRLegAltIdstring
5302SRLegIndexlong
5303SRLegSidestringValid values:
B = Buy
S = Sell
5304SRLegSecKeystring
5305SRLegSecTypestring
5306SRLegPosEffectstringValid values:
O = OPEN
C = CLOSE
A = AUTO
5307SRLegShortSaleFlagstringValid values:
1 = Long
2 = Short
3 = Exempt
4 = Auto
5 = Open
6 = Close
8 = Cover
7 = NA
5310SRLegPosEffectFacestringValid values:
O = OPEN
C = CLOSE
A = AUTO
5311SRLegShortSaleFlagFacestringValid values:
1 = Long
2 = Short
3 = Exempt
4 = Auto
5 = Open
6 = Close
8 = Cover
7 = NA
5314SRLegProductGroupstring
5315SRLegIdReviewstring
5316SRLegAltIdReviewstring
5320SRAccEmaCxlDDeltaLnfloat
5321SRAccEmaCxlDDeltaShfloat
5322SRAccEmaCxlWtVegaLnfloat
5323SRAccEmaCxlWtVegaShfloat
5340SROrderShapestring0 = Single
1 = Cross
2 = MLeg
3 = MLegCross
5341SRHasStockLegstring
5342SRExecShapestring
5343SRWaitTriggerIdlong
5344SRWaitTriggerCountint
5345SRWaitTriggerStripestring
5346SRWaitTriggerTimestamplong
5347SRQueueTriggerTimestamplong
5350SRExecBrokerMPIDstring
5351SRExecBrokerCodestring
5352SRExecBrokerAccntstring
5353SRExecBrokerClFirmstring
5355SRTradingSessionstringValid values:
0 = RegularMarket
1 = PreMarket
2 = PostMarket
3 = PostMarketETF
4 = All
5 = Auto
6 = NextDay
5357SRSpdrOrderTypestringValid values:
1 = Market
2 = Limit
3 = MktOnOpen
4 = LmtOnOpen
5 = MktOnClose
6 = LmtOnClose
7 = PegMid
8 = PegPri
9 = PegMkt
10 = PegMidOrLimit
11 = PegPriOrLimit
12 = PegMktOrLimit
5358SRParentOrderSizelong
5360SRExDestinationstring
5363SRMMPrefCodestring
5364SRMMClrAccntstring
5368SRFaceParticipationstring
5370SRCrossHandlingDetailstring
5371SRBestPriceprice
5372SRCrossHandlingstring
5373SRClearingFlipFirmstring
5374SRClearingFlipAccountstring
5375SRClearingFlipTypestring
5376SRClOrdIdstring
5377SRStreetClOrdIdstring
5378SRSideClOrdIdstring
5379SRStreetBrokerMPIDstring
5380SRPersistentstringValid values:
Y = True
N = False
5381SRCrossAttributestring
5382SRHeldstringValid values:
Y = True
N = False
5384SRDirectedstringValid values:
Y = True
N = False
5386SRLastCapacitystringValid values:
1 = AGENT
2 = CROSS_AS_AGENT
3 = CROSS_AS_PRINCIPAL
4 = PRINCIPAL
5387SRQueuePriorityint
5388SRExecBrokerOnBehalfOfstring
5392SRTickSrcTimestamplong
5393SRTickNetTimestamplong
5394SRTickEngTimestamplong
5395SRTickSgwTimestamplong
5396SRSendTimestamplong
5398SROrderCreateReasonstringValid values:
0 = None
1 = CheckAddExch
2 = DarkCross
3 = DmaExtern
4 = DmaSmart
5 = MakeJoin
6 = MakeNbboImpr
7 = MakePostLimit
8 = MakeSelfImpr
9 = MarketAuction
10 = MatrixImpr
11 = MatrixJoin
12 = MatrixLvlSweep
13 = MatrixMaxSweep
14 = MLegSeeker
15 = OptAuctionResp
16 = OptFaceHandler
17 = RelWaitTrigger
18 = SprdDma
19 = SprdFace
20 = SprdSeeker
21 = TakeBrkr
22 = TakeExch
23 = TakeNbbo
24 = RFQRequest
25 = MLegResponse
26 = BrkrCross
27 = PostFlash
28 = MakeOff
29 = MakeFlashImprv
30 = AwayExtern
31 = MatrixCross
32 = ExchPing
33 = BrkrReview
34 = AuctionResponse
35 = SweepTake
36 = TestChild
5399SROrderCancelReasonint
5400SRContractMultiplierfloat
5401SRDisplayPricestring
5402SRPriceFormatstring
5403SRNativePriceprice
5405SRDisplayFactorprice
5406SRSecurityGroupstring
5407SRProductGroupstring
5408SRProductClassstring
5409SRNativeLastPriceprice
5410SRExtTraderIdstring
5411SRExecUsernamestring
5412SRExecFirmIDstring
5413SRPrimaryExchstring
5417SRRoutingInstructionstringValid values:
ALO = AddLiqOnly
DNR = DoNotRoute
ISO = IntermarketSweep
MQ = MassQuote
5420SRInternalMPIDstring
5421SRClientMPIDstring
5430SRAuctionIdstring
5431SRAuctionTypestring
5435SRHasAutoHedgestringValid values:
Y = Yes
N = No
5436SRHedgeUnitsfloat
5437SRHedgeSecKeystring
5450SRContingentActionstringValid values:
C = ContingentTrigger
W = WaitTrigger
5451SRContingentTick2Actionfloat
5452SRContingentLatencyfloat
5453SRContingentCxlDttmdatetime
5454SRSymEmaCxlDDeltaLnfloat
5455SRSymEmaCxlDDeltaShfloat
5456SRSymEmaCxlWtVegaLnfloat
5457SRSymEmaCxlWtVegaShfloat
5458SRMaxExpDayDDeltaLnfloat
5459SRMaxExpDayDDeltaShfloat
5460SRContingencystringValid values:
L = CxlPrtLo
H = CxlPrtHi
1 = TakeProbM1
2 = TakeProbM2
3 = TakeProbM3
5461SRContingentSecKeystring
5462SRContingentLevelprice
5465SRRouteTypestringValid values:
1 = LiveOrder
2 = Allocation
3 = StageReview
4 = RiskReset
5468SROutgoingSeqCheckPtint
5470SRBaseActiveQuantitylong
5471SRBaseCumFillQuantitylong
5473SRBaseMaxOpenChildCntlong
5474SRLegBaseActiveQuantitylong
5475SRLegBaseCumFillQuantitylong
5476SRSideEffectstringValid values:
BO = BuyOpening
BC = BuyClosing
SO = SellOpening
SS = SellClosing
5477SRSideEffectCumlong
5478SRSideEffectAvgPxfloat
5480SRReviewResultstringValid values:
0 = None
1 = Release
2 = RejectParent
3 = CancelParent
4 = CancelReview
5 = CancelReplaceReview
5500SRFixRouteDnstring
5501SRFixRouteUpstring
5502SRSessionClientFirmstring
5510SRUdpPortint
5520SROrderClassstringValid values:
P = Parent
C = Child
R = RiskDrop
5530SREnableCrossNoticesstringValid values:
Y = Yes
N = No
5532SREnableDarkQuoteRequestsstringValid values:
Y = Yes
N = No
5534SREnableMassQuoteRequestsstringValid values:
Y = Yes
N = No
5535SRRouteControlstringValid values:
0 = None
1 = Unused
2 = Enabled
3 = Disabled
4 = SafeMode
5601SRBaseClOrdIDlong
5602SRFillNumberhexlong
5605SRRejectCodestring
5606SRChildRejectReasonstringValid values:
1 = UnknownSym
2 = MarketClosed
3 = LimitExceeded
4 = TooLateToCxl
5 = UnknownOrder
6 = DupeOrder
7 = BrokerOption
8 = SystemErr
9 = SRRiskLmt
10 = OtherError
11 = SecurityClosed
5607SRStreetExecIDstring
5608SRStreetExecRefIDstring
5610SRLiquidityTagstring
5611SRExchLiqTagstring
5612SRExchangeFillDetailsstring
5618SRBillingRatefloat
5619SRExchFeeEstfloat
5625SRChildPositionTypestringValid values:
1 = NA
2 = Short
3 = Long
4 = Exempt
5 = Open
6 = Close
7 = Auto
5627SRChildShortSaleFlagstringValid values:
1 = Long
2 = Short
3 = Exempt
4 = Auto
5 = Open
6 = Close
8 = Cover
7 = NA
5631SRStreetRoutestring
5647SRBillingSecTypestringValid values:
E = Equity
F = Future
EO = EqtOption
FO = FutOption
5648SRBillingCategorystringValid values:
A = Alpha
A50 = AlphaTop50
TM = TiedMaker
TT = TiedTaker
S = SOR
D = DMA
AR = AuctionResponse
BA = BlockAuction
BR = BlockResponse
F = Facilitate
AF = AlphaFacilitate
AT = AwayTrade
SO = SymOverride
E = Extern
NB = NonBillable
IS = IsoSweep
SS = SpdrSweep
SK = Seeker
LEG = Legger
AD = Drop
AA = AwayAlgo
G = GTH
AG = AlphaGTH
5661SRContraDetailstring
5662SRContraCapacitystringValid values:
0 = Customer
1 = Firm
2 = BrokerDealer
4 = MarketMaker
5 = AwayMarketMaker
8 = ProCustomer
J = FirmJBO
3 = BrkrDlrCust
5663SRReportDetailstring
5665SRPeggedLimitstringValid values:
Y = Yes
N = No
5667SRCrossBrokenstringValid values:
Y = Yes
N = No
5670SRNbboBidPxfloat
5671SRNbboAskPxfloat
5672SRNbboBidSzint
5673SRNbboAskSzint
5680SRExchBidPxfloat
5681SRExchAskPxfloat
5682SRExchBidSzint
5683SRExchAskSzint
5690SRUBidPxfloat
5691SRUAskPxfloat
5692SRUBidSzint
5693SRUAskSzint
5694SRUBidCxlPxfloat
5695SRUAskCxlPxfloat
5999SRChildOrderHandlingstring