Skip to main content
Version: 8.5.11.3

Schema: AccountExchGroupConfig (ID: 1806)

METADATA

AttributeValue
Topic1800-client-config
MLink TokenClientConfig
SRSE Product

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

BODY

#FieldTypeDefault ValueComment
10=accntstring(16)
13=clientFirmstring(16)SR assigned client firm acronym
11=exchGroupenum : ExchGroupeg (NMS, CMX, ICE, SCE)
12=secTypeenum : SpdrSecTypeeg (Stock, Future, Option)
100execEngineModeenum : ExecEngineMode
290stageReviewenum : StageReviewStrict will re-review user changes; Normal will re-review size incr only
301reviewExDeststring(16)order routing string (if any) [StageReview Orders]
109allowReviewExecsenum : YesNoallow stage review executions [StageReview Orders]
291stageReviewURLtext1Stage Review URL for this account (HTTP(S) / REST / WS)
112priAggGroupstring(16)primary stk grouping code (for computing aggregate positions) [default = ClientFirm]
115secAggGroupstring(16)secondary stk grouping code (for computing aggregate positions) [default = ""]
118userMarkingenum : YesNousers are required to do the long/short marking on orders
310requireLocateenum : RequireLocatelocate check enforced in SR systems
124requireExternPosenum : YesNoall sell orders require an ExternAggGroupReport (externSource = SRSE) record
127locateFirmstring(6)locate firm [must be one of the items in the clientFirmConfig.LocatePool list]
130locatePoolstring(16)locate pool @ firm granting the locate
307ticketLocateFirmstring(6)ticket/chat (default) locate firm (only used for chat/concierge locate scenarios)
133firmTypeenum : FirmType
136orderCapacityenum : OrderCapacityOrder capacity
139custOrderCapacityenum : OrderCapacityOrder capacity of Account at Customer's Firm
119badgestring(16)exchange memembership and badge id
142futClearingRangeenum : FutClearingRange
145futCustTypeenum : FutCustType
311cmeStpIdlongCME Self-Trade Prevention ID (co-ordinate with client for value)
312cmeStpInstructionenum : StpInstructionCME Self-Trade Prevention Instruction (default: Cancel Oldest)
148isLowVelocityenum : YesNoif Yes all 390Rule counters will be computed even if not a PriorityCust
151catReportableenum : CatReportTypeCAT reportable type
154catAccntstring(40)CAT Firm Designated ID
157catBrkrAccntstring(40)Brkrs CAT Firm Designated ID
160catBrkrAccntTypeenum : CatAccntTypeCAT account holder type
163catBrkrFirmTypeenum : CatFirmTypeCAT source firm type
166catBrkrIMIDstring(16)B/D firm FDID (only if client is a B/D) (supplied by FINRA fbo client)
169clientAccntstring(32)client assigned account string (optional) [overrides AccountConfig.clientAccnt]
172clientUserNamestring(32)client assigned account userName (optional) [overrides AccountConfig.clientUserName]
175allocMethodenum : AllocMethodmethod for delivery of the allocation instruction to the broker
178allocMLegRuleenum : AllocMLegRulerule for how to send allocation instructions for mleg orders to the broker
181allocAccntstring(16)
302allocExDeststring(16)allocation routing string (if any) [Allocation Messages]
187execBrkrAccntAllocstring(16)exec broker account (usually Account)
190execBrkrClFirmAllocstring(16)exec broker client/firm (supplied by exec broker) (usually OnBehalfOfCompId<115>)
193execBrkrUserNameAllocstring(16)
196clearingFirmNamestring(24)string name (can be anything) [commonly used by position loaders] (not used in any FIX message)
199clearingFirmstring(4)stock clearing firm name or code [books and records only; not visible in fix templates]
202clearingAccntstring(16)eg C233702
205clientAccntIdstext2all other accounts that affect this accounts position (eg. C233702, C233703). Affects incoming FIX drops (and perhaps scripts).
208positionSrcenum : PositionSourceSR = use SR rotated positions; CLR = use clearing records; CLR_SR = use clearing records if loaded but fallback to SR positions; Default (None) = behaves like CLR_SR
211clearingLoadTimeenum : ClearingLoadTime
214tiedPriceRoundingenum : TiedPriceRoundingoption limit price rounding rule: Loose = up to 1/4 tick extra; Strict = never exceed limit
305algoFlashPctbytepercent of orders for which algo will start flash auctions [0 - 100]
306algoBlockPctbytepercent of orders for which algo will start block auctions [0 - 100]
220canISOSweepenum : YesNocan initiate ISO Sweep WaitTrigger orders
309nbboCapenum : NbboCapindicates if order price is capped at NBBO (or 1, 5, 10 pennies through) unless overridden by ParentOrder
223auctionResponderenum : AuctionRespondercan respond to exchange / away auctions
226takeExchListtext1exchange order for marketable orders eg: BATS,NYSE,CBOE
229makeExchListtext1exchange order for non-marketable orders eg: BATS,NYSE,CBOE
232incTakeExchFeeenum : IncExchFeeinclude exchange fee in limit calculations
235incMakeExchFeeenum : IncExchFeeinclude exchange fee in limit calculations
238makeExchRuleenum : MakeExchRuleActiveMaker exchange preference rule: 'MaxPart' will pick exchanges to maximize participation; 'FeeOrder' will pick exchanges to minimize fees [maximize rebates]; 'ImprvOnly' will only make when improving NBBO.
241roundRuleenum : RoundRuleStock Price Rounding rule (Fuzzy = 90%, Exact = 100%)
244execModeenum : ExecMode
247cxlOnHaltenum : YesNocancel parent orders if the item being traded (or underlier) is halted
250splitZeroenum : YesNosell stock down to zero before selling short
253oddLotFlagenum : OddLotFlagRoundLotsOnly restricts most child order sizes to multiples of 100
256maxChildOrdersPerDayintmaximum number of option child orders allowed for this account per day (zero = no restriction)
259maxParentBrkrsPerDayintmaximum number of execution engine stock broker (default=2,000)
262riskCxlThrottleintmaximum risk throttle cancel rate (per second)
265betaSourceenum : BetaSource
294routeAllocRuleenum : RouteAllocRule
283modifiedBystring(24)user who last modified this record
286modifiedInenum : SysEnvironment
289timestampDateTimetimestamp of last modification

