FX Sales configuration

This page lists the configuration options for FX Sales.

Contents:

Editing configuration options

To customise the configuration, assign new values to properties of the ExtendedAppConfig object in the file /salestrader/default-aspect/src/caplinx/ExtendedAppConfig.js. The default configuration is defined in the file /salestrader/default-aspect/src/caplinx/AppConfig.js, which should not be edited directly.

Note: the contents of the file /salestrader/default-aspect/src/caplinx/AppConfig.js will change in future releases of FX Sales. To avoid merging your configuration changes with future changes to AppConfig.js, add your configuration to the ExtendedAppConfig.js file.

For example, to enable the auto-quoting feature in sales tickets, set the value of the CAPLIN.MOTF.TICKET.AUTO_QUOTE property on the ExtendedAppConfig object to true:

'use strict';

var AppConfig = require('caplinx/AppConfig');

/**
 * Customer config overrides that differ from the default ones
 * in {@link module:caplinx/AppConfig} should be placed here.
 */
var ExtendedAppConfig = AppConfig;

// Example: Enable auto-quoting in sales tickets
ExtendedAppConfig['CAPLIN.MOTF.TICKET.AUTO_QUOTE'] = true;

module.exports = ExtendedAppConfig;

Configuration reference

FX Sales configuration items.

APP_ID

The StreamLink application identifier. The application identifier distinguishes client traffic in StreamLink log files and in Liberator license monitoring.

Type String
Valid values If your Liberator is licensed at the application level, then APP_ID must match an application identifier that your Liberator is licensed to accept.
Default value 'fxsales'
Example ExtendedAppConfig.APP_ID = 'my_sales_app';

BLOTTER_DEFAULT_EXPORT_FORMAT

The default file-format for data exported from blotters using the export icon (). Users can set their own preferred file-format in the User Settings dialog.

For related information, see:

Type String
Valid values

This configuration option accepts one of the following file formats:

  • 'xlsx': Office Open XML Workbook (Microsoft Excel 2007+)
  • 'csv': Comma-separated values
Default value 'xlsx'
Example ExtendedAppConfig.BLOTTER_DEFAULT_EXPORT_FORMAT = 'csv';

CAPLIN.AUDIO

A reference to an audio configuration object (see caplinx/AudioConfig.js).

Type Array of objects
Valid values Valid reference to an array of objects (see caplinx/AudioConfig.js)
Default value AudioConfig (a reference to the array exported by caplinx/AudioConfig.js)
Example ExtendedAppConfig['CAPLIN.AUDIO'] = MyAudioConfig;

CAPLIN.AUDIO.ENABLED

Set to true to enable audio notifications in FX Sales.

Type Boolean
Valid values true, false
Default value false
Example ExtendedAppConfig['CAPLIN.AUDIO.ENABLED'] = true;

CAPLIN.AUDIO.INTERVENTION.OPTIONS

Sets the audio files available for audio notifications in the Sales Intervention interface.

Type Array of strings
Valid values Each string must have a corresponding configuration object in the CAPLIN.AUDIO array.
Default value ['none', 'chaching', 'clinking', 'coin', 'glassclink', 'jump', 'laser', 'pindrop', 'poolball', 'pop', 'pop2', 'swordclink', 'tap', 'thump', 'thwach']
Example ExtendedAppConfig['CAPLIN.AUDIO.INTERVENTION.OPTIONS'] = ['none', 'chaching', 'clinking'];

CAPLIN.CLIENTINFO.TEMPLATEID

The HTML template for the client info bar.

Note: the client info bar is no longer rendered by template, and this configuration item may be removed in a later release of FX Sales.

Type String
Valid values Valid template id
Default value 'caplinx.motf.clientinfo.client-info'
Example ExtendedAppConfig['CAPLIN.CLIENTINFO.TEMPLATEID'] = 'caplinx.motf.clientinfo.my-client-info';

CAPLIN.CLIENTSEARCH.USERSTEMPLATEID

The HTML template for the search side-panel.

Deprecation notice: as of FX Sales 1.12, the search side-panel has been deprecated in favour of the modal search dialog and may be removed in a later release. See CAPLIN.USERSEARCH.MODAL.ENABLED.

Type String
Valid values Valid template id
Default value 'caplinx.users.clientsearch.client-search-users'
Example ExtendedAppConfig['CAPLIN.CLIENTSEARCH.USERSTEMPLATEID'] = 'caplinx.users.clientsearch.my-client-search-users';

CAPLIN.CONTAINER.DOCKING_ENABLED

Set to true to allow users to dock sales-ticket containers to the bottom of the FX Sales window.

