Schema: NoticeExecReport (ID: 2475)
METADATA
Attribute | Value |
---|---|
Topic | 2450-liquidity-notice |
MLink Token | SRATS |
SRSE Product | SRTrade |
Note: The symbol
=
next to a field number indicates that it is a primary key.
BODY
# | Field | Type | Comment |
---|---|---|---|
10= | noticeNumber | long | AuctionNotice.noticeNumber |
11= | baseParentNumber | long | |
100 | ticker | TickerKey | underlier ticker |
103 | tradeDate | DateKey | |
106 | accnt | string(16) | SR Accnt |
109 | clientFirm | string(16) | SR ClientFirm |
112 | noticeDttm | DateTime | either notice create datetime or notice arrival@SR datetime (high precision) |
115 | responseId | string(24) | from NoticeResponse.responseId (most recently processed response to noticeNumber for this accnt/clientFirm pair) |
118 | respOrigin | enum : SpdrSource | AutoResponder, MLINK, FIX, ICEChat, TradeAp responders |
121 | stageType | enum : SpdrStageType | response staged or not |
124 | auctionType | enum : AuctionType | Exch Exposure, Exch Price Improve, Exch Facilitation, Exch Solicitation, SR ATS Block, SR ATS Flash |
127 | auctionSource | enum : AuctionSource | Source of the auction notice (eg. SRC, CBOE, MIAX, etc.) |
130 | respDttm | DateTime | response arrival dttm (high precision) |
133 | respSide | enum : BuySell | |
136 | respSize | int | |
139 | respActiveSize | int | active response order size (zero for ActiveHold) |
142 | respPrice | double | effRespPrice = respPrice + de * (uMid - refUPrc) + 0.5 * ga * (uMid - refUPrc)^2 |
145 | refUPrc | double | reference price for tied to underlier orders (mid-market tie) (block auctions only) |
148 | refDe | float | reference delta for tied to underlier orders (zero if tie is not desired) (block auctions only) |
151 | refGa | float | reference gamma for tied to underlier orders (zero if tie is not desired) (block auctions only) |
154 | roundRule | enum : RoundRule | Exact (100%) or Fuzzy (90%) [default is Exact] (block auctions only) |
157 | stepUpIncr | double | additional price increment (best price) (typically only used if auction is competitive) |
160 | riskGroupId | long | any auction response is associated with this riskGroupID (and SpdrRiskGroupControl) |
163 | strategy | string(32) | user strategy field (visible on SR tools) |
166 | userData1 | text1 | user data field (free text) (from NoticeResponse) |
169 | respStatus | enum : SpdrOrderStatus | |
172 | respDetail | text1 | |
175 | lastUPrc | double | effective uPrc (mid-market) from last trial pass |
178 | lastTrialPrc | double | effective response price from last trial pass |
181 | leavesQty | int | open order quantity |
184 | cumFillQty | int | pkg cumFillQty if MLeg |
187 | avgFillPrice | double | pkg avgFillPrice if MLeg |
190 | addLatency | double | latency from notice arrival@SR to external response send (in seconds) OR latency from notice create to response accepted (in seconds) (SRC Auctions) |
193 | ackLatency | double | latency from external response send to external response ack (FRT) (in seconds) (external auctions only) |
196 | numOptLegs | int | number of option legs |
199 | spreadClass | enum : SpreadClass | spread class (eg. Call, Put, RevCon, Box, JRoll, etc.) |
202 | spreadFlavor | enum : SpreadFlavor | spread flavor (Normal, Flipped) of this order |
205 | containsHedge | enum : YesNo | if this order contains a stock/future leg |
208 | containsFlex | enum : YesNo | if this order contains flex leg(s) |
211 | containsMultiHedge | enum : YesNo | contains MultiHedge (corp action adjusted) options |
238 | responseResult | enum : NoticeResult | |
241 | responseTime | short | notice response arrival time (milliseconds since auction start) |
244 | prtPrice | double | reported print price (pkgPrice if MLeg) |
247 | prtSize | int | reported print size (pgkSize if MLeg) |
250 | prtTime | DateTime | reported print time (1st print if MLeg) |
253 | prtUBid | double | best estimate of uBid @ auction print time |
256 | prtUAsk | double | best estimate of uAsk @ auction print time |
259 | timestamp | DateTime |
REPEATING FIELDS
OrderLegs
Field | Type | Comment |
---|---|---|
217 | secKey | OptionKey |
220 | secType | enum : SpdrKeyType |
223 | side | enum : BuySell |
226 | ratio | int |
229 | positionType | enum : LegPositionType |
232 | legCumFillQty | int |
235 | legAvgFillPrice | 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 = 'NoticeExecReport'
# 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=NoticeExecReport'
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 = 'NoticeExecReport'
# 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 = 'ticker|tradeDate|accnt|clientFirm|noticeDttm|responseId|respOrigin|stageType|auctionType|auctionSource|respDttm|respSide|respSize|respActiveSize|respPrice|refUPrc|refDe|refGa|roundRule|stepUpIncr|riskGroupId|strategy|userData1|respStatus|respDetail|lastUPrc|lastTrialPrc|leavesQty|cumFillQty|avgFillPrice|addLatency|ackLatency|numOptLegs|spreadClass|spreadFlavor|containsHedge|containsFlex|containsMultiHedge|responseResult|responseTime|prtPrice|prtSize|prtTime|prtUBid|prtUAsk|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 = 'accnt: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=NoticeExecReport' \
--data-urlencode 'view=ticker|tradeDate|accnt|clientFirm|noticeDttm|responseId|respOrigin|stageType|auctionType|auctionSource|respDttm|respSide|respSize|respActiveSize|respPrice|refUPrc|refDe|refGa|roundRule|stepUpIncr|riskGroupId|strategy|userData1|respStatus|respDetail|lastUPrc|lastTrialPrc|leavesQty|cumFillQty|avgFillPrice|addLatency|ackLatency|numOptLegs|spreadClass|spreadFlavor|containsHedge|containsFlex|containsMultiHedge|responseResult|responseTime|prtPrice|prtSize|prtTime|prtUBid|prtUAsk|timestamp' \
--data-urlencode 'where=accnt: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 = 'NoticeExecReport'
# Replace with your desired view. A "|" separated list of views can be provided
# If no view is provided, all views will be returned
VIEW = 'ticker|tradeDate|accnt|clientFirm|noticeDttm|responseId|respOrigin|stageType|auctionType|auctionSource|respDttm|respSide|respSize|respActiveSize|respPrice|refUPrc|refDe|refGa|roundRule|stepUpIncr|riskGroupId|strategy|userData1|respStatus|respDetail|lastUPrc|lastTrialPrc|leavesQty|cumFillQty|avgFillPrice|addLatency|ackLatency|numOptLegs|spreadClass|spreadFlavor|containsHedge|containsFlex|containsMultiHedge|responseResult|responseTime|prtPrice|prtSize|prtTime|prtUBid|prtUAsk|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 = 'accnt: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 = 'ticker: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=NoticeExecReport' \
--data-urlencode 'view=ticker|tradeDate|accnt|clientFirm|noticeDttm|responseId|respOrigin|stageType|auctionType|auctionSource|respDttm|respSide|respSize|respActiveSize|respPrice|refUPrc|refDe|refGa|roundRule|stepUpIncr|riskGroupId|strategy|userData1|respStatus|respDetail|lastUPrc|lastTrialPrc|leavesQty|cumFillQty|avgFillPrice|addLatency|ackLatency|numOptLegs|spreadClass|spreadFlavor|containsHedge|containsFlex|containsMultiHedge|responseResult|responseTime|prtPrice|prtSize|prtTime|prtUBid|prtUAsk|timestamp' \
--data-urlencode 'where=accnt:eq:ExampleString' \
--data-urlencode 'limit=500' \
--data-urlencode 'order=ticker: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 = 'NoticeExecReport'
# Replace with fields you want to see aggregate values for. A "|" separated list of measures should be provided
MEASURE = 'ticker|tradeDate|accnt|clientFirm|noticeDttm|responseId|respOrigin|stageType|auctionType|auctionSource|respDttm|respSide|respSize|respActiveSize|respPrice|refUPrc|refDe|refGa|roundRule|stepUpIncr|riskGroupId|strategy|userData1|respStatus|respDetail|lastUPrc|lastTrialPrc|leavesQty|cumFillQty|avgFillPrice|addLatency|ackLatency|numOptLegs|spreadClass|spreadFlavor|containsHedge|containsFlex|containsMultiHedge|responseResult|responseTime|prtPrice|prtSize|prtTime|prtUBid|prtUAsk|timestamp'
# Replace with fields you want to see aggregated. A "|" separated list of fields should be provided
GROUP = 'respOrigin|stageType|auctionType|auctionSource|respSide|roundRule|respStatus|spreadClass|spreadFlavor|containsHedge|containsFlex|containsMultiHedge|responseResult'
# 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 = 'accnt: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=NoticeExecReport' \
--data-urlencode 'measure=ticker|tradeDate|accnt|clientFirm|noticeDttm|responseId|respOrigin|stageType|auctionType|auctionSource|respDttm|respSide|respSize|respActiveSize|respPrice|refUPrc|refDe|refGa|roundRule|stepUpIncr|riskGroupId|strategy|userData1|respStatus|respDetail|lastUPrc|lastTrialPrc|leavesQty|cumFillQty|avgFillPrice|addLatency|ackLatency|numOptLegs|spreadClass|spreadFlavor|containsHedge|containsFlex|containsMultiHedge|responseResult|responseTime|prtPrice|prtSize|prtTime|prtUBid|prtUAsk|timestamp' \
--data-urlencode 'group=respOrigin|stageType|auctionType|auctionSource|respSide|roundRule|respStatus|spreadClass|spreadFlavor|containsHedge|containsFlex|containsMultiHedge|responseResult' \
--data-urlencode 'where=accnt: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 = 'NoticeExecReport'
# 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 = 'accnt: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=NoticeExecReport' \
--data-urlencode 'where=accnt:eq:ExampleString'