Schema: SpdrChildOrder (ID: 1540)
SpdrChildOrder records are published when SpiderRock sends orders to downstream exchanges or venues. These records update as the state of the child order updates.
SpdrChildOrder records are published to the SpiderRock elastic cluster when they have reached a terminal state.
METADATA
| Attribute | Value |
|---|---|
| Topic | 1525-child-orders |
| MLink Token | Internal |
| MLink Endpoint | MLink-Live |
| SRSE Product |
Note: The symbol
=next to a field number indicates that it is a primary key.
BODY
| # | Field | Type | Default Value | Comment |
|---|---|---|---|---|
| 10= | clOrdId | long | ||
| 100 | sysRealm | enum : SysRealm | ||
| 103 | sysEnvironment | enum : SysEnvironment | original (source) sys environment [Stable, Current, etc] | |
| 106 | runStatus | enum : RunStatus | original (source) run status [Prod,Beta] | |
| 1160 | custClOrdId | long | cust side.clOrdId (non-zero when shape = Cross or MLegCross) | |
| 115 | altOrderId | string(24) | parent/client clOrdId | |
| 118 | altAccount | string(32) | altAccount | |
| 121 | altUserName | string(24) | altUserName | |
| 124 | recordVersion | short | record instance number (1 = original record; 2 = 1st update, etc) | |
| 127 | recordSource | enum : RecordSource | ||
| 130 | riskGroupId | long | parent order risk group Id | |
| 133 | triggerGroupId | long | WaitTrigger group Id | |
| 136 | triggerTimestamp | long | WaitTrigger trigger timestamp (nanoseconds since epoch) | |
| 139 | parentNumber | long | order number from parent order | |
| 142 | parentVersion | short | SPDR order instance number (1 = original order; 2 = 1st cancel/replace, etc) | |
| 145 | baseParentNumber | long | base order number (first parent number in chain) | |
| 1196 | prevParentNumber | long | previous order number (prior parent number to this order in chain) | |
| 148 | parent390Number | long | parent order number for 390 counting purposes (can be forwarded to downstream brokers) | |
| 151 | packageId | long | parent order package Id | |
| 154 | spdrSource | enum : SpdrSource | ||
| 157 | groupingCode | long | ||
| 160 | responseId | string(20) | usually an exch auction response ID | |
| 163 | responseType | string(4) | usually an exch auction response type | |
| 166 | streetClOrdId | string(24) | usually clOrdID.X16 but can be different if street gateway was translating clOrdId | |
| 169 | streetOrderId | string(24) | street side order ID (for canceling order) | |
| 172 | streetDirected | enum : YesNo | was this order directed after being sent downstream? (usually yes unless a smartrouter is involved) | |
| 175 | streetHeld | enum : YesNo | was this order "Held" (yes) or "Not Held" after being sent downstream (usually yes) | |
| 178 | accnt | string(16) | primary (customer side) account | |
| 181 | clientFirm | string(16) | primary (customer side) client firm | |
| 1208 | strategyAccnt | string(16) | SR strategy account | |
| 1161 | coreClientFirm | string(16) | ||
| 1162 | sponsorClientFirm | string(16) | ||
| 184 | priAggGroup | string(16) | primary aggregation group | |
| 187 | secAggGroup | string(16) | secondary aggregation group | |
| 190 | noCrossGroup | string(16) | no-cross group for this accnt | |
| 193 | userName | string(24) | ||
| 196 | childShape | enum : SpdrOrderShape | ||
| 199 | routeType | enum : RouteType | ||
| 202 | secKey | OptionKey | ||
| 205 | secType | enum : SpdrKeyType | note: MLeg and Stock both mean only the TickerKey portion of the secKey is valid | |
| 208 | fkey | ExpiryKey | underlier (if option on future); reference future (if trade at settlement; priceType != None) | |
| 211 | ticker | TickerKey | base stock key (all orders) | |
| 214 | stripe | string(4) | ||
| 1163 | engineName | string(32) | machine name of the execution engine that created the child order | |
| 220 | destinationType | enum : DestinationType | type of industry member | |
| 223 | routingCode | text1 | routing code order was sent on | |
| 226 | orderSize | int | ||
| 229 | orderSide | enum : BuySell | ||
| 232 | isFlipSide | enum : YesNo | ||
| 235 | priceType | enum : PriceType | ||
| 238 | orderPrice | double | ||
| 241 | exchOrderPrice | double | eg. iLink price | |
| 244 | exchDisplayFactor | double | ||
| 247 | exchMinTickSize | double | ||
| 250 | exchPricePrecision | byte | ||
| 253 | orderExch | int | ||
| 1204 | orderExDest | string(16) | ||
| 259 | isDirected | enum : YesNo | child order isDirected flag | |
| 262 | timeInForce | enum : TimeInForce | ||
| 265 | orderExpireDttm | DateTime | ||
| 1164 | marketSession | enum : MarketSession | ||
| 268 | massQte | enum : YesNo | ||
| 271 | isoSweep | enum : YesNo | ||
| 274 | makeOnly | enum : YesNo | ||
| 277 | doNotRoute | enum : YesNo | ||
| 280 | waitTriggerId | text1 | ||
| 283 | contingency | enum : SGContingency | StreetGW fast contingency (if any exists) | |
| 286 | contingentLevel | double | StreetGW contingency trigger level | |
| 289 | contingentSecKey | OptionKey | ||
| 292 | action | enum : SGContingentAction | ||
| 295 | tick2Action | float | latency (seconds) between tick srcTimestamp and sgw send time | |
| 298 | actionLatency | float | latency (seconds) between sqw send time and action acknowledgement time | |
| 301 | orderType | enum : SpdrOrderType | ||
| 304 | pegOffset | double | price offset to be used with 'Peg' order types; (+) = more aggressive, (-) = less aggressive | |
| 307 | isPegOrder | enum : YesNo | Yes if order sent to exchange as 'Peg' style (returned in exec report) | |
| 310 | tradingSession | enum : TradingSession | ||
| 313 | underliersPerCn | int | option delivery underliers per contract | |
| 316 | underlierType | enum : UnderlierType | type of underlier (affects $greek calculations) | |
| 319 | tickValue | float | $NLV value of a single tick change in display premium (pointValue = tickValue / tickSize) | |
| 322 | pointValue | float | $NLV value of a single point change in display premium (pointValue = tickValue / tickSize) | |
| 325 | pointCurrency | enum : Currency | ||
| 328 | uPrcRatio | float | UPrcRatio (SymbolRatio) | |
| 331 | securityID | string(24) | from ProductDefinition.securityID | |
| 334 | securityDesc | text1 | from ProductDefinition.securityDesc | |
| 337 | productGroup | string(6) | from ProductDefinition.productGroup | |
| 340 | productClass | enum : ProductClass | from ProductDefinition.productClass | |
| 1211 | productComplex | string(3) | ||
| 1251 | mic | string(4) | ||
| 343 | undKey | ExpiryKey | from ProductDefinition.undKey | |
| 346 | undType | enum : SpdrKeyType | from ProductDefinition.undType | |
| 349 | childOrderHandling | string(24) | ||
| 352 | algoHandler | enum : ChildHandler | algo handler for this child order | |
| 1212 | algoMifidId | string(24) | ||
| 355 | strategy | string(36) | parent order strategy string (can be user supplied) | |
| 358 | method | string(8) | SpiderRock execution method | |
| 361 | source | string(12) | SpiderRock order source | |
| 364 | externParam | text1 | ||
| 367 | mktDataDetail | text1 | ||
| 370 | mmPrefCode | string(6) | ||
| 1197 | mmCredit | float | ||
| 373 | riskResetCode | string(6) | ||
| 376 | firmType | enum : FirmType | ||
| 379 | orderCapacity | enum : OrderCapacity | ||
| 382 | ssaleFlag | enum : ShortSaleFlag | primary short sale flag (single leg orders) | |
| 385 | positionType | enum : PositionType | primary position type (single leg orders) | |
| 388 | futCustType | enum : FutCustType | ||
| 391 | futClearRng | enum : FutClearingRange | ||
| 394 | firmPosition | int | ||
| 397 | openSellSh | int | ||
| 400 | locateQuan | int | available locate quantity (if selling short) @ child order send time | |
| 403 | locateFirm | string(6) | firm granting the locate (also locate firm used on street FIX orders) | |
| 406 | locatePool | string(16) | locate pool @ firm granting the locate | |
| 1214 | requireLocate | enum : RequireLocate | locate check enforced in SR systems | |
| 412 | exchTraderId | string(16) | ||
| 415 | largeTraderId | string(16) | ||
| 418 | tradingLocation | string(16) | ||
| 421 | clearingFirm | string(4) | clearing firm from account config [not visible in fix templates] | |
| 424 | clearingAccnt | string(16) | clearing accnt from account config [not visible in fix templates] | |
| 1194 | execBrkrCode | string(16) | ||
| 1198 | execBrkrMPID | string(8) | from ExecBrokerDefinition | |
| 433 | execBrkrAccnt | string(16) | ||
| 436 | execBrkrClFirm | string(16) | ||
| 439 | execBrkrUserName | string(16) | ||
| 442 | clearingFlipType | enum : FlipType | [visible in all fix templates] | |
| 445 | clearingFlipFirm | string(6) | [visible in all fix templates] | |
| 448 | clearingFlipAccnt | string(10) | [visible in all fix templates] | |
| 1165 | clearingAgent | string(10) | [visible in all fix templates] | |
| 1166 | clearingTaxID | string(10) | [visible in all fix templates] | |
| 1215 | clearingBrkrMPID | string(8) | equity clearing broker MPID | |
| 689 | badge | string(16) | exchange memembership and badge id | |
| 451 | relationshipType | enum : RelationshipType | type of SR <-> client relationship | |
| 454 | orderStatus | enum : OrderStatus | ||
| 457 | rejectReason | enum : ChildRejectReason | ||
| 460 | orderCreateDttm | DateTime | order send time | |
| 463 | orderCreateLatency | float | order send to order ack latency (in milliseconds) | |
| 466 | orderCreateReason | enum : ChildCreateReason | ||
| 469 | orderCreatePriority | enum : RoutePriority | ||
| 472 | orderCancelText | text1 | cancel reason (from algo handler) | |
| 475 | orderCancelDttm | DateTime | order cancel time | |
| 478 | orderCancelLatency | float | cancel send to cancel ack latency (in milliseconds) | |
| 481 | orderCancelReason | enum : ChildCancelReason | ||
| 484 | orderCancelPriority | enum : RoutePriority | ||
| 487 | orderSendTimestamp | long | net timestamp of child order send (EE to SGW) | |
| 490 | orderWorkingDttm | DateTime | order send ack time (acknowleged working/new) (first exec report indicating the order is active) | |
| 493 | orderClosedDttm | DateTime | order terminated ack time (first exec report indicating the order is in a terminal state;eg. cancelled, filled, rejected, etc) | |
| 496 | orderCancelFlag | enum : YesNo | indicated the algo handler attempted to cancel the order while it was in a working state (does not necessarily mean that a cancel message was generated and send) | |
| 499 | isPersistent | enum : YesNo | indicates whether the child order should persist till rotation period (even if not filled) | |
| 502 | lastStreetText | text1 | text message on the (initial) exec report terminating the order sequence | |
| 505 | cumFillQuantity | int | cum fill quantity (SUM: ExecReport.lastQuantity) | |
| 508 | avgFillPrice | double | avg fill price (AVG: ExecReport.lastPrice) | |
| 511 | cumFillQtyExec | int | from ExecReport.cumFillQuantity | |
| 514 | avgFillPrcExec | double | from ExecReport.avgFillPrice | |
| 517 | lastMsgSeqNum | int | largest execReport.msgSeqNum process for this child order | |
| 520 | numExecutions | short | num ExecReports w/lastQuantity > 0 | |
| 523 | leavesQty | int | ||
| 526 | uLevel | double | EE level contingency threshold | |
| 529 | uContingency | enum : Contingency | ||
| 532 | makerTaker | enum : MakerTaker | ||
| 535 | parentLmtPrice | double | ||
| 538 | parentLmtRefUPrc | double | ||
| 541 | nbboBid | double | nbbo bid @ child order send | |
| 544 | nbboAsk | double | nbbo ask @ child order send | |
| 547 | nbboBidSz | int | nbbo bid size @ child order send | |
| 550 | nbboAskSz | int | nbbo ask size @ child order send | |
| 553 | exchBid | double | exch bid @ child order send | |
| 556 | exchAsk | double | exch ask @ child order send | |
| 559 | exchBidSz | int | exch bid size @ child order send | |
| 562 | exchAskSz | int | exch ask size @ child order send | |
| 565 | mktStance | enum : MktStance | ||
| 568 | uPrc | double | underlier price when child order sent (ref uPrc for DAC orders) | |
| 571 | uBid | double | underlier bid when child order sent | |
| 574 | uAsk | double | underlier ask when child order sent | |
| 577 | uBidSz | int | underlier bid size when child order sent | |
| 580 | uAskSz | int | underlier ask size when child order sent | |
| 583 | uBidCxl | double | underlier bid when cancel sent (if any) | |
| 586 | uAskCxl | double | underlier ask when cancel sent (if any) | |
| 589 | surfVol | float | option only | |
| 592 | surfPrice | float | option only | |
| 595 | childVol | float | child order volatility [price, parentLmtRefUPrc] | |
| 598 | childProb | float | probability @ child send time | |
| 601 | childVolAtm | float | atm volatility @ child send time | |
| 604 | cnDe | float | cnDe | |
| 607 | cnDd | float | cnDd | |
| 616 | cnVe | float | cnVe | |
| 1167 | riskStkSize | float | risk stk size | |
| 1168 | riskFutSize | float | risk fut size | |
| 1169 | riskOptSize | float | risk opt size | |
| 1170 | riskVega | float | risk vega | |
| 1171 | riskWtVega | float | risk gamma | |
| 1172 | riskNValue | float | risk delta | |
| 1173 | riskDelta | float | risk delta | |
| 1174 | riskDDelta | float | risk ddelta | |
| 1175 | riskRm1 | float | user defined (from parent order) [used to manage order groups | |
| 1176 | riskRm2 | float | user defined (from parent order) [used to manage order groups] | |
| 1177 | riskRm3 | float | user defined (from parent order) [used to manage order groups] | |
| 1178 | riskRm4 | float | user defined (from parent order) [used to manage order groups] | |
| 1179 | riskRm5 | float | user defined (from parent order) [used to manage order groups] | |
| 1180 | riskRm6 | float | user defined (from parent order) [used to manage order groups] | |
| 1181 | riskRm7 | float | user defined (from parent order) [used to manage order groups] | |
| 1182 | marginUDnVDn | float | underlier down, vol down | |
| 1183 | marginUDnVUp | float | underlier down, vol up | |
| 1184 | marginUUpVDn | float | underlier up, vol down | |
| 1185 | marginUUpVUp | float | underlier up, vol up | |
| 1186 | riskU50Dn | float | underlier dn 50% shock slide | |
| 1187 | riskU50Up | float | underlier up 50% shock slide | |
| 658 | catSrcBrkrIMID | text1 | B/D firm FDID (only exists if a B/D is the source) (supplied by FINRA fbo client) (from ClientFirm.catSrcBrkrIMID) | |
| 661 | catReportable | enum : CatReportType | CAT reportable type (from AccountConfig.catReportable) | |
| 664 | catSrcAccntType | enum : CatAccntType | CAT account holder type (from AccountConfig.catSrcAccntType [Eqt, Opt]) | |
| 667 | catSrcFirmType | enum : CatFirmType | CAT source type (from AccountConfig.catSrcFirmType [Eqt, Opt]) | |
| 670 | catDestFirmIMID | text1 | Destination Firm IMID (supplied by FINRA fbo destination; can be B/D or Exchange) (always exists) (from AccountRouteConfig.catDestFirmIMID [Eqt, Opt]) | |
| 673 | catDestDeptType | enum : CatDeptType | CAT destination type (from AccountRouteConfig.castDestType [Eqt, Opt]) | |
| 676 | catExchSessionID | text1 | CAT exchange session name | |
| 679 | catParentCreateDttm | DateTime | ParentOrder CreateDttm | |
| 682 | catParentCancelDttm | DateTime | ParentOrder CancelDttm | |
| 685 | catAccnt | text1 | CAT Firm Designated ID | |
| 688 | catBrkrAccnt | text1 | Brokers CAT Firm Designated ID | |
| 1249 | catAccntOriginCode | string(4) | CAT exchange origin code field. market maker, b/d, pro-cust, etc | |
| 691 | userData1 | text1 | client supplied data field; passes through to parent and child executions and reports as well as FIX drops | |
| 694 | userData2 | text1 | client supplied data field; passes through to parent and child executions and reports as well as FIX drops | |
| 697 | childData | text1 | client supplied data field; passes through to down stream child orders | |
| 700 | timestamp | DateTime | ||
| 1216 | completionType | enum : CompletionType | ||
| 1217 | completionState | enum : CompletionState | ||
| 1218 | completionRefUPrc | double | ||
| 1219 | completionRefDelta | float | ref delta (single leg orders only) | |
| 1220 | avgCompletionPrice | double | completion trade price (final trade price) (package price if MLEG) | |
| 1221 | completionSecKey | OptionKey | final settlement secKey (contract that DAC, TAS, TACO, etc. will convert to; might not be valid until completed) | |
| 1222 | completionSecType | enum : SpdrKeyType | usually Future or Option (None if not yet valid) (single leg orders only) | |
| 1188 | faceClOrdId | long | face side.clOrdId (alternate clOrdID) | |
| 1213 | noticeNumber | long | auction notice ID (if cross) | |
| 706 | faceCrossHandling | enum : CrossHandling | ||
| 1205 | faceCrossAttr | enum : CrossAttr | SweepCross = Request Exch Sweep Away market; ISOCross = Mark cross as ISO (we have already swept markets; if required) | |
| 709 | faceHasBestPrice | enum : YesNo | ||
| 712 | faceBestOrderPrice | double | best limit price of facilitation side | |
| 715 | faceParticipation | enum : FaceParticipation | min or max facilitation participation | |
| 718 | faceCumFillQuantity | int | cum fill quantity (SUM: faceSide.lastQuantity) [all allocation sides] | |
| 721 | faceAvgFillPrice | double | avg fill price (SUM: faceSide.avgFillPrice * faceSide.lastQuantity) / (SUM: faceSide.lastQuantity) | |
| 724 | faceLeavesQty | int | (SUM: faceSide.leavesQty) | |
| 883 | stockLeg | enum : YesNo | for OATS reporting purposes |
REPEATING FIELDS
FaceSide
| # | Field | Type | Default Value | Comment |
|---|---|---|---|---|
| 730 | allocType | enum : FaceAllocType | note: only ExecAccnt FaceSide(s) are included in corresponding NewOrderCross/NewOrderMLegCross messages | |
| 733 | allocId | byte | allocation ID for this FaceSide record (1 - 10) | |
| 1189 | allocClOrdId | long | unique allocClOrdID for this FaceSide record (SRGuid) | |
| 739 | altOrderId | string(24) | parent client clOrdId | |
| 742 | accnt | string(16) | ||
| 745 | clientFirm | string(16) | ||
| 1209 | strategyAccnt | string(16) | ||
| 1190 | coreClientFirm | string(16) | ||
| 1191 | sponsorClientFirm | string(16) | ||
| 748 | altAccount | string(32) | altAccount | |
| 751 | aggGroup | string(16) | aggregation group accntFace | |
| 754 | noCrossGroup | string(16) | no-cross group for this accnt | |
| 757 | firmType | enum : FirmType | ||
| 760 | orderCapacity | enum : OrderCapacity | ||
| 763 | ssaleFlag | enum : ShortSaleFlag | primary short sale flag (single leg orders) | |
| 766 | positionType | enum : PositionType | primary position type (single leg orders) | |
| 769 | futCustType | enum : FutCustType | ||
| 772 | futClearRng | enum : FutClearingRange | ||
| 775 | allocSize | int | size/quantity of this allocation slice; (SUM: faceSide.allocRequestQty) == top.orderSize | |
| 778 | allocCumFillQty | int | cum fill quantity (SUM: ExecReport.lastQuantity) | |
| 781 | allocAvgPrice | double | avg fill price (AVG: ExecReport.lastPrice) | |
| 784 | allocLeavesQty | int | open allocationRequestQty (leavesQty) | |
| 787 | cumFillQtyExec | int | from ExecReport.cumFillQuantity | |
| 790 | avgFillPrcExec | double | from ExecReport.avgFillPrice | |
| 793 | lastMsgSeqNum | int | largest execReport.msgSeqNum process for this child order | |
| 796 | numExecutions | short | num ExecReports w/lastQuantity > 0 | |
| 799 | firmPosition | int | ||
| 802 | openSellSh | int | ||
| 805 | locateQuan | int | available locate quantity (if selling short) @ child order send time | |
| 808 | locateFirm | string(6) | firm granting the locate | |
| 811 | locatePool | string(16) | locate pool @ firm granting the locate | |
| 814 | locateSource | string(12) | retaining from V7 | |
| 817 | exchTraderId | string(16) | ||
| 820 | largeTraderId | string(16) | ||
| 823 | tradingLocation | string(16) | ||
| 1200 | capStrategyID | string(12) | from AccountExchGroup (only used on cap eligible strategies) | |
| 826 | clearingFirm | string(4) | from AccountConfig | |
| 829 | clearingAccnt | string(16) | from AccountConfig | |
| 1195 | execBrkrCode | string(16) | ||
| 838 | execBrkrAccnt | string(16) | ||
| 841 | execBrkrClFirm | string(16) | ||
| 844 | execBrkrUserName | string(16) | ||
| 847 | relationshipType | enum : RelationshipType | type of SR <-> client relationship | |
| 850 | clearingFlipType | enum : FlipType | [visible in all fix templates] | |
| 853 | clearingFlipFirm | string(6) | [visible in all fix templates] | |
| 856 | clearingFlipAccnt | string(10) | [visible in all fix templates] | |
| 1192 | clearingAgent | string(10) | [visible in all fix templates] | |
| 1193 | clearingTaxID | string(10) | [visible in all fix templates] | |
| 1223 | clearingBrkrMPID | string(8) | ||
| 848 | badge | string(16) | exchange memembership and badge id | |
| 859 | catSrcBrkrIMID | string(16) | B/D firm FDID (only exists if a B/D is the source) (supplied by FINRA fbo client) (from ClientFirm.catSrcBrkrIMID) | |
| 862 | catReportable | enum : CatReportType | CAT reportable type (from AccountConfig.catReportable) | |
| 865 | catSrcAccntType | enum : CatAccntType | CAT account holder type (from AccountConfig.catSrcAccntType [Eqt, Opt]) | |
| 868 | catSrcFirmType | enum : CatFirmType | CAT source type (from AccountConfig.catSrcType [Eqt, Opt]) | |
| 871 | catParentCreateDttm | DateTime | ParentOrder CreateDttm | |
| 874 | catParentCancelDttm | DateTime | ParentOrder CancelDttm | |
| 877 | catAccnt | string(40) | CAT Firm Designated ID | |
| 880 | catBrkrAccnt | string(40) | Brokers CAT Firm Designated ID | |
| 1250 | catAccntOriginCode | string(4) | CAT exchange origin code field. market maker, b/d, pro-cust, etc |
OrderLegs
| # | Field | Type | Default Value | Comment |
|---|---|---|---|---|
| 889 | lastLegRefId | long | ||
| 892 | lastFillDttm | DateTime | ||
| 895 | cumSquareQty | int | cum spread quantity filled (all legs received) | |
| 898 | avgSquarePrc | double | ||
| 901 | lastSquareDttm | DateTime | ||
| 904 | cumPartialQty | int | cum spread quantity partially filled (at least one leg received) [expected cumFilledQty if all legs square up] | |
| 1210 | spreadClass | enum : SpreadClass | ||
| 1202 | spreadFlavor | enum : SpreadFlavor | spread flavor of this order | |
| 1203 | containsHedge | enum : YesNo | if this order contains a stock/future leg | |
| 907 | ticker | TickerKey | stock ticker | |
| 910 | stockSide | enum : BuySell | [Buy | |
| 913 | stockShares | int | number of shares included (zero if none) | |
| 916 | stockLegId | long | ||
| 919 | ssaleFlag | enum : ShortSaleFlag | ||
| 922 | stockCumFillQty | int | ||
| 925 | stockAvgFillPrc | double | ||
| 1224 | stockRefPrice | double | stock leg ref price (FLEX) | |
| 928 | numLegs | byte | number of valid legs below | |
| 931 | secKey1 | OptionKey | leg #1 | |
| 934 | secType1 | enum : SpdrKeyType | ||
| 937 | mult1 | ushort | ||
| 940 | side1 | enum : BuySell | ||
| 943 | legId1 | long | ||
| 946 | posType1 | enum : PositionType | ||
| 949 | legCumFillQty1 | int | ||
| 952 | legAvgFillPrc1 | double | ||
| 1225 | legRefPrice1 | double | leg ref price (FLEX) | |
| 1226 | legRefDelta1 | float | completion ref delta | |
| 1227 | legCmplSecKey1 | OptionKey | final settlement secKey (contract that DAC, TAS, TACO, etc. will convert to; might not be valid until completed) | |
| 1228 | legCmplSecType1 | enum : SpdrKeyType | usually Future or Option (None if not yet valid) | |
| 955 | secKey2 | OptionKey | leg #2 | |
| 958 | secType2 | enum : SpdrKeyType | ||
| 961 | mult2 | ushort | ||
| 964 | side2 | enum : BuySell | ||
| 967 | legId2 | long | ||
| 970 | posType2 | enum : PositionType | ||
| 973 | legCumFillQty2 | int | ||
| 976 | legAvgFillPrc2 | double | ||
| 1229 | legRefPrice2 | double | leg ref price (FLEX) | |
| 1230 | legRefDelta2 | float | completion ref delta (FLEX DAC) | |
| 1231 | legCmplSecKey2 | OptionKey | final settlement secKey (contract that DAC, TAS, TACO, etc. will convert to; might not be valid until completed) | |
| 1232 | legCmplSecType2 | enum : SpdrKeyType | usually Future or Option (None if not yet valid) | |
| 979 | secKey3 | OptionKey | leg #3 | |
| 982 | secType3 | enum : SpdrKeyType | ||
| 985 | mult3 | ushort | ||
| 988 | side3 | enum : BuySell | ||
| 991 | legId3 | long | ||
| 994 | posType3 | enum : PositionType | ||
| 997 | legCumFillQty3 | int | ||
| 1000 | legAvgFillPrc3 | double | ||
| 1233 | legRefPrice3 | double | leg ref price (FLEX) | |
| 1234 | legRefDelta3 | float | completion ref delta | |
| 1235 | legCmplSecKey3 | OptionKey | final settlement secKey (contract that DAC, TAS, TACO, etc. will convert to; might not be valid until completed) | |
| 1236 | legCmplSecType3 | enum : SpdrKeyType | usually Future or Option (None if not yet valid) | |
| 1003 | secKey4 | OptionKey | leg #4 | |
| 1006 | secType4 | enum : SpdrKeyType | ||
| 1009 | mult4 | ushort | ||
| 1012 | side4 | enum : BuySell | ||
| 1015 | legId4 | long | ||
| 1018 | posType4 | enum : PositionType | ||
| 1021 | legCumFillQty4 | int | ||
| 1024 | legAvgFillPrc4 | double | ||
| 1237 | legRefPrice4 | double | leg ref price (FLEX) | |
| 1238 | legRefDelta4 | float | completion ref delta | |
| 1239 | legCmplSecKey4 | OptionKey | final settlement secKey (contract that DAC, TAS, TACO, etc. will convert to; might not be valid until completed) | |
| 1240 | legCmplSecType4 | enum : SpdrKeyType | usually Future or Option (None if not yet valid) | |
| 1027 | secKey5 | OptionKey | leg #5 | |
| 1030 | secType5 | enum : SpdrKeyType | ||
| 1033 | mult5 | ushort | ||
| 1036 | side5 | enum : BuySell | ||
| 1039 | legId5 | long | ||
| 1042 | posType5 | enum : PositionType | ||
| 1045 | legCumFillQty5 | int | ||
| 1048 | legAvgFillPrc5 | double | ||
| 1241 | legRefPrice5 | double | leg ref price (FLEX) | |
| 1242 | legRefDelta5 | float | completion ref delta | |
| 1243 | legCmplSecKey5 | OptionKey | final settlement secKey (contract that DAC, TAS, TACO, etc. will convert to; might not be valid until completed) | |
| 1244 | legCmplSecType5 | enum : SpdrKeyType | usually Future or Option (None if not yet valid) | |
| 1051 | secKey6 | OptionKey | leg #6 | |
| 1054 | secType6 | enum : SpdrKeyType | ||
| 1057 | mult6 | ushort | ||
| 1060 | side6 | enum : BuySell | ||
| 1063 | legId6 | long | ||
| 1066 | posType6 | enum : PositionType | ||
| 1069 | legCumFillQty6 | int | ||
| 1072 | legAvgFillPrc6 | double | ||
| 1245 | legRefPrice6 | double | leg ref price (FLEX) | |
| 1246 | legRefDelta6 | float | completion ref delta | |
| 1247 | legCmplSecKey6 | OptionKey | final settlement secKey (contract that DAC, TAS, TACO, etc. will convert to; might not be valid until completed) | |
| 1248 | legCmplSecType6 | enum : SpdrKeyType | usually Future or Option (None if not yet valid) |
FaceLegs
| # | Field | Type | Default Value | Comment |
|---|---|---|---|---|
| 1078 | lastLegRefId | long | ||
| 1081 | lastFillDttm | DateTime | ||
| 1084 | cumSquareQty | int | cum spread quantity filled (all legs received) | |
| 1087 | avgSquarePrc | double | ||
| 1090 | lastSquareDttm | DateTime | ||
| 1093 | cumPartialQty | int | cum spread quantity partially filled (at least one leg received) [expected cumFilledQty if all legs square up] | |
| 1096 | ssaleFlag | enum : ShortSaleFlag | ||
| 1099 | stockCumFillQty | int | ||
| 1102 | stockAvgFillPrc | double | ||
| 1105 | numLegs | byte | number of valid legs below | |
| 1108 | posType1 | enum : PositionType | ||
| 1111 | legCumFillQty1 | int | ||
| 1114 | legAvgFillPrc1 | double | ||
| 1117 | posType2 | enum : PositionType | ||
| 1120 | legCumFillQty2 | int | ||
| 1123 | legAvgFillPrc2 | double | ||
| 1126 | posType3 | enum : PositionType | ||
| 1129 | legCumFillQty3 | int | ||
| 1132 | legAvgFillPrc3 | double | ||
| 1135 | posType4 | enum : PositionType | ||
| 1138 | legCumFillQty4 | int | ||
| 1141 | legAvgFillPrc4 | double | ||
| 1144 | posType5 | enum : PositionType | ||
| 1147 | legCumFillQty5 | int | ||
| 1150 | legAvgFillPrc5 | double | ||
| 1153 | posType6 | enum : PositionType | ||
| 1156 | legCumFillQty6 | int | ||
| 1159 | legAvgFillPrc6 | double |
Get Schema API Call
- Python
- cUrl
import requests
# Replace with your desired MLINK URL
MLINK_PROD_URL = 'https://mlink-live.nms.saturn.spiderrockconnect.com/rest/json'
# Replace with your MLINK API Key
API_KEY = 'XXXX-XXXX-XXXX-XXXX'
# Replace with your desired MsgType.
MSG_TYPE = 'SpdrChildOrder'
# Request Parameters for Get Schema Of The MsgType
params = {
# Required Parameters
"apiKey": API_KEY,
"cmd": 'getschema',
"msgType": MSG_TYPE,
}
response = requests.get(MLINK_PROD_URL, params=params)
curl -G 'https://mlink-live.nms.saturn.spiderrockconnect.com/rest/json' \
--data-urlencode 'apiKey=XXXX-XXXX-XXXX-XXXX' \
--data-urlencode 'cmd=getschema' \
--data-urlencode 'msgType=SpdrChildOrder'
Get Msg API Call
- Python
- cUrl
import requests
# Replace with your desired MLINK URL
MLINK_PROD_URL = 'https://mlink-live.nms.saturn.spiderrockconnect.com/rest/json'
# Replace with your MLINK API Key
API_KEY = 'XXXX-XXXX-XXXX-XXXX'
# Replace with your desired MsgType.
MSG_TYPE = 'SpdrChildOrder'
# Replace with your pkey value for getting the specific message desired
PKEY = 'ReplaceThisValueForTheQueryToWork'
# Replace with your desired view. A "|" separated list of views can be provided
# If no view is provided, all views will be returned.
VIEW = 'sysRealm|sysEnvironment|runStatus|custClOrdId|altOrderId|altAccount|altUserName|recordVersion|recordSource|riskGroupId|triggerGroupId|triggerTimestamp|parentNumber|parentVersion|baseParentNumber|prevParentNumber|parent390Number|packageId|spdrSource|groupingCode|responseId|responseType|streetClOrdId|streetOrderId|streetDirected|streetHeld|accnt|clientFirm|strategyAccnt|coreClientFirm|sponsorClientFirm|priAggGroup|secAggGroup|noCrossGroup|userName|childShape|routeType|secKey|secType|fkey|ticker|stripe|engineName|destinationType|routingCode|orderSize|orderSide|isFlipSide|priceType|orderPrice|exchOrderPrice|exchDisplayFactor|exchMinTickSize|exchPricePrecision|orderExch|orderExDest|isDirected|timeInForce|orderExpireDttm|marketSession|massQte|isoSweep|makeOnly|doNotRoute|waitTriggerId|contingency|contingentLevel|contingentSecKey|action|tick2Action|actionLatency|orderType|pegOffset|isPegOrder|tradingSession|underliersPerCn|underlierType|tickValue|pointValue|pointCurrency|uPrcRatio|securityID|securityDesc|productGroup|productClass|productComplex|mic|undKey|undType|childOrderHandling|algoHandler|algoMifidId|strategy|method|source|externParam|mktDataDetail|mmPrefCode|mmCredit|riskResetCode|firmType|orderCapacity|ssaleFlag|positionType|futCustType|futClearRng|firmPosition|openSellSh|locateQuan|locateFirm|locatePool|requireLocate|exchTraderId|largeTraderId|tradingLocation|clearingFirm|clearingAccnt|execBrkrCode|execBrkrMPID|execBrkrAccnt|execBrkrClFirm|execBrkrUserName|clearingFlipType|clearingFlipFirm|clearingFlipAccnt|clearingAgent|clearingTaxID|clearingBrkrMPID|badge|relationshipType|orderStatus|rejectReason|orderCreateDttm|orderCreateLatency|orderCreateReason|orderCreatePriority|orderCancelText|orderCancelDttm|orderCancelLatency|orderCancelReason|orderCancelPriority|orderSendTimestamp|orderWorkingDttm|orderClosedDttm|orderCancelFlag|isPersistent|lastStreetText|cumFillQuantity|avgFillPrice|cumFillQtyExec|avgFillPrcExec|lastMsgSeqNum|numExecutions|leavesQty|uLevel|uContingency|makerTaker|parentLmtPrice|parentLmtRefUPrc|nbboBid|nbboAsk|nbboBidSz|nbboAskSz|exchBid|exchAsk|exchBidSz|exchAskSz|mktStance|uPrc|uBid|uAsk|uBidSz|uAskSz|uBidCxl|uAskCxl|surfVol|surfPrice|childVol|childProb|childVolAtm|cnDe|cnDd|cnVe|riskStkSize|riskFutSize|riskOptSize|riskVega|riskWtVega|riskNValue|riskDelta|riskDDelta|riskRm1|riskRm2|riskRm3|riskRm4|riskRm5|riskRm6|riskRm7|marginUDnVDn|marginUDnVUp|marginUUpVDn|marginUUpVUp|riskU50Dn|riskU50Up|catSrcBrkrIMID|catReportable|catSrcAccntType|catSrcFirmType|catDestFirmIMID|catDestDeptType|catExchSessionID|catParentCreateDttm|catParentCancelDttm|catAccnt|catBrkrAccnt|catAccntOriginCode|userData1|userData2|childData|timestamp|completionType|completionState|completionRefUPrc|completionRefDelta|avgCompletionPrice|completionSecKey|completionSecType|faceClOrdId|noticeNumber|faceCrossHandling|faceCrossAttr|faceHasBestPrice|faceBestOrderPrice|faceParticipation|faceCumFillQuantity|faceAvgFillPrice|faceLeavesQty|stockLeg'
# Replace with your desired where clause.
# a string in the form "field1:eq:valuse" or "(field1:ne:value1 & field1:ne:value2)
# "WHERE" clauses can contain the following comparison symbols:
# :gt: is greater than
# :ge: is greater than or equal to
# :lt: is less than
# :le: is less than or equal to
# :eq: is equal
# :ne: is not equal
# %26 is an AND statement
# | is an OR statement
# :sw: is starts with
# :ew: is ends with
# :cv: is contains values
# :nv: is does not contain value
# :cb: is contained between (two dates for instance) separated by '$'
WHERE = 'altOrderId:eq:ExampleString'
# Request Parameters for getmsg Of The MsgType
params = {
# Required Parameters
"apiKey": API_KEY,
"cmd": 'getmsg',
"pkey": PKEY,
"msgType": MSG_TYPE,
# Optional Parameters
"view": VIEW,
"where": WHERE
}
response = requests.get(MLINK_PROD_URL, params=params)
curl -G 'https://mlink-live.nms.saturn.spiderrockconnect.com/rest/json' \
--data-urlencode 'apiKey=XXXX-XXXX-XXXX-XXXX' \
--data-urlencode 'cmd=getmsg' \
--data-urlencode 'pkey=ReplaceThisValueForTheQueryToWork' \
--data-urlencode 'msgType=SpdrChildOrder' \
--data-urlencode 'view=sysRealm|sysEnvironment|runStatus|custClOrdId|altOrderId|altAccount|altUserName|recordVersion|recordSource|riskGroupId|triggerGroupId|triggerTimestamp|parentNumber|parentVersion|baseParentNumber|prevParentNumber|parent390Number|packageId|spdrSource|groupingCode|responseId|responseType|streetClOrdId|streetOrderId|streetDirected|streetHeld|accnt|clientFirm|strategyAccnt|coreClientFirm|sponsorClientFirm|priAggGroup|secAggGroup|noCrossGroup|userName|childShape|routeType|secKey|secType|fkey|ticker|stripe|engineName|destinationType|routingCode|orderSize|orderSide|isFlipSide|priceType|orderPrice|exchOrderPrice|exchDisplayFactor|exchMinTickSize|exchPricePrecision|orderExch|orderExDest|isDirected|timeInForce|orderExpireDttm|marketSession|massQte|isoSweep|makeOnly|doNotRoute|waitTriggerId|contingency|contingentLevel|contingentSecKey|action|tick2Action|actionLatency|orderType|pegOffset|isPegOrder|tradingSession|underliersPerCn|underlierType|tickValue|pointValue|pointCurrency|uPrcRatio|securityID|securityDesc|productGroup|productClass|productComplex|mic|undKey|undType|childOrderHandling|algoHandler|algoMifidId|strategy|method|source|externParam|mktDataDetail|mmPrefCode|mmCredit|riskResetCode|firmType|orderCapacity|ssaleFlag|positionType|futCustType|futClearRng|firmPosition|openSellSh|locateQuan|locateFirm|locatePool|requireLocate|exchTraderId|largeTraderId|tradingLocation|clearingFirm|clearingAccnt|execBrkrCode|execBrkrMPID|execBrkrAccnt|execBrkrClFirm|execBrkrUserName|clearingFlipType|clearingFlipFirm|clearingFlipAccnt|clearingAgent|clearingTaxID|clearingBrkrMPID|badge|relationshipType|orderStatus|rejectReason|orderCreateDttm|orderCreateLatency|orderCreateReason|orderCreatePriority|orderCancelText|orderCancelDttm|orderCancelLatency|orderCancelReason|orderCancelPriority|orderSendTimestamp|orderWorkingDttm|orderClosedDttm|orderCancelFlag|isPersistent|lastStreetText|cumFillQuantity|avgFillPrice|cumFillQtyExec|avgFillPrcExec|lastMsgSeqNum|numExecutions|leavesQty|uLevel|uContingency|makerTaker|parentLmtPrice|parentLmtRefUPrc|nbboBid|nbboAsk|nbboBidSz|nbboAskSz|exchBid|exchAsk|exchBidSz|exchAskSz|mktStance|uPrc|uBid|uAsk|uBidSz|uAskSz|uBidCxl|uAskCxl|surfVol|surfPrice|childVol|childProb|childVolAtm|cnDe|cnDd|cnVe|riskStkSize|riskFutSize|riskOptSize|riskVega|riskWtVega|riskNValue|riskDelta|riskDDelta|riskRm1|riskRm2|riskRm3|riskRm4|riskRm5|riskRm6|riskRm7|marginUDnVDn|marginUDnVUp|marginUUpVDn|marginUUpVUp|riskU50Dn|riskU50Up|catSrcBrkrIMID|catReportable|catSrcAccntType|catSrcFirmType|catDestFirmIMID|catDestDeptType|catExchSessionID|catParentCreateDttm|catParentCancelDttm|catAccnt|catBrkrAccnt|catAccntOriginCode|userData1|userData2|childData|timestamp|completionType|completionState|completionRefUPrc|completionRefDelta|avgCompletionPrice|completionSecKey|completionSecType|faceClOrdId|noticeNumber|faceCrossHandling|faceCrossAttr|faceHasBestPrice|faceBestOrderPrice|faceParticipation|faceCumFillQuantity|faceAvgFillPrice|faceLeavesQty|stockLeg' \
--data-urlencode 'where=altOrderId:eq:ExampleString'
Get Msgs API Call
- Python
- cUrl
import requests
# Replace with your desired MLINK URL
MLINK_PROD_URL = 'https://mlink-live.nms.saturn.spiderrockconnect.com/rest/json'
# Replace with your MLINK API Key
API_KEY = 'XXXX-XXXX-XXXX-XXXX'
# Replace with your desired MsgType.
MSG_TYPE = 'SpdrChildOrder'
# Replace with your desired view. A "|" separated list of views can be provided
# If no view is provided, all views will be returned
VIEW = 'sysRealm|sysEnvironment|runStatus|custClOrdId|altOrderId|altAccount|altUserName|recordVersion|recordSource|riskGroupId|triggerGroupId|triggerTimestamp|parentNumber|parentVersion|baseParentNumber|prevParentNumber|parent390Number|packageId|spdrSource|groupingCode|responseId|responseType|streetClOrdId|streetOrderId|streetDirected|streetHeld|accnt|clientFirm|strategyAccnt|coreClientFirm|sponsorClientFirm|priAggGroup|secAggGroup|noCrossGroup|userName|childShape|routeType|secKey|secType|fkey|ticker|stripe|engineName|destinationType|routingCode|orderSize|orderSide|isFlipSide|priceType|orderPrice|exchOrderPrice|exchDisplayFactor|exchMinTickSize|exchPricePrecision|orderExch|orderExDest|isDirected|timeInForce|orderExpireDttm|marketSession|massQte|isoSweep|makeOnly|doNotRoute|waitTriggerId|contingency|contingentLevel|contingentSecKey|action|tick2Action|actionLatency|orderType|pegOffset|isPegOrder|tradingSession|underliersPerCn|underlierType|tickValue|pointValue|pointCurrency|uPrcRatio|securityID|securityDesc|productGroup|productClass|productComplex|mic|undKey|undType|childOrderHandling|algoHandler|algoMifidId|strategy|method|source|externParam|mktDataDetail|mmPrefCode|mmCredit|riskResetCode|firmType|orderCapacity|ssaleFlag|positionType|futCustType|futClearRng|firmPosition|openSellSh|locateQuan|locateFirm|locatePool|requireLocate|exchTraderId|largeTraderId|tradingLocation|clearingFirm|clearingAccnt|execBrkrCode|execBrkrMPID|execBrkrAccnt|execBrkrClFirm|execBrkrUserName|clearingFlipType|clearingFlipFirm|clearingFlipAccnt|clearingAgent|clearingTaxID|clearingBrkrMPID|badge|relationshipType|orderStatus|rejectReason|orderCreateDttm|orderCreateLatency|orderCreateReason|orderCreatePriority|orderCancelText|orderCancelDttm|orderCancelLatency|orderCancelReason|orderCancelPriority|orderSendTimestamp|orderWorkingDttm|orderClosedDttm|orderCancelFlag|isPersistent|lastStreetText|cumFillQuantity|avgFillPrice|cumFillQtyExec|avgFillPrcExec|lastMsgSeqNum|numExecutions|leavesQty|uLevel|uContingency|makerTaker|parentLmtPrice|parentLmtRefUPrc|nbboBid|nbboAsk|nbboBidSz|nbboAskSz|exchBid|exchAsk|exchBidSz|exchAskSz|mktStance|uPrc|uBid|uAsk|uBidSz|uAskSz|uBidCxl|uAskCxl|surfVol|surfPrice|childVol|childProb|childVolAtm|cnDe|cnDd|cnVe|riskStkSize|riskFutSize|riskOptSize|riskVega|riskWtVega|riskNValue|riskDelta|riskDDelta|riskRm1|riskRm2|riskRm3|riskRm4|riskRm5|riskRm6|riskRm7|marginUDnVDn|marginUDnVUp|marginUUpVDn|marginUUpVUp|riskU50Dn|riskU50Up|catSrcBrkrIMID|catReportable|catSrcAccntType|catSrcFirmType|catDestFirmIMID|catDestDeptType|catExchSessionID|catParentCreateDttm|catParentCancelDttm|catAccnt|catBrkrAccnt|catAccntOriginCode|userData1|userData2|childData|timestamp|completionType|completionState|completionRefUPrc|completionRefDelta|avgCompletionPrice|completionSecKey|completionSecType|faceClOrdId|noticeNumber|faceCrossHandling|faceCrossAttr|faceHasBestPrice|faceBestOrderPrice|faceParticipation|faceCumFillQuantity|faceAvgFillPrice|faceLeavesQty|stockLeg'
# Replace with your desired where clause.
# a string in the form "field1:eq:value" or "(field1:ne:value1 & field1:ne:value2)
# "WHERE" clauses can contain the following comparison symbols:
# :gt: is greater than
# :ge: is greater than or equal to
# :lt: is less than
# :le: is less than or equal to
# :eq: is equal
# :ne: is not equal
# %26 is an AND statement
# | is an OR statement
# :sw: is starts with
# :ew: is ends with
# :cv: is contains values
# :nv: is does not contain value
# :cb: is contained between (two dates for instance) separated by '$'
WHERE = 'altOrderId:eq:ExampleString'
# Replace with your desired limit of how many messages you receive. The default limit is 500
LIMIT = 500
# Order clause eg. "(field1:DESC | field1:ASC | field2:DESC:ABS | field2:ASC:ABS" (default is unordered; default is faster)
ORDER = 'sysRealm:ASC'
# Request Parameters for getmsgs Of The MsgType
params = {
# Required Parameters
"apiKey": API_KEY,
"cmd": 'getmsgs',
"msgType": MSG_TYPE,
# Optional Parameters
"view": VIEW,
"where": WHERE,
"limit": LIMIT,
"order": ORDER
}
response = requests.get(MLINK_PROD_URL, params=params)
curl -G 'https://mlink-live.nms.saturn.spiderrockconnect.com/rest/json' \
--data-urlencode 'apiKey=XXXX-XXXX-XXXX-XXXX' \
--data-urlencode 'cmd=getmsgs' \
--data-urlencode 'msgType=SpdrChildOrder' \
--data-urlencode 'view=sysRealm|sysEnvironment|runStatus|custClOrdId|altOrderId|altAccount|altUserName|recordVersion|recordSource|riskGroupId|triggerGroupId|triggerTimestamp|parentNumber|parentVersion|baseParentNumber|prevParentNumber|parent390Number|packageId|spdrSource|groupingCode|responseId|responseType|streetClOrdId|streetOrderId|streetDirected|streetHeld|accnt|clientFirm|strategyAccnt|coreClientFirm|sponsorClientFirm|priAggGroup|secAggGroup|noCrossGroup|userName|childShape|routeType|secKey|secType|fkey|ticker|stripe|engineName|destinationType|routingCode|orderSize|orderSide|isFlipSide|priceType|orderPrice|exchOrderPrice|exchDisplayFactor|exchMinTickSize|exchPricePrecision|orderExch|orderExDest|isDirected|timeInForce|orderExpireDttm|marketSession|massQte|isoSweep|makeOnly|doNotRoute|waitTriggerId|contingency|contingentLevel|contingentSecKey|action|tick2Action|actionLatency|orderType|pegOffset|isPegOrder|tradingSession|underliersPerCn|underlierType|tickValue|pointValue|pointCurrency|uPrcRatio|securityID|securityDesc|productGroup|productClass|productComplex|mic|undKey|undType|childOrderHandling|algoHandler|algoMifidId|strategy|method|source|externParam|mktDataDetail|mmPrefCode|mmCredit|riskResetCode|firmType|orderCapacity|ssaleFlag|positionType|futCustType|futClearRng|firmPosition|openSellSh|locateQuan|locateFirm|locatePool|requireLocate|exchTraderId|largeTraderId|tradingLocation|clearingFirm|clearingAccnt|execBrkrCode|execBrkrMPID|execBrkrAccnt|execBrkrClFirm|execBrkrUserName|clearingFlipType|clearingFlipFirm|clearingFlipAccnt|clearingAgent|clearingTaxID|clearingBrkrMPID|badge|relationshipType|orderStatus|rejectReason|orderCreateDttm|orderCreateLatency|orderCreateReason|orderCreatePriority|orderCancelText|orderCancelDttm|orderCancelLatency|orderCancelReason|orderCancelPriority|orderSendTimestamp|orderWorkingDttm|orderClosedDttm|orderCancelFlag|isPersistent|lastStreetText|cumFillQuantity|avgFillPrice|cumFillQtyExec|avgFillPrcExec|lastMsgSeqNum|numExecutions|leavesQty|uLevel|uContingency|makerTaker|parentLmtPrice|parentLmtRefUPrc|nbboBid|nbboAsk|nbboBidSz|nbboAskSz|exchBid|exchAsk|exchBidSz|exchAskSz|mktStance|uPrc|uBid|uAsk|uBidSz|uAskSz|uBidCxl|uAskCxl|surfVol|surfPrice|childVol|childProb|childVolAtm|cnDe|cnDd|cnVe|riskStkSize|riskFutSize|riskOptSize|riskVega|riskWtVega|riskNValue|riskDelta|riskDDelta|riskRm1|riskRm2|riskRm3|riskRm4|riskRm5|riskRm6|riskRm7|marginUDnVDn|marginUDnVUp|marginUUpVDn|marginUUpVUp|riskU50Dn|riskU50Up|catSrcBrkrIMID|catReportable|catSrcAccntType|catSrcFirmType|catDestFirmIMID|catDestDeptType|catExchSessionID|catParentCreateDttm|catParentCancelDttm|catAccnt|catBrkrAccnt|catAccntOriginCode|userData1|userData2|childData|timestamp|completionType|completionState|completionRefUPrc|completionRefDelta|avgCompletionPrice|completionSecKey|completionSecType|faceClOrdId|noticeNumber|faceCrossHandling|faceCrossAttr|faceHasBestPrice|faceBestOrderPrice|faceParticipation|faceCumFillQuantity|faceAvgFillPrice|faceLeavesQty|stockLeg' \
--data-urlencode 'where=altOrderId:eq:ExampleString' \
--data-urlencode 'limit=500' \
--data-urlencode 'order=sysRealm:ASC'
Get Aggregate API Call
- Python
- cUrl
import requests
# Replace with your desired MLINK URL
MLINK_PROD_URL = 'https://mlink-live.nms.saturn.spiderrockconnect.com/rest/json'
# Replace with your MLINK API Key
API_KEY = 'XXXX-XXXX-XXXX-XXXX'
# Replace with your desired MsgType.
MSG_TYPE = 'SpdrChildOrder'
# Replace with fields you want to see aggregate values for. A "|" separated list of measures should be provided
MEASURE = 'sysRealm|sysEnvironment|runStatus|custClOrdId|altOrderId|altAccount|altUserName|recordVersion|recordSource|riskGroupId|triggerGroupId|triggerTimestamp|parentNumber|parentVersion|baseParentNumber|prevParentNumber|parent390Number|packageId|spdrSource|groupingCode|responseId|responseType|streetClOrdId|streetOrderId|streetDirected|streetHeld|accnt|clientFirm|strategyAccnt|coreClientFirm|sponsorClientFirm|priAggGroup|secAggGroup|noCrossGroup|userName|childShape|routeType|secKey|secType|fkey|ticker|stripe|engineName|destinationType|routingCode|orderSize|orderSide|isFlipSide|priceType|orderPrice|exchOrderPrice|exchDisplayFactor|exchMinTickSize|exchPricePrecision|orderExch|orderExDest|isDirected|timeInForce|orderExpireDttm|marketSession|massQte|isoSweep|makeOnly|doNotRoute|waitTriggerId|contingency|contingentLevel|contingentSecKey|action|tick2Action|actionLatency|orderType|pegOffset|isPegOrder|tradingSession|underliersPerCn|underlierType|tickValue|pointValue|pointCurrency|uPrcRatio|securityID|securityDesc|productGroup|productClass|productComplex|mic|undKey|undType|childOrderHandling|algoHandler|algoMifidId|strategy|method|source|externParam|mktDataDetail|mmPrefCode|mmCredit|riskResetCode|firmType|orderCapacity|ssaleFlag|positionType|futCustType|futClearRng|firmPosition|openSellSh|locateQuan|locateFirm|locatePool|requireLocate|exchTraderId|largeTraderId|tradingLocation|clearingFirm|clearingAccnt|execBrkrCode|execBrkrMPID|execBrkrAccnt|execBrkrClFirm|execBrkrUserName|clearingFlipType|clearingFlipFirm|clearingFlipAccnt|clearingAgent|clearingTaxID|clearingBrkrMPID|badge|relationshipType|orderStatus|rejectReason|orderCreateDttm|orderCreateLatency|orderCreateReason|orderCreatePriority|orderCancelText|orderCancelDttm|orderCancelLatency|orderCancelReason|orderCancelPriority|orderSendTimestamp|orderWorkingDttm|orderClosedDttm|orderCancelFlag|isPersistent|lastStreetText|cumFillQuantity|avgFillPrice|cumFillQtyExec|avgFillPrcExec|lastMsgSeqNum|numExecutions|leavesQty|uLevel|uContingency|makerTaker|parentLmtPrice|parentLmtRefUPrc|nbboBid|nbboAsk|nbboBidSz|nbboAskSz|exchBid|exchAsk|exchBidSz|exchAskSz|mktStance|uPrc|uBid|uAsk|uBidSz|uAskSz|uBidCxl|uAskCxl|surfVol|surfPrice|childVol|childProb|childVolAtm|cnDe|cnDd|cnVe|riskStkSize|riskFutSize|riskOptSize|riskVega|riskWtVega|riskNValue|riskDelta|riskDDelta|riskRm1|riskRm2|riskRm3|riskRm4|riskRm5|riskRm6|riskRm7|marginUDnVDn|marginUDnVUp|marginUUpVDn|marginUUpVUp|riskU50Dn|riskU50Up|catSrcBrkrIMID|catReportable|catSrcAccntType|catSrcFirmType|catDestFirmIMID|catDestDeptType|catExchSessionID|catParentCreateDttm|catParentCancelDttm|catAccnt|catBrkrAccnt|catAccntOriginCode|userData1|userData2|childData|timestamp|completionType|completionState|completionRefUPrc|completionRefDelta|avgCompletionPrice|completionSecKey|completionSecType|faceClOrdId|noticeNumber|faceCrossHandling|faceCrossAttr|faceHasBestPrice|faceBestOrderPrice|faceParticipation|faceCumFillQuantity|faceAvgFillPrice|faceLeavesQty|stockLeg'
# Replace with fields you want to see aggregated. A "|" separated list of fields should be provided
GROUP = 'sysRealm|sysEnvironment|runStatus|recordSource|spdrSource|streetDirected|streetHeld|childShape|routeType|secType|destinationType|orderSide|isFlipSide|priceType|isDirected|timeInForce|marketSession|massQte|isoSweep|makeOnly|doNotRoute|contingency|action|orderType|isPegOrder|tradingSession|underlierType|pointCurrency|productClass|undType|algoHandler|firmType|orderCapacity|ssaleFlag|positionType|futCustType|futClearRng|requireLocate|clearingFlipType|relationshipType|orderStatus|rejectReason|orderCreateReason|orderCreatePriority|orderCancelReason|orderCancelPriority|orderCancelFlag|isPersistent|uContingency|makerTaker|mktStance|catReportable|catSrcAccntType|catSrcFirmType|catDestDeptType|completionType|completionState|completionSecType|faceCrossHandling|faceCrossAttr|faceHasBestPrice|faceParticipation|stockLeg'
# Replace with your desired where clause.
# a string in the form "field1:eq:value" or "(field1:ne:value1 & field1:ne:value2)
# "WHERE" clauses can contain the following comparison symbols:
# :gt: is greater than
# :ge: is greater than or equal to
# :lt: is less than
# :le: is less than or equal to
# :eq: is equal
# :ne: is not equal
# %26 is an AND statement
# | is an OR statement
# :sw: is starts with
# :ew: is ends with
# :cv: is contains values
# :nv: is does not contain value
# :cb: is contained between (two dates for instance) separated by '$'
WHERE = 'altOrderId:eq:ExampleString'
# Request Parameters for getaggregate Of The MsgType
params = {
# Required Parameters
"apiKey": API_KEY,
"cmd": 'getaggregate',
"msgType": MSG_TYPE,
"measure": MEASURE,
"group": GROUP,
# Optional Parameters
"where": WHERE,
}
response = requests.get(MLINK_PROD_URL, params=params)
curl -G 'https://mlink-live.nms.saturn.spiderrockconnect.com/rest/json' \
--data-urlencode 'apiKey=XXXX-XXXX-XXXX-XXXX' \
--data-urlencode 'cmd=getaggregate' \
--data-urlencode 'msgType=SpdrChildOrder' \
--data-urlencode 'measure=sysRealm|sysEnvironment|runStatus|custClOrdId|altOrderId|altAccount|altUserName|recordVersion|recordSource|riskGroupId|triggerGroupId|triggerTimestamp|parentNumber|parentVersion|baseParentNumber|prevParentNumber|parent390Number|packageId|spdrSource|groupingCode|responseId|responseType|streetClOrdId|streetOrderId|streetDirected|streetHeld|accnt|clientFirm|strategyAccnt|coreClientFirm|sponsorClientFirm|priAggGroup|secAggGroup|noCrossGroup|userName|childShape|routeType|secKey|secType|fkey|ticker|stripe|engineName|destinationType|routingCode|orderSize|orderSide|isFlipSide|priceType|orderPrice|exchOrderPrice|exchDisplayFactor|exchMinTickSize|exchPricePrecision|orderExch|orderExDest|isDirected|timeInForce|orderExpireDttm|marketSession|massQte|isoSweep|makeOnly|doNotRoute|waitTriggerId|contingency|contingentLevel|contingentSecKey|action|tick2Action|actionLatency|orderType|pegOffset|isPegOrder|tradingSession|underliersPerCn|underlierType|tickValue|pointValue|pointCurrency|uPrcRatio|securityID|securityDesc|productGroup|productClass|productComplex|mic|undKey|undType|childOrderHandling|algoHandler|algoMifidId|strategy|method|source|externParam|mktDataDetail|mmPrefCode|mmCredit|riskResetCode|firmType|orderCapacity|ssaleFlag|positionType|futCustType|futClearRng|firmPosition|openSellSh|locateQuan|locateFirm|locatePool|requireLocate|exchTraderId|largeTraderId|tradingLocation|clearingFirm|clearingAccnt|execBrkrCode|execBrkrMPID|execBrkrAccnt|execBrkrClFirm|execBrkrUserName|clearingFlipType|clearingFlipFirm|clearingFlipAccnt|clearingAgent|clearingTaxID|clearingBrkrMPID|badge|relationshipType|orderStatus|rejectReason|orderCreateDttm|orderCreateLatency|orderCreateReason|orderCreatePriority|orderCancelText|orderCancelDttm|orderCancelLatency|orderCancelReason|orderCancelPriority|orderSendTimestamp|orderWorkingDttm|orderClosedDttm|orderCancelFlag|isPersistent|lastStreetText|cumFillQuantity|avgFillPrice|cumFillQtyExec|avgFillPrcExec|lastMsgSeqNum|numExecutions|leavesQty|uLevel|uContingency|makerTaker|parentLmtPrice|parentLmtRefUPrc|nbboBid|nbboAsk|nbboBidSz|nbboAskSz|exchBid|exchAsk|exchBidSz|exchAskSz|mktStance|uPrc|uBid|uAsk|uBidSz|uAskSz|uBidCxl|uAskCxl|surfVol|surfPrice|childVol|childProb|childVolAtm|cnDe|cnDd|cnVe|riskStkSize|riskFutSize|riskOptSize|riskVega|riskWtVega|riskNValue|riskDelta|riskDDelta|riskRm1|riskRm2|riskRm3|riskRm4|riskRm5|riskRm6|riskRm7|marginUDnVDn|marginUDnVUp|marginUUpVDn|marginUUpVUp|riskU50Dn|riskU50Up|catSrcBrkrIMID|catReportable|catSrcAccntType|catSrcFirmType|catDestFirmIMID|catDestDeptType|catExchSessionID|catParentCreateDttm|catParentCancelDttm|catAccnt|catBrkrAccnt|catAccntOriginCode|userData1|userData2|childData|timestamp|completionType|completionState|completionRefUPrc|completionRefDelta|avgCompletionPrice|completionSecKey|completionSecType|faceClOrdId|noticeNumber|faceCrossHandling|faceCrossAttr|faceHasBestPrice|faceBestOrderPrice|faceParticipation|faceCumFillQuantity|faceAvgFillPrice|faceLeavesQty|stockLeg' \
--data-urlencode 'group=sysRealm|sysEnvironment|runStatus|recordSource|spdrSource|streetDirected|streetHeld|childShape|routeType|secType|destinationType|orderSide|isFlipSide|priceType|isDirected|timeInForce|marketSession|massQte|isoSweep|makeOnly|doNotRoute|contingency|action|orderType|isPegOrder|tradingSession|underlierType|pointCurrency|productClass|undType|algoHandler|firmType|orderCapacity|ssaleFlag|positionType|futCustType|futClearRng|requireLocate|clearingFlipType|relationshipType|orderStatus|rejectReason|orderCreateReason|orderCreatePriority|orderCancelReason|orderCancelPriority|orderCancelFlag|isPersistent|uContingency|makerTaker|mktStance|catReportable|catSrcAccntType|catSrcFirmType|catDestDeptType|completionType|completionState|completionSecType|faceCrossHandling|faceCrossAttr|faceHasBestPrice|faceParticipation|stockLeg' \
--data-urlencode 'where=altOrderId:eq:ExampleString'
Get Count API Call
- Python
- cUrl
import requests
# Replace with your desired MLINK URL
MLINK_PROD_URL = 'https://mlink-live.nms.saturn.spiderrockconnect.com/rest/json'
# Replace with your MLINK API Key
API_KEY = 'XXXX-XXXX-XXXX-XXXX'
# Replace with your desired MsgType.
MSG_TYPE = 'SpdrChildOrder'
# Replace with your desired where clause.
# a string in the form "field1:eq:value" or "(field1:ne:value1 & field1:ne:value2)
# "WHERE" clauses can contain the following comparison symbols:
# :gt: is greater than
# :ge: is greater than or equal to
# :lt: is less than
# :le: is less than or equal to
# :eq: is equal
# :ne: is not equal
# %26 is an AND statement
# | is an OR statement
# :sw: is starts with
# :ew: is ends with
# :cv: is contains values
# :nv: is does not contain value
# :cb: is contained between (two dates for instance) separated by '$'
WHERE = 'altOrderId:eq:ExampleString'
# Request Parameters for getCount Of The MsgType
params = {
# Required Parameters
"apiKey": API_KEY,
"cmd": 'getcount',
"msgType": MSG_TYPE,
# Optional Parameters
"where": WHERE,
}
response = requests.get(MLINK_PROD_URL, params=params)
curl -G 'https://mlink-live.nms.saturn.spiderrockconnect.com/rest/json' \
--data-urlencode 'apiKey=XXXX-XXXX-XXXX-XXXX' \
--data-urlencode 'cmd=getcount' \
--data-urlencode 'msgType=SpdrChildOrder' \
--data-urlencode 'where=altOrderId:eq:ExampleString'