Type Boolean
Valid values true, false
Default value true
Example ExtendedAppConfig['CAPLIN.CONTAINER.DOCKING_ENABLED'] = false;

CAPLIN.DECISIONSUPPORT.ENABLED

Set to true to display the Decision Support bar at the top of the FX Sales window.

Type Boolean
Valid values true, false
Default value true
Example ExtendedAppConfig['CAPLIN.DECISIONSUPPORT.ENABLED'] = true;

CAPLIN.FX.ACCOUNT.SERVICE.STORE.SELECTED.ACCOUNT

Set to true to persist accounts set on the Account Service (AccountService class) so that the accounts are reloaded the next time the application is started.

Note: the Account Service is no longer used by FX Sales and this configuration option may be removed in a later release of FX Sales.

Type Boolean
Valid values true, false
Default value false
Example ExtendedAppConfig['CAPLIN.FX.ACCOUNT.SERVICE.STORE.SELECTED.ACCOUNT'] = true;

CAPLIN.FX.TILE.ALLOW_BROKEN_DATES

Determines whether FX tiles can stream rates for trades settling on broken dates:

  • Set to true to allow FX tiles to stream rates for broken dates.
  • Set to false to allow FX tiles to stream rates for spot and standard tenors only.

If set to false, then selecting a broken date in an FX tile replaces the tile's rates with the text 'RFS'. Clicking 'RFS' opens a sales ticket, regardless of the value of configuration option CAPLIN.FX.TILE.ONE_CLICK_TRADE.

Type Boolean
Valid values true, false
Default value false
Example ExtendedAppConfig['CAPLIN.FX.TILE.ALLOW_BROKEN_DATES'] = true;

CAPLIN.FX.TILE.ONE_CLICK_TRADE

Determines the action performed when a user clicks on a rate in an FX tile:

  • Set to true to execute an ESP trade at the client's default margin.
  • Set to false to launch a sales ticket.
Type Boolean
Valid values true, false
Default value false
Example ExtendedAppConfig['CAPLIN.FX.TILE.ONE_CLICK_TRADE'] = true;

CAPLIN.FX.TILE.SHOW.FWD_MID_POINTS

Set to true to display a mid-rate on FX tiles displaying forward rates.

Type Boolean
Valid values true, false
Default value false
Example ExtendedAppConfig['CAPLIN.FX.TILE.SHOW.FWD_MID_POINTS'] = true;

CAPLIN.FX.TILE.SHOW.SPOT_MID_RATE

Set to true to display a mid-rate on FX tiles displaying spot rates.

Type Boolean
Valid values true, false
Default value false
Example ExtendedAppCofig['CAPLIN.FX.TILE.SHOW.SPOT_MID_RATE'] = true;

CAPLIN.FX.TILE.UPDATE_SUBSCRIPTION_ON_AMOUNT_BLUR

Determines how frequently an FX tile re-subscribes to streaming prices when a tile's amount field is edited:

  • Set to true to re-subscribe when focus leaves the amount field.
  • Set to false to re-subscribe on each keystroke in the amount field.
Type Boolean
Valid values true, false
Default value false
Example ExtendedAppConfig['CAPLIN.FX.TILE.UPDATE_SUBSCRIPTION_ON_AMOUNT_BLUR'] = true;

CAPLIN.FX.TILE.USE.DEFAULT.ACCOUNT

Set to true to apply the permissions associated with a client's default trading account to the FX tiles in the Client View. If a client has no default account or has insufficient permissions granted to their account, then some or all of the FX tiles in the client view will be disabled.

Set to false to enable all FX tiles in the Client View without regard to the permissions granted to the client's default trading account.

Type Boolean
Valid values true, false
Default value false
Example ExtendedAppConfig['CAPLIN.FX.TILE.USE.DEFAULT.ACCOUNT'] = true;

CAPLIN.LOGIN

The configuration object for the built-in login page.

