TP ICAP Trade Connector
Features
fix-tpicapConnector Key✓
Order Status Request
✓
Cancel On Disconnect
✗
Commission
✓
Post Only
✗
Fast Cancel
✗
Fast Replace
Notes
Connectivity
Stunnel configuration:
[TPICAP]
client = yes
accept = 11111
connect = trading-gateway.uat.helix.tpicapcloud.com:11111
verify = 0
Symbology
Currency pairs in BASE/QUOTE format, e.g. XBT/USD, ETH/USD.
Schedule
Operating hours, Sunday through Friday:
| Description | Details | Start Time | End Time |
|---|---|---|---|
| API Connectivity | API Connectivity permissible during these hours. | 22:50 UTC | 22:10 UTC (Following Day) |
| Trading Session | Order Acceptance and Trading. | 23:00 UTC | 22:00 UTC (Following Day) |
Configuration
Connector settings
| Parameter | Default Value | Description |
|---|---|---|
| password | Password | |
| account | Default Account | |
| selfTradePrevention | Used to select the order to cancel if Self-Trade Prevention is enabled. Valid values: CANCEL_RESTING, CANCEL_TAKING, DECREMENT_RESTING. | |
| selfTradePreventionLevel | Used to select the matching level within the Participant/Margin/Trading Account hierarchy if Self-Match Prevention is enabled. Valid values: MARGIN_ACCOUNT, PARTICIPANT, TRADING_ACCOUNT, COMP_ID, USER. | |
| parties | List of the parties involved into a trading request. | |
| party.partyId | Mandatory. Party identifier. Custodian name (Code). | |
| party.partyIdSource | Mandatory. Valid values are: D = PROPRIETARY_CUSTOM_CODE. | |
| party.partyRole | Mandatory. Used to mark the party as the custodian. | |
| mifid.positionAccountCode | MiFID II – Used to indicate Execution decision within Firm Code (Trader or Algorithm). Max 30 characters. | |
| mifid.customerCode | MiFID II – Used to indicate Client Identification Code. Max 30 characters. | |
| mifid.investmentCode | MiFID II – Used to indicate Investment decision within Firm Code (Trader or Algorithm). Max 30 characters. | |
| mifid.nonExecBrokerCode | MiFID II – Used to indicate Non-executing Broker Code. Max 20 characters. | |
| mifid.algoIndicator | MiFID II – Used to indicate Algo Trading. Valid values: NO (default), YES_EXECUTION, YES_EXEC_AND_INVESTMENT | |
| mifid.deferredIndicator | MiFID II – Used to indicate Algo Trading. Valid values: NO - Not deferred (default). Deferral is not yet supported. | |
| mifid.commodityIndicator | MiFID II – Used to indicate if a Commodities trade is for hedging purposes. Valid values: NOT_COMMODITY_HEDGE (default), COMMODITY_HEDGE. | |
| mifid.orderOrigination | MiFID II – used if order placed via direct electronic access. Valid values: NO, YES (default). |
Supported order attributes
| Key | Description |
|---|---|
| 1 | Account(1) |
| 18 | Post Only. Allowed values: 6 - Post Only order (aka Resting Limit Order Only). |
| 20002,7002 | MiFID II – Used to indicate Execution decision within Firm Code (Trader or Algorithm). Max 30 characters. |
| 20003,7003 | MiFID II – Used to indicate Client Identification Code. Max 30 characters. |
| 20005,7005 | MiFID II – Used to indicate Investment decision within Firm Code (Trader or Algorithm). Max 30 characters. |
| 20006,7006 | MiFID II – Used to indicate Non-executing Broker Code. Max 20 characters. |
| 20007,7007 | MiFID II – Used to indicate Algo Trading. Valid values: 0 = No (default), 1 = Yes (Execution), 2 = Yes (Exec and Investment decision). |
| 20008,7008 | MiFID II – Used to indicate Algo Trading. Valid values: 0 = Not deferred (default). Deferral is not yet supported. |
| 20009,7009 | MiFID II – Used to indicate if a Commodities trade is for hedging purposes. Valid values: 0 = Not commodity hedge (default), 1 = Commodity hedge. |
| 1724 | MiFID II – Used if order placed via direct electronic access. Valid values: 99 = No, 5 = Yes (default). |
| 20010,7010 | Used to select the order to cancel if Self-Match Prevention is enabled. Valid values: Resting Order (default) = R, Taking (Aggressive) Order = T, Decrement Resting = D. |
| 20011,7011 | Used to select the matching level within the Participant/Margin/Trading Account hierarchy if Self-Trade Prevention is enabled. Valid values: Margin Account (default) = M, Participant = P, Trading Account = T, CompID = C, User (email) = U. |
Config sample
connectors {
TPICAP : ${template.connector.fix.tpicap} {
settings {
host = "<STUNNEL_HOST>"
port = <STUNNEL_PORT>
password = "<PASSWORD>"
account = "<ACCOUNT>"
parties = [
{
partyId = FDA
partyRole = 28 # 28 - Custodian
partyIdSource = D
}
]
}
}
}