REPEATING FIELDS

CapStrategyID

#FieldTypeDefault ValueComment
303exDeststring(16)exchange
300capStrategyIDstring(12)client cap strategy ID (if any)

AccntRouteTable

#FieldTypeDefault ValueComment
280enabledenum : YesNo
296execBrkrCodestring(16)
277routeAllocMetricfloat
304brkrExDeststring(16)order routing string (if any) [used to force orders use a specific ExDest regardless of the actual exchange destination]

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

# 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 = 'AccountExchGroupConfig'

# 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 = 'execEngineMode|stageReview|reviewExDest|allowReviewExecs|stageReviewURL|priAggGroup|secAggGroup|userMarking|requireLocate|requireExternPos|locateFirm|locatePool|ticketLocateFirm|firmType|orderCapacity|custOrderCapacity|badge|futClearingRange|futCustType|cmeStpId|cmeStpInstruction|isLowVelocity|catReportable|catAccnt|catBrkrAccnt|catBrkrAccntType|catBrkrFirmType|catBrkrIMID|clientAccnt|clientUserName|allocMethod|allocMLegRule|allocAccnt|allocExDest|execBrkrAccntAlloc|execBrkrClFirmAlloc|execBrkrUserNameAlloc|clearingFirmName|clearingFirm|clearingAccnt|clientAccntIds|positionSrc|clearingLoadTime|tiedPriceRounding|algoFlashPct|algoBlockPct|canISOSweep|nbboCap|auctionResponder|takeExchList|makeExchList|incTakeExchFee|incMakeExchFee|makeExchRule|roundRule|execMode|cxlOnHalt|splitZero|oddLotFlag|maxChildOrdersPerDay|maxParentBrkrsPerDay|riskCxlThrottle|betaSource|routeAllocRule|modifiedBy|modifiedIn|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)

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