Type JavaScript object
Valid values See specification below
Default value The object exported by module default-aspect/src/caplinx/LoginConfig.js
Example
{
  title: i18n('reactloginpage.title'),
  usernameFormat: 'email',
  usernameMessage: i18n('reactloginpage.login.user.name.validation'),
  loginBackground: 'unbundled-resources/images/login_screen_bg.jpg',
  loginCompanyLogo: 'unbundled-resources/images/login_screen_company_logo.svg',
  loginProductLogo: 'unbundled-resources/images/login_screen_product_logo.png',
  links: [
    {
      text: "Caplin © " + ((new Date).getFullYear())
    },
    {
      url: "http://www.caplin.com/business/page/cookie-policy",
      text: i18n('reactloginpage.footer.cookies')
    },
    {
      url: "http://www.caplin.com/business/page/terms-conditions",
      text: i18n('reactloginpage.footer.terms')
    },
    {
      url: "http://www.caplin.com/business/page/privacy",
      text: i18n('reactloginpage.footer.privacy')
    }
  ],
  keyMasterUrl: "servlet/StandardKeyMaster",
  tradeModeRegex: "/.*~CustomerId=(.*)~.*/",
  forgottenPasswordFunction: ForgottenPasswordExample
}
CAPLIN.LOGIN configuration object
Property Type Description
title String The title to display for the login page.
usernameFormat String or Regex The name of a validator or a regular expression. A validator, 'email', is provided out-of-the-box to validate email addresses.
usernameMessage String The message displayed when a username format is incorrect.
links Array of link objects (see table below) Text and hyperlinks to display on the login page.
keyMasterUrl String The URL of the KeyMaster servlet.
loginBackground String The background image of the login page.
loginCompanyLogo String The company logo on the login page.
loginProductLogo String The product logo on the login page.
tradeModeRegex String Reserved. Do not change.
forgottenPasswordFunction JavaScript function

Function that handles a password recovery request. See example code below.

Link object
Property Type Description
text String The text to display
url String [optional] The URL to navigate to on clicking the text

Example function for the forgottenPasswordFunction property:

export const ForgottenPasswordExample = function(loginData, callback) {
  /**
  * example:
  * loginData = { user: "st1@caplin.com" }
  */
  setTimeout(function() {
    if(callback) {
      callback({
        success: true,
        message: ""
      });
    }
  }, 1000);
};

export default ForgottenPasswordExample;

CAPLIN.MOTF.ORDER.MARGIN.DEFAULT

The margin, in pips, to use when a streaming order rate does not include a margin.

Type Integer
Valid values

CAPLIN.MOTF.ORDER.MARGIN.MIN to CAPLIN.MOTF.ORDER.MARGIN.MAX

Default value 0
Example ExtendedAppConfig['CAPLIN.MOTF.ORDER.MARGIN.DEFAULT'] = 2;

CAPLIN.MOTF.ORDER.MARGIN.ENABLED

Set to true to allow users to adjust the margin on individual orders.

Set to false to use the default order margin, set by the configuration option CAPLIN.MOTF.ORDER.MARGIN.DEFAULT.

Type Boolean
Valid values true, false
Default value true
Example ExtendedAppConfig['CAPLIN.MOTF.ORDER.MARGIN.ENABLED'] = false;

CAPLIN.MOTF.ORDER.MARGIN.MAX

The maximum margin, in pips, for orders. If a user sets an order margin higher than the maximum margin, then the margin is reset to the maximum value.

Type Integer
Valid values

From CAPLIN.MOTF.ORDER.MARGIN.MIN to the JavaScript constant Number.MAX_SAFE_INTEGER.

Default value 1000
Example ExtendedAppConfig['CAPLIN.MOTF.ORDER.MARGIN.MAX'] = 2000;

CAPLIN.MOTF.ORDER.MARGIN.MIN

The minimum margin, in pips, for orders. If a user sets an order margin lower than the minimum margin, then the margin value is reset to the minimum value.

Type Integer
Valid values From JavaScript constant Number.MIN_SAFE_INTEGER to CAPLIN.MOTF.ORDER.MARGIN.MAX
Default value -1000
Example ExtendedAppConfig['CAPLIN.MOTF.ORDER.MARGIN.MIN'] = -500;

CAPLIN.MOTF.TICKET.ACCOUNT.ALLOW_NULL_SELECTION

Set to true to allow users to execute trades against a null trading account. The null account is labelled '-' in the ticket's account dropdown, and is sent to the server as the value '-|-'.

Set to false to require users to execute trades against a named trading account.

Type Boolean
Valid values true, false
Default value false
Example ExtendedAppConfig['CAPLIN.MOTIF.TICKET.ACCOUNT.ALL_NULL_SELECTION'] = true;

CAPLIN.MOTF.TICKET.ACCOUNT.AUTO_SELECT_FIRST

Determines the action performed following the selection of a client in a sales ticket:

  • Set to true to automatically select the first of the client's trading accounts.
  • Set to false to leave the client's trading account unselected.

If a client only has one account, then client's account will always be automatically selected.

This configuration option does not apply to tickets opened by clicking New trade, which always automatically select the first of the client's trading accounts.

