v1.3, May 2024
o On behalf of an external trader
This document describes a list of extra fields required by various exchanges for working with orders on external accounts or when placing orders ‘on behalf of’ external traders.
When working with CQG WebAPI, use extra_attributes fields of corresponding messages to provide this information.
This section describes the extra fields required by various exchanges for working with orders on external accounts.
|
Exchange |
Description |
(WebAPI) Name |
(FIX) PartyRole (50452) |
(FIX) CQGFIDType (20171) |
(FIX) PartyID (50448) |
(FIX) ExtraAttributeName (20186) |
(FIX) ExtraAttributeValue (20187) |
|
All |
Exchange Account Origin |
ExchangeAccountOrigin |
2004 |
Not used |
<exchange account origin value> |
Not used |
Not used |
|
All |
Exchange Account Type |
ExchangeAccountType |
2003 |
Not used |
<exchange account type value> |
Not used |
Not used |
|
APEX |
Client ID |
ClientID |
Not used |
Not used |
Not used |
ClientID |
<Client ID value> |
|
APEX |
Business unit (optional) |
BusinessUnit |
Not used |
Not used |
Not used |
BusinessUnit |
<Business Unit value> |
|
CME |
CQG Customer FID |
FID_ClientIDShortCode |
2001 |
FID_ClientIDShortCode |
<client ID short code value> |
Not used |
Not used |
|
CME |
Give-up Member |
GiveupMemberID |
2002 |
Not used |
<give-up member ID value> |
Not used |
Not used |
|
Eurex |
CQG Customer FID |
FID_ClientIDShortCode |
2001 |
FID_ClientIDShortCode |
<client ID short code value> |
Not used |
Not used |
|
Eurex |
Give-up Member |
GiveupMemberID |
2002 |
Not used |
<give-up member ID value> |
Not used |
Not used |
|
Eurex |
Self Match Prevention ID |
SelfMatchPreventionID |
Not used |
Not used |
Not used |
SelfMatchPreventionID |
<Self Match Prevention ID value> |
|
Eurex |
Self Match Prevention Instruction |
SelfMatchPreventionInstruction |
Not used |
Not used |
Not used |
SelfMatchPreventionInstruction |
<Self Match Prevention Instruction value> Possible values are : 100 = business unit 101 = market unit |
|
Eurex |
SMP Deletion Instruction (ETI CrossMatchInstruction field) |
CrossMatchInstruction |
Not used |
Not used |
Not used |
CrossMatchInstruction |
<SMP Deletion Instruction (ETI CrossMatchInstruction field) value> Possible values are : 1 = cancel incoming order (CA) 2 = cancel resting order (CP) 3=cancel both orders (CAP) |
|
ICE |
CQG Customer FID |
FID_ClientIDShortCode |
2001 |
FID_ClientIDShortCode |
<client ID short code value> |
Not used |
Not used |
|
SGX |
Give-up Member |
GiveupMemberID |
2002 |
Not used |
<give-up member ID value> |
Not used |
Not used |
|
Coinbase Derivatives (FairX) |
Self Match Prevention ID |
SelfMatchPreventionID |
Not used |
Not used |
Not used |
SelfMatchPreventionID |
<Self Match Prevention ID value> |
|
MIAX |
Self Match Prevention ID |
SelfMatchPreventionID |
Not used |
Not used |
Not used |
SelfMatchPreventionID |
<Self Match Prevention ID value> |
|
MIAX |
Self Match Prevention Instruction |
SelfMatchPreventionInstruction |
Not used |
Not used |
Not used |
SelfMatchPreventionInstruction |
<Self Match Prevention Instruction value> Possible values are : empty = not applicable N = cancel newest O = cancel oldest B = cancel both D = decrement and cancel |
|
MIAX |
Self Match Prevention Level |
SelfMatchPreventionLevel |
Not used |
Not used |
Not used |
SelfMatchPreventionLevel |
<Self Match Prevention Level value> Possible values are : empty = disabled F = firm M = MPID P = parent group |
|
MIAX |
Market Participant Identifier (optional) |
MPID |
Not used |
Not used |
Not used |
MPID |
<Market Participant Identifier value> |
On behalf of an external trader
This section describes the extra fields required by various exchanges for working with orders placed by ‘on behalf of’ an external trader. In WebAPI, this means setting sender_operator_id. In FIX, this means using OnBehalfOfSubID(116) with ‘direct OnBehalfOfSubID’ mode.
|
Exchange |
Description |
(WebAPI) Name |
(FIX) PartyRole (50452) |
(FIX) CQGFIDType (20171) |
(FIX) PartyID (50448) |
|
Any MiFID regulated exchange/product |
Short code used for this Trader, where applicable, as MiFID ‘Execution within firm’ and/or ‘Investment decision within firm’ identification. Do not send for ‘CLIENT’ traders so that standard reserved short code can be used where applicable |
FID_TraderShortCode |
2000 |
FID_TraderShortCode |
<trader short code> |
|
CME |
Optional override for the SMP ID configured at Account-Route level for orders placed by this Trader |
FID_SelfMatchPreventionID |
2000 |
FID_SelfMatchPreventionID |
<self Match Prevention ID Override> |
|
Eurex |
Optional override for the SMP ID configured at Account-Route level for orders placed by this Trader |
FID_SelfMatchPreventionID |
2000 |
FID_SelfMatchPreventionID |
<self Match Prevention ID Override> |
|
Eurex |
Optional override for the SMP Instruction configured at Account-Route level for orders placed by this Trader |
FID_SelfMatchPreventionInstruction |
2000 |
FID_SelfMatchPreventionInstruction |
<self Match Prevention Instruction Override> Possible values are : 100 = business unit 101 = market unit |
|
Eurex |
Optional override for the SMP Deletion Instruction (ETI CrossMatchInstruction field) configured at Account-Route level for orders placed by this Trader |
FID_CrossMatchInstruction |
2000 |
FID_CrossMatchInstruction |
<SMP Deletion Instruction Override (ETI CrossMatchInstruction field)> Possible values are : 1 = cancel incoming order (CA) 2 = cancel resting order (CP) 3=cancel both orders (CAP) |
|
HKFE |
Optional override for the SMP ID configured at Account-Route level for orders placed by this Trader |
FID_SelfMatchPreventionID |
2000 |
FID_SelfMatchPreventionID |
<self Match Prevention ID Override> |
|
ICE |
Optional override for the SMP ID configured at Account-Route level for orders placed by this Trader |
FID_SelfMatchPreventionID |
2000 |
FID_SelfMatchPreventionID |
<self Match Prevention ID Override> |
|
LME |
Short code used for this Trader, where applicable, as MiFID ‘Client decision maker’ |
FID_ClientDecisionMakerShortCode |
2000 |
FID_ClientDecisionMakerShortCode |
<client decision maker short code> |
|
LME |
Identifies type of client decision maker short code (1 = Firm or legal entity; 2 = Natural person). Required when FID_ClientDecisionMakerShortCode is provided. |
FID_ClientDecisionMakerShortCodeType |
2000 |
FID_ClientDecisionMakerShortCodeType |
<client decision maker short code type> |
|
Nasdaq Nordic Derivatives |
Exchange personal Trader ID (Nasdaq OMX: Trader ID from member portal, required for traders at the firm, used for non-algo orders) |
FID_PersonalTraderID |
2000 |
FID_PersonalTraderID |
<personal trader ID> |
|
SGX Titan |
Optional override for the SMP ID configured at Account-Route level for orders placed by this Trader |
FID_SelfMatchPreventionID |
2000 |
FID_SelfMatchPreventionID |
<self Match Prevention ID Override> |
|
ASX |
Optional override for the SMP ID configured at Account-Route level for orders placed by this Trader |
FID_SelfMatchPreventionID |
2000 |
FID_SelfMatchPreventionID |
<self Match Prevention ID Override> |
|
Coinbase Derivatives (FairX) |
Optional override for the SMP ID configured at Account-Route level for orders placed by this Trader |
FID_SelfMatchPreventionID |
2000 |
FID_SelfMatchPreventionID |
<self Match Prevention ID Override> |
|
MIAX |
Optional override for the SMP ID configured at Account-Route level for orders placed by this Trader. |
FID_SelfMatchPreventionID |
2000 |
FID_SelfMatchPreventionID |
<self Match Prevention ID Override> |
|
MIAX |
Optional override for the SMP Instruction configured at Account-Route level for orders placed by this Trader. |
FID_SelfMatchPreventionInstruction |
2000 |
FID_SelfMatchPreventionInstruction |
<self Match Prevention Instruction Override> Possible values are :empty = not applicable N = cancel newest O = cancel oldest B = cancel both D = decrement and cancel |
|
MIAX |
Optional override for the SMP Level configured at Account-Route level for orders placed by this Trader. |
FID_SelfMatchPreventionLevel |
2000 |
FID_SelfMatchPreventionLevel |
<self Match Prevention Level Override> Possible values are: empty = disabled F = firm M = MPID P = parent group |
When CQG WebAPI is used to place an algorithmic order to be executed by CQG Algo Engine ‘on behalf of’ external traders it is required to follow extra fields guidelines described in the On behalf of an external trader section.
External accounts are not supported at the moment of this writing (May 7th 2024): CQG Algo Engine won’t be receiving any of the extra fields described in the External account section. External accounts support is going to be added later.