CQG Trade Connector
Features
fix-cqgConnector KeyNotes
Documentation
Custom Attributes
Use customAttributesSet settings to control what order attributes can be forwarded to FIX messages.
The null value (default) means that order attributes will be ignored.
Note: CQG may reject trade requests if the FIX message contains unsupported tags.
Sequence Reset
By default, FIX logical sessions are tied to connections — sequence number 1 must be used in the Logon message on each reconnect.
If session persistence is enabled, the client may instead send the next expected sequence number in the Logon message with ResetSeqNumFlag set to N.
Expire Time
The connector populates:
ExpireTime(126)ifTimeInForce(59)=A(Good Till Time)ExpireDate(432)ifTimeInForce(59)=6(Good Till Date)
PayupModel(9105)
PayupModel(9105) has alias tag 7105 because Strategy Server uses 9105 for internal purposes.
Reconnect Interval
Reconnect interval: 30 seconds.
The CQG gateway limits the number of logon requests during a specific time interval.
The current limit is 20 logons within 5 minutes.
If the logon rate exceeds that limit, the incoming logon message is rejected via the logout message.
Known Issues
If an order contains an invalid symbol (e.g. F.US.EPM245290) that is a prefix-extension of a valid symbol (F.US.EPM24),
CQG may silently substitute the valid prefix symbol.
Symbology
CQG Symbology
CQG does not enforce a sequence reset schedule.
Configuration
Connector settings
| Parameter | Default Value | Description |
|---|---|---|
| onBehalfOfCompId | Firm name of trader on whose behalf this order request should be sent. | |
| onBehalfOfSubId | CQG username of the trader on whose behalf this order request should be sent. That trader needs to be authorized for trading on the same account. | |
| deliverToCompId | Trading firm that the trader specified in tag 116 (DeliverToSubID) belongs to. | |
| senderLocationId | Assigned value used to identify location of message originator. | |
| useTrader | false | Use request's Trader ID (if provided) for OnBehalfOfSubID(116) |
| account | Account ID (managed by the CQG gateway). | |
| useAccount | false | The flag to define whether to use order account in preference of default account. |
| customAttributesSet | The set of order request attributes which should be passed in FIX message. Format: 18,521,6000-6500. If null - attributes will not be passed. | |
| parties.traderFIDType | Flexible Identifier Type. Describes the value being provided in PartyID (tag 50448). | |
| parties.partyId | Identification of the party. | |
| parties.partyRole | Identifies the type or role of the PartyID (50448) specified. |
Supported order attributes
| Key | Description |
|---|---|
| 116,6116 | OnBehalfOfSubId(116). CQG username of the trader on whose behalf order is being placed. |
| 142,6142 | SenderLocationID(142). Identifies specific message originator's location (i.e. geographic location). |
| 115,6115 | OnBehalfOfCompID(115). Broker company ID used when sending notifications via the CQG gateway. |
| 128,6128 | DeliverToCompID(128). Broker company ID to deliver messages via the CQG gateway. |
Config sample
connectors {
CQG: ${template.connector.fix.cqg} {
settings: {
host = "<HOST>"
port = <PORT>
senderCompId = "<SENDER_COMP_ID>"
targetCompId = "<TARGET_COMP_ID>"
deliverToCompId = "DELIVER_TO_COMP_ID" # optional
onBehalfOfCompId = "ON_BEHALF_OF_COMP_ID" # optional
onBehalfOfSubId = "ON_BEHALF_OF_SUB_ID" # optional
password = "<PASSWORD>"
account = "ACCOUNT"
}
}
}