Type Boolean
Valid values true, false
Default value false
Example ExtendedAppConfig['CAPLIN.MOTIF.TICKET.ACCOUNT.AUTO_SELECT_FIRST'] = true;

CAPLIN.MOTF.TICKET.APPLY_ALL_IN_MARGIN_TO_FORWARD

Determines how a forward quote is re-calculated following a user-adjustment to the all-in-margin:

  • Set to true to achieve the new all-in-margin by automatically adjusting the forward margin.
  • Set to false to achieve the new all-in-margin by automatically adjusting the spot margin.

In the event that there is a precision mismatch between the three margins (spot, forward, and all-in), any extra precision will be rolled onto the forward margin regardless of the value of this configuration option.

Type Boolean
Valid values true, false
Default value false
Example ExtendedAppConfig['CAPLIN.MOTF.TICKET.APPLY_ALL_IN_MARGIN_TO_FORWARD'] = true;

CAPLIN.MOTF.TICKET.AUTO_QUOTE

Determines whether the Auto-Quote feature is enabled. Auto-Quote streamlines the processes of requesting and re-requesting a quote.

Type Boolean
Valid values true, false
Default value false
Example ExtendedAppConfig['CAPLIN.MOTF.TICKET.AUTO_QUOTE'] = true;

The table below compares the process of requesting and re-requesting a quote when Auto-Quote is enabled and when Auto-Quote is disabled.

  true false
Requesting a quote using a ticket opened by clicking New trade. The quote is automatically requested when when all parameters for the quote have been completed. The user clicks Get quote to request a quote.
Requesting a quote using a ticket opened from an FX tile. The quote is automatically requested. The user clicks Get quote to request a quote.
Changing a quote's parameters and re-quoting The user can edit the quotes's parameters on-the-fly. If the Amount or Settlement parameters are changed, then the ticket will automatically request a new quote. By default, the existing quote's margins are retained in the new quote. To reset the margins when requoting, see CAPLIN.MOTF.TICKET.MARGIN.APPLY_DEFAULT_ON_REQUOTE. To change the quote's parameters, the user must cancel the current quote, edit the parameters of the trade, and click Get quote to request a new quote.

CAPLIN.MOTF.TICKET.CLIENT_RATE_ALWAYS_EDITABLE

Overrides the default behaviour for when a client-rate field can, and cannot, be edited. By default, rates and margins are only editable when they are locked (fixed). Locks are mutually exclusive: when a quote's margin is locked (fixed), the quote's client-rate is unlocked (floating).

  • Set this option to true to allow a user to edit the client-rate field regardless of whether the user has locked the client-rate.
  • Set this option to false to allow a user to edit the client-rate field only when the user has locked the client-rate.
Type Boolean
Valid values true, false
Default value false
Example ExtendedAppConfig['CAPLIN.MOTF.TICKET.CLIENT_RATE_ALWAYS_EDITABLE'] = true;

CAPLIN.MOTF.TICKET.DEFAULTS

The default values for fields in the sales ticket.

Type Object
Valid values A JavaScript object with properties corresponding to trade field names.
Default value {}
Example ExtendedAppConfig['CAPLIN.MOTF.TICKET.DEFAULTS'][TRADE_FIELDS.CURRENCY_PAIR] = 'GBPUSD';

CAPLIN.MOTF.TICKET.EXECUTE.BUTTON.ALWAYS_ENABLED

Determines when the execute buttons on a ticket are enabled:

  • Set to true to allow a user to click the execute button on a sales ticket when either the client rate or the margin is locked.
  • Set to false to allow a user to click the execute button only when the client rate is locked (fixed).
Type Boolean
Valid values true, false
Default value true
Example ExtendedAppConfig['CAPLIN.MOTF.TICKET.EXECUTE.BUTTON.ALWAYS_ENABLED'] = false;

CAPLIN.MOTF.TICKET.EXECUTE.BUTTON.UPDATE.SIDE

Determines whether ticket rates are labelled in terms of the base currency or the quote (term) currency in a traded currency pair:

  • Set to true to label rates in terms of the base currency. For example, the bid rate for GBPUSD would be labelled as "Bank buys GBP".
  • Set to false to label rates in terms of the quote (term) currency. For example, the bid rate for GBPUSD would be labelled as "Bank sells USD".
Type Boolean
Valid values true, false
Default value true
Example ExtendedAppConfig['CAPLIN.MOTF.TICKET.EXECUTE.BUTTON.UPDATE.SIDE'] = false;

CAPLIN.MOTF.TICKET.FWD.MARGIN.MAX

The maximum forward margin, in points. If a user sets a forward margin to a value higher than the maximum value, then the margin resets to the maximum value.