# Replace with your desired view. A "|" separated list of views can be provided
# If no view is provided, all views will be returned
VIEW = 'execEngineMode|stageReview|reviewExDest|allowReviewExecs|stageReviewURL|priAggGroup|secAggGroup|userMarking|requireLocate|requireExternPos|locateFirm|locatePool|ticketLocateFirm|firmType|orderCapacity|custOrderCapacity|badge|futClearingRange|futCustType|cmeStpId|cmeStpInstruction|isLowVelocity|catReportable|catAccnt|catBrkrAccnt|catBrkrAccntType|catBrkrFirmType|catBrkrIMID|clientAccnt|clientUserName|allocMethod|allocMLegRule|allocAccnt|allocExDest|execBrkrAccntAlloc|execBrkrClFirmAlloc|execBrkrUserNameAlloc|clearingFirmName|clearingFirm|clearingAccnt|clientAccntIds|positionSrc|clearingLoadTime|tiedPriceRounding|algoFlashPct|algoBlockPct|canISOSweep|nbboCap|auctionResponder|takeExchList|makeExchList|incTakeExchFee|incMakeExchFee|makeExchRule|roundRule|execMode|cxlOnHalt|splitZero|oddLotFlag|maxChildOrdersPerDay|maxParentBrkrsPerDay|riskCxlThrottle|betaSource|routeAllocRule|modifiedBy|modifiedIn|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 = 'execEngineMode: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 = 'AccountExchGroupConfig'

# Replace with fields you want to see aggregate values for. A "|" separated list of measures should be provided
MEASURE = 'execEngineMode|stageReview|reviewExDest|allowReviewExecs|stageReviewURL|priAggGroup|secAggGroup|userMarking|requireLocate|requireExternPos|locateFirm|locatePool|ticketLocateFirm|firmType|orderCapacity|custOrderCapacity|badge|futClearingRange|futCustType|cmeStpId|cmeStpInstruction|isLowVelocity|catReportable|catAccnt|catBrkrAccnt|catBrkrAccntType|catBrkrFirmType|catBrkrIMID|clientAccnt|clientUserName|allocMethod|allocMLegRule|allocAccnt|allocExDest|execBrkrAccntAlloc|execBrkrClFirmAlloc|execBrkrUserNameAlloc|clearingFirmName|clearingFirm|clearingAccnt|clientAccntIds|positionSrc|clearingLoadTime|tiedPriceRounding|algoFlashPct|algoBlockPct|canISOSweep|nbboCap|auctionResponder|takeExchList|makeExchList|incTakeExchFee|incMakeExchFee|makeExchRule|roundRule|execMode|cxlOnHalt|splitZero|oddLotFlag|maxChildOrdersPerDay|maxParentBrkrsPerDay|riskCxlThrottle|betaSource|routeAllocRule|modifiedBy|modifiedIn|timestamp'

# Replace with fields you want to see aggregated. A "|" separated list of fields should be provided
GROUP = 'execEngineMode|stageReview|allowReviewExecs|userMarking|requireLocate|requireExternPos|firmType|orderCapacity|custOrderCapacity|futClearingRange|futCustType|cmeStpInstruction|isLowVelocity|catReportable|catBrkrAccntType|catBrkrFirmType|allocMethod|allocMLegRule|positionSrc|clearingLoadTime|tiedPriceRounding|canISOSweep|nbboCap|auctionResponder|incTakeExchFee|incMakeExchFee|makeExchRule|roundRule|execMode|cxlOnHalt|splitZero|oddLotFlag|betaSource|routeAllocRule|modifiedIn'

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

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

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