Skip to main content
Version: Staging

Schema: SpdrParentReviewResponse (ID: 4200)

SpdrParentReviewResponse records are created when a parent order review request is completed

METADATA

AttributeValue
Topic4195-parent-review
MLink TokenSystemData
SRSE ProductSRTrade

Note: The symbol = next to a field number indicates that it is a primary key.

BODY

#FieldTypeComment
10=parentNumberlongSPDR order number
100sysEnvironmentenum : SysEnvironmentoriginal (source) sys environment [Stable, Current, etc]
103runStatusenum : RunStatusoriginal (source) run status [Prod,Beta]
106parentShapeenum : SpdrOrderShapeParent Shape [Single, Cross, MLeg, MLegCross]
109altOrderIdstring(24)alternate order ID (usually clOrdId from client)
112altPrevOrderIdstring(24)alternate prev order ID (usually origClOrdId from client during cxl/replace)
115altAccntstring(32)alternate (client assigned) "long" account string (optional) [used to map between client and SR account strings]
118altUserNamestring(24)alternate (client assigned) user name (optional) [used to map between client and SR account strings]
121secKeyOptionKeyComposite Security Key
124secTypeenum : SpdrKeyTypeSecurity Type [Stock, Future, Option]
127securityDesctext1additional security description
130accntstring(16)SR trading account
133clientFirmstring(16)SR client firm
136spdrSourceenum : SpdrSourcefrom original parent order
139groupingCodelongfrom original parent order
142clientClOrdIdstring(24)client ClOrdId (if handled by ClientGateway)
145srcRoutingCodestring(65)RoutingCode (if handled by ClientGateway)
148strategystring(36)client-supplied strategy string;visible on SpiderRock GUI tools and other order reports.
151userNamestring(24)name of the user entering the order
154orderSideenum : BuySell
157orderSizeintmaximum fill size (contracts) [can be less than requested]
160orderActiveSizeint
163reviewResultenum : ReviewResult
166reviewTexttext1review release / reject text (will be showed to the user submitting the parent order)
169responseSpdrSourceenum : SpdrSourcesource of the response (SRSE, FIX, etc)
172responseClOrdIdstring(24)review request / response clOrdID (if any)
175responseOrigClOrdIdstring(24)review request / response orig clOrdID
178responseCancelClOrdIdstring(24)review request / response cancel clOrdID
181firmTypeenum : FirmTypewill override firmType on the original parent order (if != None)
184orderCapacityenum : OrderCapacitywill override orderCapacity on the original parent order (if != None)
187positionTypeenum : PositionTypewill override positionType on the original parent order (if != None)
190ssaleFlagenum : ShortSaleFlagwill override ssaleFlag on the original parent order (if != None)
193locateQuanintlocate quantity
196locateFirmstring(6)locate firm
199locatePoolstring(16)locate pool @ firm granting the locate
202userData1text1will override value on original parent order (if != null)
205userData2text1will override value on the original parent order (if != null)
208childDatatext1will override value on the original parent order (if != null)
211timestampDateTime

REPEATING FIELDS

OrderLegs

FieldTypeComment
217tickerTickerKey
220stockSideenum : BuySell
223stockSharesint
226ssaleFlagenum : ShortSaleFlag
229reviewStkLegIdstring(24)
232reviewStkLegAltIdstring(24)
235numLegsbyte
238secKey1OptionKey
241secType1enum : SpdrKeyType
244mult1ushort
247side1enum : BuySell
250posType1enum : PositionType
253ssaleFlag1enum : ShortSaleFlag
256reviewLegId1string(24)
259reviewLegAltId1string(24)
262secKey2OptionKey
265secType2enum : SpdrKeyType
268mult2ushort
271side2enum : BuySell
274posType2enum : PositionType
277ssaleFlag2enum : ShortSaleFlag
280reviewLegId2string(24)
283reviewLegAltId2string(24)
286secKey3OptionKey
289secType3enum : SpdrKeyType
292mult3ushort
295side3enum : BuySell
298posType3enum : PositionType
301ssaleFlag3enum : ShortSaleFlag
304reviewLegId3string(24)
307reviewLegAltId3string(24)
310secKey4OptionKey
313secType4enum : SpdrKeyType
316mult4ushort
319side4enum : BuySell
322posType4enum : PositionType
325ssaleFlag4enum : ShortSaleFlag
328reviewLegId4string(24)
331reviewLegAltId4string(24)
334secKey5OptionKey
337secType5enum : SpdrKeyType
340mult5ushort
343side5enum : BuySell
346posType5enum : PositionType
349ssaleFlag5enum : ShortSaleFlag
352reviewLegId5string(24)
355reviewLegAltId5string(24)
358secKey6OptionKey
361secType6enum : SpdrKeyType
364mult6ushort
367side6enum : BuySell
370posType6enum : PositionType
373ssaleFlag6enum : ShortSaleFlag
376reviewLegId6string(24)
379reviewLegAltId6string(24)

Get Schema API Call

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 = 'SpdrParentReviewResponse'

# 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)

Get Msg API Call

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 = 'SpdrParentReviewResponse'

# 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 = 'sysEnvironment|runStatus|parentShape|altOrderId|altPrevOrderId|altAccnt|altUserName|secKey|secType|securityDesc|accnt|clientFirm|spdrSource|groupingCode|clientClOrdId|srcRoutingCode|strategy|userName|orderSide|orderSize|orderActiveSize|reviewResult|reviewText|responseSpdrSource|responseClOrdId|responseOrigClOrdId|responseCancelClOrdId|firmType|orderCapacity|positionType|ssaleFlag|locateQuan|locateFirm|locatePool|userData1|userData2|childData|timestamp'

# 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)

Get Msgs API Call

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 = 'SpdrParentReviewResponse'

# Replace with your desired view. A "|" separated list of views can be provided
# If no view is provided, all views will be returned
VIEW = 'sysEnvironment|runStatus|parentShape|altOrderId|altPrevOrderId|altAccnt|altUserName|secKey|secType|securityDesc|accnt|clientFirm|spdrSource|groupingCode|clientClOrdId|srcRoutingCode|strategy|userName|orderSide|orderSize|orderActiveSize|reviewResult|reviewText|responseSpdrSource|responseClOrdId|responseOrigClOrdId|responseCancelClOrdId|firmType|orderCapacity|positionType|ssaleFlag|locateQuan|locateFirm|locatePool|userData1|userData2|childData|timestamp'

# 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 = 'sysEnvironment: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)

Get Aggregate API Call

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 = 'SpdrParentReviewResponse'

# Replace with fields you want to see aggregate values for. A "|" separated list of measures should be provided
MEASURE = 'sysEnvironment|runStatus|parentShape|altOrderId|altPrevOrderId|altAccnt|altUserName|secKey|secType|securityDesc|accnt|clientFirm|spdrSource|groupingCode|clientClOrdId|srcRoutingCode|strategy|userName|orderSide|orderSize|orderActiveSize|reviewResult|reviewText|responseSpdrSource|responseClOrdId|responseOrigClOrdId|responseCancelClOrdId|firmType|orderCapacity|positionType|ssaleFlag|locateQuan|locateFirm|locatePool|userData1|userData2|childData|timestamp'

# Replace with fields you want to see aggregated. A "|" separated list of fields should be provided
GROUP = 'sysEnvironment|runStatus|parentShape|secType|spdrSource|orderSide|reviewResult|responseSpdrSource|firmType|orderCapacity|positionType|ssaleFlag'

# 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)

Get Count API Call

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 = 'SpdrParentReviewResponse'

# 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)