Type Integer
Valid values

From CAPLIN.MOTF.TICKET.FWD.MARGIN.MIN to the JavaScript constant Number.MAX_SAFE_INTEGER

Default value 1000
Example ExtendedAppConfig['CAPLIN.MOTF.TICKET.FWD.MARGIN.MAX'] = 2000;

CAPLIN.MOTF.TICKET.FWD.MARGIN.MIN

The minimum forward margin, in points. If a user sets a forward margin to a value lower than the minimum value, then the margin resets to the minimum value.

Type Integer
Valid values From the JavaScript constant Number.MIN_SAFE_INTEGER to CAPLIN.MOTF.TICKET.FWD.MARGIN.MAX
Default value -1000
Example ExtendedAppConfig['CAPLIN.MOTF.TICKET.FWD.MARGIN.MIN'] = -500;

CAPLIN.MOTF.TICKET.LOCKING_MODE

Set to true to give users the option of choosing which locking mode sales tickets operate in: locked margins or locked client-rates. Set to false to restrict the locking mode to locked margins.

Type Boolean
Valid values true, false
Default value true
Example ExtendedAppConfig['CAPLIN.MOTF.TICKET.LOCKING_MODE'] = false;

CAPLIN.MOTF.TICKET.MARGIN.APPLY_DEFAULT_ON_REQUOTE

When Auto-Quoting is enabled, this option determines whether margins should reset to the client's default margin on re-quoting. Tickets automatically request a re-quote if Auto-Quoting is enabled and a change is made to a quote's Amount field or Settlement field.

  • Set to true to requote using the client's default margins, as supplied by the DefaultSpotMargin field and the DefaultFwdMargin field in the pricing stream.
  • Set to false to re-quote using the current margins in the ticket.

To enable ticket auto-quoting, see CAPLIN.MOTF.TICKET.AUTO_QUOTE.

Type Boolean
Valid values true, false
Default value false
Example ExtendedAppConfig['CAPLIN.MOTF.TICKET.LOCKING_MODE'] = true;

CAPLIN.MOTF.TICKET.MISSED_TRADE.ENABLED

Set to true to display a Missed trade button alongside the ticket's Cancel Trade button. The Missed Trade button cancels the trade and records that the client rejected the quoted price.

Type Boolean
Valid values true, false
Default value false
Example ExtendedAppConfig['CAPLIN.MOTF.TICKET.MISSED_TRADE.ENABLED'] = true;

CAPLIN.MOTF.TICKET.MISSED_TRADE.REQUIRE_LOCKED_SIDE

Determines the conditions for the display of the Missed Trade button on tickets for two-way trades. The Missed Trade button is always visible on one-way trades.

  • Set to true to display the Missed Trade button for two-way trades only when a client rate is locked. This extra condition makes it clear which rate in a two-way trade was rejected by the client.
  • Set to false to always display the Missed Trade button on two-way trades.

To enable missed-trade tracking, see CAPLIN.MOTF.TICKET.MISSED_TRADE.ENABLED.

Type Boolean
Valid values true, false
Default value false
Example ExtendedAppConfig['CAPLIN.MOTF.TICKET.MISSED_TRADE.REQUIRE_LOCKED_SIDE'] = true;

CAPLIN.MOTF.TICKET.RATE.APPLY_MARGIN_ROUNDING

Whether to round or truncate margins that have a higher precision than their fields' display precision. The display precision, in decimal places (dps), is specified in the SpotRateDps and AllInRateDPS fields in the trader-rate stream. When a margin field's raw value has a higher precision than the margin field's display precision, the field is highlighted and the raw value is displayed in the field's tooltip.

  • Set this option to true to round high-precision margins. Ask margins are rounded up; bid margins are rounded down. For example, an ask margin of 1.115 rounded to a dps of 2 is 1.12, and a bid margin of 1.115 rounded to a dps of 2 is 1.11.
  • Set this option to false to truncate high-precision margins. For example, an ask or bid margin of 1.115 truncated to a dps value of 2 is 1.11.

Note: high-precision all-in-margins are always rounded to the AllInRateDps (up for ask; down for bid). On executing a trade, the raw spot margin is adjusted (if required) so that raw_trader_rate ± raw_all-in-margin = rounded_all-in-margin.

Type Boolean
Valid values true, false
Default value true
Example ExtendedAppConfig['CAPLIN.MOTF.TICKET.RATE.APPLY_MARGIN_ROUNDING'] = false;

CAPLIN.MOTF.TICKET.RATE.APPLY_RATE_ROUNDING

Whether to round or truncate rates that have a higher precision than the rate field's display precision. The display precision, in decimal places (dps), is specified in the trader-rate stream. When a rate field's raw value has a higher precision than the rate field's display precision, the field is highlighted and the raw value is displayed in the field's tooltip.

  • Set this option to true to round high-precision rates. Ask rates are rounded up; bid rates are rounded down. For example, an ask rate of 1.115 rounded to a dps of 2 is 1.12, and a bid rate of 1.115 rounded to a dps of 2 is 1.11.
  • Set this option to false to truncate high-precision rates. For example, an ask or bid rate of 1.115 truncated to a dps value of 2 is 1.11.

Note: high-precision all-in-rates are always rounded to the AllInRateDPS (up for ask; down for bid). On executing a trade, the raw spot margin is adjusted (if required) so that raw_trader_rate ± raw_all-in-margin = rounded_all-in-margin.

Type Boolean
Valid values true, false
Default value true
Example ExtendedAppConfig['CAPLIN.MOTF.TICKET.RATE.APPLY_RATE_ROUNDING'] = false;

CAPLIN.MOTF.TICKET.SHOW.FWD_MID_POINTS

Set to true to display mid-points on a sales ticket for a forward trade.

Type Boolean
Valid values true, false
Default value false
Example ExtendedAppConfig['CAPLIN.MOTF.TICKET.SHOW.FWD_MID_POINTS'] = true;

CAPLIN.MOTF.TICKET.SHOW.SPOT_MID_RATE

Set to true to display the mid-rate on a sales ticket for a spot trade.

Type Boolean
Valid values true, false
Default value false
Example ExtendedAppConfig['CAPLIN.MOTF.TICKET.SHOW.SPOT_MID_RATE'] = true;

CAPLIN.MOTF.TICKET.SPOT.MARGIN.MAX

The maximum spot margin, in pips. If a user sets a spot margin to a value higher than the maximum value, then the margin resets to the maximum value.

Type Integer
Valid values

From CAPLIN.MOTF.TICKET.SPOT.MARGIN.MIN to the JavaScript constant Number.MAX_SAFE_INTEGER

Default value 1000
Example ExtendedAppConfig['CAPLIN.MOTF.TICKET.SPOT.MARGIN.MAX'] = 2000;

CAPLIN.MOTF.TICKET.SPOT.MARGIN.MIN

The minimum spot margin, in pips. If a user sets a forward margin to a value lower than the minimum value, then the margin resets to the minimum value.

Type Integer
Valid values From the JavaScript constant Number.MIN_SAFE_INTEGER to CAPLIN.MOTF.TICKET.SPOT.MARGIN.MAX
Default value -1000
Example ExtendedAppConfig['CAPLIN.MOTF.TICKET.SPOT.MARGIN.MIN'] = -500;

CAPLIN.MOTF.TICKET.STREAMING_MODE

Set to true to allow the user to choose how trader-rate fields on sales tickets are updated: pricing stream or manually. Set to false to always update trader-rate fields from a pricing stream.

Type Boolean
Valid values true, false
Default value false
Example ExtendedAppConfig['CAPLIN.MOTF.TICKET.STREAMING_MODE'] = true;

CAPLIN.MOTF.TICKET.SWAP.MARGIN.MAX

The maximum swap margin, in points. If a user sets a swap margin to a value higher than the maximum value, then the margin resets to the maximum value.

Type Integer
Valid values

From CAPLIN.MOTF.TICKET.SWAP.MARGIN.MIN to the JavaScript constant Number.MAX_SAFE_INTEGER

Default value 1000
Example ExtendedAppConfig['CAPLIN.MOTF.TICKET.SWAP.MARGIN.MAX'] = 2000;

CAPLIN.MOTF.TICKET.SWAP.MARGIN.MIN

The minimum swap margin, in points. If a user sets a swap margin to a value lower than the minimum value, then the margin resets to the minimum value.

Type Integer
Valid values

From the JavaScript constant Number.MIN_SAFE_INTEGER to CAPLIN.MOTF.TICKET.SWAP.MARGIN.MAX

Default value -1000
Example ExtendedAppConfig['CAPLIN.MOTF.TICKET.SWAP.MARGIN.MIN'] = -500;

CAPLIN.MOTF.TICKET.SWAP_REVERT_SPOT_SWITCH

When supplying a swap quote to FX Sales, the FX Integration API (FX API) switches the values in the bid and ask fields of the swap's near leg. FX Sales requires that bid and ask values are in their correct fields, so by default FX Sales is configured to revert the switch made by the FX API.

  • Set this option to true to revert the switch made by the FX Integration API.
  • Set this option to false to accept the fields as they are supplied by the FX Integration API.

