Sales RFS Trade Messages
This documentation is for FX Sales 1.16 and below. From version 1.17 (27 Jan 2017), FX Sales requires backend adapters to implement the FX Integration API 3. For documentation on trade models and messages in FX Integration API 3, see FX Integration API. |
The FX Sales Motif Request for Stream (RFS) messaging specification extends the FX Motif RFS messaging specification, and should be read in conjunction with it. The FX Sales Motif extensions provide support for trading on behalf of (TOBO) another user, with additional fields for specifying rate and points margins (sales markup).
This specification applies to FX Integration API version 2.9.0 and later. |
Submit message
This is the message that the client sends in order to open an RFS ticket and receive quotes.
In addition to the fields sent on the standard RFS Submit Message, the following fields must also be sent.
Field Name | Description | Example |
---|---|---|
TradingSubProtocol |
This field is used to indicate to the back end that the user is requesting a trade with Sales functionality. |
SALES_RFS |
TOBOUser |
The user the trade is on behalf of. For example, if the logged in user dealer1@novobank.co.za wishes to make a trade on behalf of user bob_treasurer, then the value of this field will be bob_treasurer. |
bob_treasurer |
Price update message
This is the message the server (a trading adapter) will send to the client when it receives a price update from the back-end trading system.
In addition to the fields sent within the standard RFS price-update message, the following fields will also be sent where appropriate for the trade type.
Field Name | Description | Example |
---|---|---|
DefaultSpotBidMargin |
This field represents the default margin to be applied to the SpotBidRate. It should be sent as an unformatted, raw value. |
0.00010 |
DefaultSwapBidMargin |
This field represents the default swap margin to be applied to the bid side: L1_DefaultFwdAskMargin + L2_DefaultFwdBidMargin |
0.000033 |
ProfitBidRate |
The conversion rate between the contra currency and the profit currency. This can be used for entering profit in an amount of settlement currency, for example. |
1.145345 |
ProfitCurrency |
The profit currency that the ProfitBidRate is being provided for. |
USD |
ProfitCurrencyDPS |
This is the number of decimal places that should be used for formatting the amount in profit currency field. |
2 |
TraderSpotBidRate |
This field represents the spot rate with no client margin applied to it. |
0.7204 |
TraderSwapBidPoints |
This field represents the swap points with no client margins applied to them. |
0.000897 |
The fields below all relate to a trade leg. For non-swap quotes you will only receive fields with the 'L1_' prefix because the trade only has one leg. For swap quotes, these fields will be repeated with an 'L2_' prefix representing the far leg.
Field Name | Description | Example |
---|---|---|
L1_DefaultFwdBidMargin |
This field represents the default margin to be applied to the L1_TraderFwdBidPoints. It should be sent as an unformatted, raw value. |
0.000011 |
L1_TraderAllInBidRate |
This field represents the all-in rate, with no client margin applied to it |
0.715379 |
L1_TraderFwdBidPoints |
This field represents the forward points with no client margin applied to them. |
0.000279 |
Execute message
This is the message that the client will send in order to execute a trade on a quote received on the stream (RFS).
In addition to the fields sent in the standard RFS execute message, the following fields must also be sent. Note that only fields for a bid execution are shown below. Equivalently named fields must be sent for an ask execution, for example 'SpotAskMargin' in place of 'SpotBidMargin'.
Field Name | Description | Example |
---|---|---|
SpotBidMargin |
This field represents the spot margin that the sales user has selected. It should be sent as a raw value, and unformatted. |
0.0023 |
SwapBidMargin |
This field represents the swap margin to be applied to the bid side: L1_FwdAskMargin + L2_FwdBidMargin. |
N/A |
The fields below all relate to a trade leg. For non-swap quotes you will only receive fields with the 'L1_' prefix because the trade only has one leg. For swap quotes these fields will be repeated with an 'L2_' prefix, representing the far leg.
Field Name | Description | Example |
---|---|---|
L1_AllInBidMargin |
This is the user’s selected SpotBidMargin added to the selected FwdBidMargin |
0.000011 |
L1_FwdBidMargin |
This field represents the Forward margin that the sales user has selected. This field should be sent raw and unformatted. |
0.000019 |
Trade confirmation message
This is the message sent by the server (a trading adapter) to confirm to the client that the RFS trade has been successfully executed in the back-end trading system. It contains all the details required by the client to validate the success of the trade and can also be used as an Execution or Historic blotter entry.
In addition to the fields sent on the standard RFS Trade Confirmation Message the following fields must also be sent.
Field Name | Description | Example |
---|---|---|
Profit |
This field represents the sales profit in the specified currency |
100.45 |
ProfitCurrency |
This field represents the currency that the profit is provided in |
USD |
ProfitRate |
This is an additional field. This field represents the conversion rate from the contra currency into the profit currency |
1.135843 |
SpotMargin |
This field represents the spot margin that the sales user has selected. It should be sent as a raw value, and unformatted. |
0.0023 |
TOBOUser |
The user the trade is on behalf of. For example, if the logged in user dealer1@novobank.co.za wishes to make a trade on behalf of user bob_treasurer, then the value of this field will be bob_treasurer. |
bob_treasurer |
TraderSpotRate |
This field represents the spot rate with no client margin applied to it. |
0.7204 |
Included in the message when appropriate for the type of trade.
Field Name | Description | Example |
---|---|---|
SwapMargin |
This field represents the swap margin that the sales user has selected. It should be sent as a raw value, and unformatted. |
N/A |
TraderSwapPoints |
This field represents the spot points with no client margins applied to them. |
|
L1_AllInMargin |
This is the sales user’s selected SpotMargin added to the sales user’s selected L1_FwdMargin. |
0.000011 |
L1_FwdMargin |
This field represents the Forward margin that the user has selected. This field should be sent raw and unformatted. |
0.000019 |
L1_TraderAllInRate |
This field represents the all-in rate, with no client margin applied to it |
0.715379 |
L1_TraderFwdPoints |
This field represents the forward points with no client margin applied to them. |
0.000279 |
See also: