Skip to main content

Royal Bank of Canada Trade Connector

Features

fix-rbcConnector Key
Instruments
FX
Request Types
SUBMITCANCELREPLACE
Order Types
MARKETLIMIT
Time In Force
DAY
Order ID Mapper
SEQUENCE
Order Status Request
Cancel On Disconnect
Commission
Post Only
Fast Cancel
Fast Replace

Notes

Reset Sequence Numbers

Per RBC documentation, resetSeqNums must always be set to true.

Algo Trading

Algo Trading is implemented via strategies and uses the following tags:

  • 7620 - AlgoName
  • 168 - StartTime
  • 126 - EndTime

plus additional strategy-specific tags (see Strategy parameters below).

Strategy parameters

Strategies use three repeating tags: 958, 959, 960 — each triplet represents one strategy parameter entry. A NewOrderRequest may contain multiple entries, but they must be sent in the order: 958, 959, 960, 958, 959, 960, ...

Example from documentation:

TagField NameValue
957NoStrategyParameters4
958StrategyParameterNameEnablePriceSensitivity
959StrategyParameterType13 (Boolean)
960StrategyParameterValueY
958StrategyParameterNamePriceSensitivityLevel
959StrategyParameterType1 (Int)
960StrategyParameterValue1
958StrategyParameterNameMinimumQuantityPercent
959StrategyParameterType6 (float)
960StrategyParameterValue42.5
958StrategyParameterNameLiquidityPreference
959StrategyParameterType14 (String)
960StrategyParameterValueboth

Tag 957 (NoStrategyParameters) represents the group count and is set automatically by the connector.

Symbology

Currency pairs in CCY1/CCY2 format (CCY1 = base, CCY2 = term).

ParameterValue
TimeZoneEtc/UTC
Start time22:15:00
End time22:00:00
Daily sessionYes

Configuration

Connector settings

ParameterDefault ValueDescription
partyIdSourcepartyIdSource(447)
partyIdpartyId(448)
accountaccount(1)

Supported order attributes

KeyDescription
7620AlgoName(7620)
168StartTime(168)
126ExpireTime(126)
958StrategyParameterName(958)
959StrategyParameterType(959)
960StrategyParameterValue(960)

Config sample

connectors {
RBC : ${template.connector.fix.rbc} {
settings : {
host = "<HOST>"
port = <PORT>

senderCompId = "<SENDER_COMP_ID>"
targetCompId = "<TARGET_COMP_ID>"

partyIdSource = "<PARTY_ID_SOURCE>"
partyId = "<PARTY_ID>"

account = "<ACCOUNT>"
}
}
}