The default configuration (set to true) is suitable for the majority of architectures, but if a backend pricing system supplies the FX API with switched near-leg field values, then the switch performed by the FX API will be enough to correct the format of the near-leg, and FX Sales should not revert FX API's switch.

Type Boolean
Valid values true, false
Default value true
Example ExtendedAppConfig['CAPLIN.MOTF.TICKET.SWAP_REVERT_SPOT_SWITCH'] = false;

CAPLIN.MOTF.TICKET.TIMEOUTBAR.RUN.LOW.ENABLED

Set to true to change the colour of the sales-ticket timeout bar when a stream or quote is about to expire. See also, CAPLIN.MOTF.TICKET.TIMEOUTBAR.RUN.LOW.TIMETHRESHOLD.

Type Boolean
Valid values true, false
Default value true
Example ExtendedAppConfig['CAPLIN.MOTF.TICKET.TIMEOUTBAR.RUN.LOW.ENABLED'] = false;

CAPLIN.MOTF.TICKET.TIMEOUTBAR.RUN.LOW.TIMETHRESHOLD

The remaining time, in seconds, at which the colour of the sales-ticket timeout bar changes to indicate that a stream or quote is about to expire. See also, CAPLIN.MOTF.TICKET.TIMEOUTBAR.RUN.LOW.ENABLED.

Type Integer
Valid values 0 to the JavaScript constant Number.MAX_SAFE_INTEGER.
Default value 5
Example ExtendedAppConfig['CAPLIN.MOTF.TICKET.TIMEOUTBAR.RUN.LOW.TIMETHRESHOLD'] = 10;

CAPLIN.MOTF.TICKET.TRADE.DIRECTION

Determines which values are available in a ticket's Trade Direction dropdown.

  • two-way: allows one-way and two-way trade directions in the dropdown.
  • one-way: allows only one-way trade directions in the dropdown.
  • disabled: hides the Trade Direction dropdown, and the trade direction is set to two-way.
Type String
Valid values

The following constants in the caplin/motf/MarginConstants class:

  • TRADE_DIRECTION.MODE.TWO_WAY
  • TRADE_DIRECTION.MODE.ONE_WAY
  • TRADE_DIRECTION.MODE.DISABLED
Default value TRADE_DIRECTION_MODE.TWO_WAY
Example ExtendedAppConfig['CAPLIN.MOTF.TICKET.TRADE.DIRECTION'] = TRADE_DIRECTION_MODE.ONE_WAY;

CAPLIN.MULTIPLECLIENTMANAGEMENT.ENABLED

Set to true to allow users to display sales tickets for different clients simultaneously. Set to false to allow users to display tickets for one client only.

When set to false, FX Sales enforces the following behaviour:

  • Selecting a new client closes all open sales tickets.
  • The client field in sales tickets is not editable.
  • The New Trade button is only enabled once the user has selected a client.
Type Boolean
Valid values true, false
Default value true
Example ExtendedAppConfig['CAPLIN.MULTIPLECLIENTMANAGEMENT.ENABLED'] = false;

CAPLIN.PERMISSION.CONFIG.URL

The path to the permissions configuration file, which specifies the subjects that supply FX Sales with real-time permissioning data.

The default permissions configuration file, unbundled-resources/customPermissionDatasourceDefinitions.xml, contains the following configuration:

<?xml version="1.0" encoding="UTF-8"?>
<permissionDatasourceDefinitions xmlns="http://schema.caplin.com/CaplinTrader/permissionDatasourceDefinitions">
    <permissionsource name="MASTER" role="Master"/>
    <permissionsource name="SLAVE1"/>
</permissionDatasourceDefinitions>

The configuration above configures FX Sales to subscribe to permissioning data in two containers:

  • /PERMISSIONS/MASTER/CONTAINER/fx-sales-username
  • /PERMISSIONS/SLAVE1/CONTAINER/fx-sales-username
Type String
Valid values Valid path to the permissions XML file in the unbundled-resources directory of the FX Sales WAR file.
Default value 'unbundled-resources/permissionDatasourceDefinitions.xml'
Example ExtendedAppConfig['CAPLIN.PERMISSION.CONFIG.URL'] = 'unbundled-resources/customPermissionDatasourceDefinitions.xml';

CAPLIN.SECURITY.PERMISSIONING.STATUS

Set to 'ENABLED' to enable client-side permission checks. Set to any value other than 'ENABLED' to disable client-side permission checks. This is used during development of FX Sales to test server-side permissioning by permitting all actions on the client-side.

Type String
Valid values 'ENABLED',
Default value 'ENABLED'
Example ExtendedAppConfig['CAPLIN.SECURITY.PERMISSIONING.STATUS'] = 'DISABLED';

CAPLIN.SESSION.TIMEOUT

The period of inactivity, in minutes, after which an FX Sales user is automatically logged out. Set this option to '0' to disable session timeouts.

Type Integer
Valid values 0 to Number.MAX_SAFE_INTEGER
Default value 0
Example ExtendedAppConfig['CAPLIN.SESSION.TIMEOUT'] = 30;

CAPLIN.USERPREFERENCES.ENABLED

Set to true to display the Settings icon () in the FX Sales toolbar.

Type Boolean
Valid values true, false
Default value true
Example ExtendedAppConfig['CAPLIN.USERPREFERENCES.ENABLED'] = false;

CAPLIN.USERPREFERENCES.PROFITCURRENCY.DEFAULT

Determines the user's default profit currency when the user can set it via the user preferences.

Type String
Valid values A three-letter currency code in the option CAPLIN.USERPREFERENCES.PROFITCURRENCY.OPTIONS
Default value 'USD'
Example ExtendedAppConfig['CAPLIN.USERPREFERENCES.PROFITCURRENCY.DEFAULT'] = 'EUR';

CAPLIN.USERPREFERENCES.PROFITCURRENCY.ENABLED

Set to true to display the Profit Currency user preference in the User Settings dialog.

For the user's preference to take effect, the option SHOWHOUSEPROFIT must also be enabled.

Type Boolean
Valid values true, false
Default value true
Example ExtendedAppConfig['CAPLIN.USERPREFERENCES.PROFITCURRENCY.ENABLED'] = false;

CAPLIN.USERPREFERENCES.PROFITCURRENCY.OPTIONS

The list of currencies from which users can select their preferred profit currency.

Type Array of strings
Valid values Array of standard three-letter currency codes.
Default value ['USD', 'EUR', 'GBP']
Example ExtendedAppConfig['CAPLIN.USERPREFERENCES.PROFITCURRENCY.OPTIONS'] = ['EUR', 'GBP', 'CHF'];

CAPLIN.USERS.UNIQUE.FIELD

Determines which field is the unique identifier for a TOBO (trading on behalf of) user.

Type String
Valid values Valid field name
Default value 'UserID'
Example ExtendedAppConfig['CAPLIN.USERS.UNIQUE.FIELD'] = 'AnotherFieldName';

CAPLIN.USERSEARCH.MODAL.ENABLED

Set to true to enable the new search-dialog. Set to false to use the deprecated search-sidebar.

Type Boolean
Valid values true, false
Default value true
Example ExtendedAppConfig['CAPLIN.USERSEARCH.MODAL.ENABLED'] = false;

HEADER.CLIENTINFO.SHOW.ON.FRAMES

The screens and tabs on which the client-info bar is displayed.

Type Array of strings
Valid values

The data-role-id attribute of any HTML element configured as a target frame in the file caplinx/SideMenuConfig.js.

Default value ['user-trade', 'order-trade']
Example ExtendedAppConfig['HEADER.CLIENTINFO.SHOW.ON.FRAMES'] = ['user-trade'];

ORDER.TICKET.FACTORY

The configuration object for order tickets. Developers can create their own config object to override order ticket configuration.

Type JavaScript object reference
Valid values See file default-aspect/src/caplinx/motf/orderticket/config/MotfOrderTicketConfig.js
Default value new MotfOrderTicketConfig() (see file default-aspect/src/caplinx/motf/orderticket/config/MotfOrderTicketConfig.js)
Example ExtendedAppConfig['ORDER.TICKET.FACTORY'] = new MyOrderTicketFactory();

SHOWHOUSEPROFIT

Set to true to display profit fields in the house currency.

Set to false to display profit fields in the term currency of the traded currency pair.

To allow users to choose from a selection of profit currencies, see CAPLIN.USERPREFERENCES.PROFITCURRENCY.ENABLED.

Type Boolean
Valid values true, false
Default value true
Example ExtendedAppConfig['SHOWHOUSEPROFIT'] = false;

SIDEMENU.DEFAULT

The configuration object for the side-bar menu. 

Type JavaScript object reference
Valid values See file default-aspect/src/caplinx/SideMenuConfig.js
Default value A reference to the object exported by module caplinx/SideMenuConfig.
Example ExtendedAppConfig['SIDEMENU.DEFAULT'] = mySideMenuConfig;