FX Professional configuration

This page lists the configuration options for FX Professional.

Editing configuration options

There are two different methods for overriding the default configuration options in FX Professional.

Overriding configuration at deployment

As of FX Professional version 3.38, customers have the option to use an external file to override the AppConfig configuration options packaged within the FX Professional WAR file. This provides you with the flexibility to enable features in some environments, but not in others. For example, you may want to test a new feature in a test environment before enabling it in production.

You can use this method to override configuration options that take boolean, integer, or string values. To override options that take a JavaScript object, see the Overriding configuration in source code section below.

To override the configuration options this way, follow the steps below:

  1. Create a file in which to store the external configuration. For example, <tomcat_root>/conf/fxpro/ExternalAppConfig.json.

  2. In the application context for FX Professional, set the JNDI environment variable CONFIG_FILE to an absolute or relative path to the file you created above. For example, in Tomcat 9, add the following environment entry to the file <tomcat_root>/conf/Catalina/localhost/<variant>trader.xml:

    <Environment name="CONFIG_FILE"
      value="../../conf/fxpro/ExternalAppConfig.json"
      type="java.lang.String" override="false" />

    For more information on setting JNDI environment entries for FX Professional, see FX Professional JNDI configuration and Deploying FX Professional.

  3. Set configuration options in the external configuration file as properties of a single JSON object literal. For example, if you’re licensed to use the block trade feature but it is disabled in your FX Professional WAR file, you can enable it in a deployment by overriding the value for FEATURE_BLOCK_TRADE_ENABLED. The external configuration file would look like this:

    {
      "FEATURE_BLOCK_TRADE_ENABLED": true
    }

Overriding configuration in source code

This method requires the source code distribution of FX Professional. The benefits of overriding the configuration in the source code are that any changes are tracked, and any new configuration set is guaranteed to be present at deployment.

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

The contents of the file AppConfig.js changes in future releases of FX Professional. To avoid merging your configuration changes with future changes to AppConfig.js, add your configuration to the ExtendedAppConfig.js file.

In the example below, ExtendedAppConfig.js has been used to enable the Block Trades feature and adjust the maximum number of rows that may be uploaded to Block Trades in a spreadsheet:

Example use of ExtendedAppConfig.js
export default class ExtendedAppConfig extends AppConfig {
  constructor() {
    super();
    this.options.FEATURE_BLOCK_TRADE_ENABLED = true;
    this.options["BLOCK_TRADING.UPLOAD_ROW_LIMIT"] = 80; (1)
  }
}
1 Note that the name of this option includes a period (.), and so JavaScript’s array syntax for referencing object properties must be used.

Configuration reference

FX Professional 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

"fxtrader"

Example value
"my_fxtrader_app"

APP_NAME

Determines the title of the page displayed after you log in.

Type

String

Default value

"FX Professional"

Example value
"My Bank's Name"

BLOCK_TRADING.IMPORT_SERVLET_URL

The URL where blocks are uploaded and stored.

Type

String

Default value

"servlet/ConverterServlet/"

Example value
"servlet/mynewConverterSevlet/"

BLOCK_TRADING.UPLOAD_ROW_LIMIT

A limit on the number of rows in a spreadsheet when uploading block trades. We recommend keeping the limit to 100 or below for the best performance.

Type

Integer

Default value

100

Example value
100

BLOCK.TRADES.MIDRATES.DISPLAY

Determines how you want the mid-rate displayed. Whether you want the mid-rate displayed as a rate, as points, or not displayed at all.

Type

Constant imported from "cps-block-trading/utils/blockTradingConstants"

Valid values

RATE, POINTS or NONE

Default value

POINTS

Example value
RATE

BLOCK.TRADES.OVERVIEW.ESTIMATED_COST.ENABLED

Determines if the cost field displays during block trading. Set to false to to hide the field.

Type

Boolean

Default value

true

Example value
true

BLOCK.TRADES.PRICING_ROW.TOOLTIP_PREFIX.ENABLED

Set to true this displays client spot ask rate or client spot bid rate. As an FX Professional user this is always set to false.

Type

Boolean

Default value

false

Example value
false

BLOCK.TRADES.TEMPLATE.FILENAME

Determines the file name of the downloadable block trading template file.

Type

String

Default value

"block-trading-template.xlsx"

Example value
"block-trading-template.xlsx"

BLOCK.TRADES.TEMPLATE.PATH

Determines the path to the block template file that you download when you click the download template button.

Type

String

Default value

appMeta.getVersionedBundlePath('static/dev/block-trading-template.xlsx')
Example value
appMeta.getVersionedBundlePath('static/dev/block-trading-template.xlsx')

BLOCK.TRADES.TOBO

Set to true to display margin fields in the block trade component. Always set this option to false in FX Professional.

Type

Boolean

Default value

false

Example value
false

BLOCK.TRADES.USE.CPS.COMPONENT

Determines which block trading implementation is used.

  • Set to true this implements the legacy block trading implementation.

  • Set to false by default to implement the new version of block trading.

Type

Boolean

Default value

false

Example value
false

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 value
"csv"

BLOTTER.MENU.ACTIVITY.ENABLED

Set to true to enable the activity blotter, which details the trades a user has made in the current session.

Type

Boolean

Default value

true

Example value
true

BLOTTER.MENU.HISTORIC.ENABLED

Enables the Add>Historic Search main menu item. This is a legacy blotter component and Caplin now recommend using HISTORIC_SEARCH.ENABLED for better search granularity.

Type

Boolean

Default value

true

Example value
true

Set to true this enables a contact page link in the menu, which navigates to a specified URL when clicked.

Set to null disables this feature.

Type

String

Default value

null

Example value
"https://example.com/contact-us-page"

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".

Type

Boolean

Default value

false

Example value
false

Set to true this enables a legal page link in the menu, which navigates to a specified URL when clicked.

Set to null disables this feature.

Type

String

Default value

null

Example value
"https://www.example.com/legal-information-page"

CAPLIN.LIQUIDITY_RISK.SUBJECT

Determines the amount of risk, using the total cash amount of all unsettled trades, a user has if enabled. The amount is displayed next to the account in the top right hand corner of the screen.

To enable this feature set the configuration option to anything except null. This is set to null by default.

Type

String

Default value

null

Example value
"/PRIVATE/FX/LIQUIDITY/RISK"

CAPLIN.LOGIN

The configuration object for the built-in login page.

Type

Object

Valid values

See CAPLIN.LOGIN configuration object below

Default value

The object exported by module default-aspect/src/caplinx/LoginConfig.js

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 specification
Property Type Description

text

String

The text to display

url

String

[optional] The URL to navigate to on clicking the text

Example CAPLIN.LOGIN object
{
  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: "https://www.caplin.com/business/page/cookie-policy",
      text: i18n('reactloginpage.footer.cookies')
    },
    {
      url: "https://www.caplin.com/business/page/terms-conditions",
      text: i18n('reactloginpage.footer.terms')
    },
    {
      url: "https://www.caplin.com/business/page/privacy",
      text: i18n('reactloginpage.footer.privacy')
    }
  ],
  keyMasterUrl: "servlet/StandardKeyMaster",
  tradeModeRegex: "/.*~CustomerId=(.*)~.*/",
  forgottenPasswordFunction: ForgottenPasswordExample
}
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.PRINT.CUSTOM_CSS_URL

The URL to a CSS file which applies to the print out of a trade summary of an executed FX RFS trade.

Type

String

Default value

null

Example value
"https://my-trading-application.com/RFS-print-out/style.css"

CAPLIN.SESSION.TIMEOUT

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

Type

Integer

Default value

0

Example value
20

CAPLIN.UNSETTLED_POSITIONS.ENABLED

Set to true to display a small grid that shows currencies in one column, and a plus or minus in the next column to indicate if the trade is settled or unsettled. This table updates with the users trades.

Type

Boolean

Default value

false

Example value
false

Set to true this enables a user guide link in the menu, which navigates to a specified URL when clicked.

Type

String

Default value

null

Example value
"https://example.com/userGuide.pdf"

CAPLIN.USERDETAILS.SUBJECT

Determines the subject where the user details are requested from.

Type

String subject

Default value

'/PRIVATE/USERDETAILS'

Example value
'/PRIVATE/USERDETAILS'

DEALER.INTERVENTION.TIMEOUT.MILLISEC

Determines the length of time, in milliseconds, that you decide a queued RFS trade ticket has gone into intervention.

Type

Integer

Default value

5000

Example value
5000

DEFAULT_CURRENCY_PAIR

Sets the default currency in the block trade component.

Type

String

Default value

"EURUSD"

Example value
"EURUSD"

DEFAULT.WATCHLISTS

The list of currencies when you add a watchlist.

Type

Object

Valid values

An object containing a single property caplinx.watchlists.majors that is set to an array of strings. Each string must be a valid currency pair.

Default value

{
    "caplinx.watchlists.majors": [
        "EURUSD",
        "GBPUSD",
        "EURGBP",
        "USDJPY",
        "EURJPY",
        "USDCHF",
        "EURCHF",
        "USDCAD",
        "AUDUSD",
        "NZDUSD",
    ]
}
Example value
export default class ExtendedAppConfig extends AppConfig {
  constructor() (
    super();

    this.option["DEFAULT.WATCHLISTS"] = {
      "caplinx.wattchlists.majors": [
        "EURUSD",
        "GBPUSD",
        "EURGBP",
      ]
    };
};

DEFAULT.WATCHLISTS.CCY_AMOUNT

Determines the currency amount requested on a watchlist subscription, which is used to display the indicative rates in watchlist components. By default this is set to 1, which the backend interprets as an indicative value rather than a live price.

Type

Integer

Default value

1

Example value
1

DISPLAY_USERNAME

Set to true to display the username, of the logged in user, in the top right hand corner of the application.

Type

Boolean

Default value

true

Example value
true

DISPLAY.ACTIVITY.LOG

Set to true to log any actions the user executes. For example, the action of requesting a price.

Set to false to turn off the feature.

Type

Boolean

Default value

true

Example value
true

DISPLAY.TILE.ESP_CUE

Set to true to display an icon on FX tiles that display executable streaming prices.

Set to true to enable the cue symbol, and false to disable it.

Type

Boolean

Default value

true

Example value
true

DISPLAY.TILE.MIDRATES

In the middle of a two-way outright tile there is a box that displays the mid rate. This configuration item determines if that is shown or hidden.

  • Set to true to display the mid rate.

  • Set to false to hide it.

Type

Boolean

Default value

true

Example value
true

EDIT.ORDER.TICKET.FACTORY

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

Type

Object

Valid values

ExtendedEditOrderTicketConfig()

Default value

new ExtendedEditOrderTicketConfig()

where ExtendedEditOrderTicketConfig is from apps/fxtrader/scr/orderticket/config/ExtendedEditOrderTicketConfig.js

Example value
export default class ExtendedAppConfig extends AppConfig {
  constructor() {
    super();

    this.options["EDIT.ORDER.TICKET.FACTORY"] = new ExtendedEditOrderTicketConfig();
  }
}

EXECUTION_BLOTTER_CUSTOM_TRADE_COMPLETED_STATUS

Determines the status field of a trade displayed in the execution blotter. The status of a trade is either "Complete", "executed", or a custom value decided by an FX Professional customer.

Type

String

Valid values

"executed", "Complete", "customValueString"

Default value

"Complete"

Example value
"executed"

FEATURE_ALLOCATION_ENABLED

Set to true to enable the legacy version of post trade allocations.

Type

Boolean

Default value

true

Example value
true

FEATURE_BLOCK_TRADE_ENABLED

Set to true to enable block trading.

Type

Boolean

Default value

true

Example value
true

FEATURE_CHART_ENABLED

Set to true to enable charts as a component that a user can add to the application layout.

Type

Boolean

Default value

true

Example value
true

FEATURE_NOTIFICATION_ENABLED

Determines whether the notification icon in the top right hand corner of the application is shown or hidden.

  • Set to true to show the notification icon.

  • Set to false to hide the notification icon.

Type

Boolean

Default value

true

Example value
true

FEATURE_STRIP.ACCOUNT.ENABLED

Determines whether the account selector is displayed in the application header, the applications Settings panel via ☰ > Settings > General, on block trades, and if the account is displayed on money market trade summaries.

  • Set to true to display the account selector and display the account on money market trade summaries.

  • Set to false to hide the account selector and hide the account on money market trade summaries.

Type

Boolean

Default value

false

Example value
true

FEATURE_STRIP.SETTLEMENT_DATE.ENABLED

Determines whether to display the settlement date field on tickets and tiles.

Set to false when FX Professional is used for crypto currency trading.

Type

Boolean

Default value

true

Example value
true

FEATURE_TIME_OPTION_ENABLED

Set to true to enable trading in time-option forwards.

Type

Boolean

Default value

true

Example value
true

FEATURE_WATCHLIST_ENABLED

Set to true to enable users to add watchlist components to their layouts.

Type

Boolean

Default value

true

Example value
true

FX_TILE_DOUBLE_CLICK_TIMEOUT

For users who have set Main Menu > Settings > FX Tile > Click to trade to Double click, this configuration option defines double-click speed as the maximum delay (in milliseconds) between clicks for two clicks to be detected as a double-click.

For example, the timeout is set to 300 milliseconds. If the user takes longer than 300 milliseconds between the first and second click when placing a trade, the trade is not executed.

Type

Integer

Default value

300

Example value
300

FX.TILE.MENU.ITEM.SWAP_LADDER.ENABLED

Enables or disables the swap ladder option on FX tiles.

  • Set to true to enable the swap ladder option.

  • Set to false to disable the swap ladder option.

Type

Boolean

Default value

false

Example value
false

FX_TILE_HIDE_CONFIRMATION_TIME

Determines how long (in milliseconds) the trade summary message of an executed trade remains visible for.

To disable the confirmation message set to '0'.

Type

Integer

Default value

5000

Example value
5000

FX_TILE_UPDATE_SUBSCRIPTION_ON_AMOUNT_BLUR

Determines when a tile resubscribes to a pricing stream following a user’s change to the tile’s Amount field.

  • Set to true to resubscribe when the Amount field loses focus.

  • Set to false to resubscribe on each key press in the Amount field.

Type

Boolean

Default value

false

Example value
false

FX.CLEAR_AMOUNT_ON_DEALT_CCY_CHANGE

When this configuration item is set to true, the Amount field on tickets and tiles resets to 0 when the dealt currency field is toggled.

Type

Boolean

Default value

false

Example value
false

FX.CUSTOM_CCY_SEPARATOR

Set to true to separate currency codes in currency pairs with an underscore ('_'). Required for handling currency pairs in which one or both currencies are crypto currencies, some of which use currency codes longer than the ISO 4217 three-letter standard.

For trading standard currency pairs, set this option to false.

Type

Boolean

Default value

false

Example value
false

FX.CUSTOM_DPS.ENABLED

Determines how many decimal spaces are displayed.

  • Set to true to enable a custom number of decimal spaces to display.

  • Set to false and this configuration item subscribes to /fx/precision/currency-pair/currency.

Type

Boolean

Default value

false

Example value
false

FX.DEAL_ON_BASE_CCY

Determines which currency, in a currency pair, you want to see first and trade on in a tile. By default the tile is set to trade on the base currency.

  • Set to false to trade on the quote (term) currency in a currency pair.

Type

Boolean

Default value

true

Example value
true

FX.FORCE_BASE_CCY_LABELS

Set to true this configuration item is used to display the currency direction inside the execution buttons of FX tiles and tickets.

Type

Boolean

Default value

false

Example value
false

FX.TILE.CURRENCY_TOGGLE.ENABLED

Set to true this enables the dealt currency toggle on the FX tile.

Type

Boolean

Default value

true

Example value
true

FX.TILE.DISABLE_FORWARD_POINTS

Determines if the application shows the forward points in the top right hand corner of the application if the user adds a tenor/date other than spot.

  • Set to true to hide the forward points.

  • Set to false to show the forward points.

Type

Boolean

Default value

false

Example value
false

FX.TILE.FACTORY

The configuration object for FX tiles. Determines how a tile is created either by default, or when a user clicks the currency pair.

This configuration item provides a schema for how your FX tiles are built and what defaults they use. Developers can create they own their own configuration object to override the tile factory configuration.

Type

Object

Valid values

MultiWayTileConfig()

Default value

new MultiWayTileConfig()

where MultiWayTileConfig is from packages-caplin/cps-fx-tile/multiway/config/MultiWayTileConfig.js

Example value
export default class ExtendedAppConfig extends AppConfig {
  constructor() {
    super();

    this.options["FX.TILE.FACTORY"] = new MultiWayTileConfig();
  }
}

FX.TILE.LAYOUT

Determines the default layout strategy for FX tiles, which can be customised. The current default layout strategy is "pushdown".

Type

String

Default value

"pushdown"

Example value
"pushdown"

FX.TILE.LAYOUT_CONFIG

Determines the width and height of a tile specified in pixels. We do not recommend changing this configuration from the default.

Type

Object

Default value

{
  tileWidth: 254,
  tileHeight: 201,
}
Example value
export default class ExtendedAppConfig extends AppConfig {
  constructor() {
    super();

    this.options["FX.TILE.LAYOUT_CONFIG"] = {
      tileWidth: 254,
      tileHeight: 201,
    }
  }
}

FX.TILE.MENU_BUTTON.ENABLED

Set to true to hide the menu button on FX tiles.

Type

Boolean

Default value

false

Example value
false

FX.TILE.MIDRATES.FORWARD.FIELD

This specifies a custom field for the midpoint number. If no custom field is specified the app defaults to L1_FwdMidPoints.

Type

Boolean

Default value

true

Example value
true

FX.TILE.POPOUT.ENABLED

Determines if the popout button on FX tiles is visible in the top right hand corner, so the tile can be popped out.

  • Set to true to display the popout button on the FX tiles, so a tile can be popped out.

  • Set to false to hide the popout button.

Type

Boolean

Default value

true

Example value
true

FX.TILE.STALE_PRICES_STRATEGY

Determines whether the shield icon, or dashes, are displayed when prices go stale in FX tiles.

Type

String

Valid values

"shield", null

Default value

null

Example value
"shield"

FX.TILE.UNAVAILABLE_PRICES_STRATEGY

Determines whether the shield icon, or the capital letters RFS, are displayed when prices are unavailable in FX tiles.

Type

String

Valid values

"shield", "RFS"

Default value

"shield"

Example value
"shield"

FX.USE_CUSTOM_ERROR_MESSAGES

Determines whether your error messages are supplied from the back-end system on the stream, or if the application uses i18n error messages.

  • Set to true to use error messages supplied from the back-end system.

  • Set to false to use i18n error messages.

Type

Boolean

Default value

false

Example value
false

HISTORIC_SEARCH.ENABLED

Set to true to enable the Historic Search tab.

Type

Boolean

Valid values

true, false

Default value

true

Example value
true

HTTP.TIMEOUT

Determines how many milliseconds for HTTP requests to finish successfully before StreamLink times out.

Type

Integer

Default value

3000

Example value
3000

LOGGING

Determines how much information you want to store in terms of logging, and specifies the back-end URL which does the logging. The default configuration for this is 1,000 lines on the Java Servlet, and 1,000 lines on StreamLink.

Type

Object

Default value

{
  ENABLED: true,
  BACKEND_URL: "./servlet/logger",
  SHOW_REPORT_ISSUE_MENU_ITEM: true,
  JS_STORAGE: {
    MAX_LINES: 1000,
    MAX_SIZE: 1048576, // 2 bytes per char = 2MB
    WRITE_INTERVAL: 10 * 1000, // 10 seconds
  },
  STREAMLINK_STORAGE: {
    MAX_LINES: 1000,
    MAX_SIZE: 1048576, // 2 bytes per char = 2MB
    WRITE_INTERVAL: 10 * 1000, // 10 seconds
  },
}
Example value
export default class ExtendedAppConfig extends AppConfig {
  constructor() {
    super();

    this.options.LOGGING = {
      ENABLED: true,
      BACKEND_URL: "./servlet/logger",
      SHOW_REPORT_ISSUE_MENU_ITEM: true,
      JS_STORAGE: {
        MAX_LINES: 1000,
        MAX_SIZE: 1048576, // 2 bytes per char = 2MB
        WRITE_INTERVAL: 10 * 1000, // 10 seconds
      },
      STREAMLINK_STORAGE: {
        MAX_LINES: 1000,
        MAX_SIZE: 1048576, // 2 bytes per char = 2MB
        WRITE_INTERVAL: 10 * 1000, // 10 seconds
      },
    };
  }
}

NDF.UNTRADABLE.TENORS

Determines which NDF tenors aren’t displayed to the user when trading NDFs.

Type

Array of strings

Default value

["SPOT"]

Example value
["SPOT"]

ONE.CLICK.ACTION.TYPE

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

Type

String

Valid values

"FillAtMarket", "FillAtMyRate" or "AllowFillSlippage"

Default value

"FillAtMyRate"

Example value
"FillAtMyRate"

ORDER_NOT_ALLOWED_ACTIONS

Determines which actions aren’t displayed in the order blotter actions menu.

Type

Array of strings

Default value

[]

Example
["EDIT", "DUPLICATE"]

ORDER.BLOTTER.ACTIONS.EDIT

Enables or disables the edit menu in the order blotter. Set to false to disable the edit menu in the blotter, so users can’t edit orders.

Type

Boolean

Default value

true

Example value
true

ORDER.TICKET.FACTORY

The configuration object for order tickets. It provides a schema for how your order tickets are built and what defaults they use. Developers can create their own config object to override order ticket configuration.

Type

Object

Valid values

ExtendedOrderTicketConfig()

Default value

new ExtendedOrderTicketConfig()

where ExtendedOrderTicketConfig is from apps/fxtrader/scr/orderticket/config/ExtendedOrderTicketConfig.js

Example value
export default class ExtendedAppConfig extends AppConfig {
  constructor() {
    super();

    this.options["ORDER.TICKET.FACTORY"] = new ExtendedOrderTicketConfig();
  }
}

RFS.TICKET.COMMENT.ENABLED

Set true to enable comments on RFS tickets.

Type

Boolean

Default value

false

Example value
false

RFS.TICKET.COMMENT.FIELD

This is the field for the comments on the RFS tickets when comments are enabled (see configuration item above).

Type

String

Default value

""

Example value
""

RFS.TICKET.CONFIRMATION_ACTION.DUPLICATE.ENABLED

Set to true the user has the ability to duplicate an RFS ticket from the deal summary ticket by going to More Actions > Duplicate.

Type

Boolean

Default value

true

Example value
true

RFS.TICKET.DISABLE_UNEVEN_SWAPS

Set to true this forces even swaps.

Type

Boolean

Default value

false

Example value
false

RFS.TICKET.FACTORY

The configuration object for RFS tickets. It provides a schema for how the RFS tickets are built and what defaults they use. Developers can create their own configuration object to override trade confirmation configuration.

Type

Object

Valid values

DefaultRFSConfig()

Default value

new DefaultRFSConfig()

where DefaultRFSConfig is from app/fxtrader/scr/rfsticket/config/DefaultRFSConfig.js

Example value
export default class ExtendedAppConfig extends AppConfig {
  constructor() {
    super();

    this.options["RFS.TICKET.FACTORY"] = new DefaultRFSConfig();
  }
}

RFS.TICKET.SHOW_HIGH_LOWS

Determines if highest price and lowest price values are displayed on RFS tickets for that trading day.

Type

Boolean

Default value

false

Example value
false

RFS.TICKET.SWAP_REVERT_SPOT_SWITCH

When supplying a swap quote to FX Professional, the FX Integration API (FX API) switches the values in the SPOT bid and ask fields of the swap’s near leg. This is done for compatibility with different back-end adapters.

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

  • Set this option to false to revert the switch by the FX Integration API.

Type

Boolean

Default value

false

Example value
false

RFS.TICKET.TICKET_PRESENTATION_MODEL

The configuration object for RFS tickets. It provides a schema for how the RFS tickets look and which fields are included. Developers can create their own configuration object to override this object.

Type

Class

Valid values

RFSTicket()

Default value

new RFSTicket()

where RFSTicket is from "../rfsticket/RFSTicket"

Example
export default class ExtendedAppConfig extends AppConfig {
  constructor() {
    super();

    this.options["RFS.TICKET.TICKET_PRESENTATION_MODEL"] = new RFSTicket();
  }
}

SLIPPAGE.AMOUNT

Determines the amount of slippage a trader or institution is willing to accept. Any difference in the executed price and the requested, or expected, price is considered slippage. This is a field on trades which the back-end systems require. The default is set to '0', so no slippage is allowed.

Type

Integer

Default value

0

Example value
0

SORT.ACCOUNT.LABELS

Determines how the accounts listed in the account drop down menu are sorted.

  • Set to true to sort the accounts in the account drop down menu alphabetically.

  • Set to false and the accounts are sorted by how frequently they are used to trade.

Type

Boolean

Default value

false

Example value
false

TRADE_CONFIRMATION_FACTORY

The configuration object for trade confirmations. It provides a schema for how the trade confirmations look and which fields are included. Developers can create their own configuration object to override trade trade confirmation configuration.

Deprecation note: As of FX Professional version 3.32.0, this has been deprecated in favour of packages-caplin/cps-fx-confirmation.

Type

Class

Valid values

TradeConfirmationFactory()

Default value

new TradeConfirmationFactory()

where TradeConfirmationFactory is from packages-caplin/cps-fx-confirmation/TradeConfirmationFactory.js

Example value
export default class ExtendedAppConfig extends AppConfig {
  constructor() {
    super();

    this.options.TRADE_CONFIRMATION_FACTORY = new TradeConfirmationFactory();
  }
}

TRADE_CONFIRMATION_LAUNCHER

Determines how your trade confirmations are launched. Works with the configuration item above (TRADE_CONFIRMATION_FACTORY).

Type

Class

Valid values

TradeConfirmationLauncher

Default value

new TradeConfirmationLauncher()

where TradeConfirmationLauncher is from "cps-fx/confirmation/TradeConfirmationLauncher"'

Example value
export default class ExtendedAppConfig extends AppConfig {
  constructor() {
    super();

    this.options.TRADE_CONFIRMATION_LAUNCHER = new TradeConfirmationLauncher();
  }
}

USER_PREFERENCES

Determines what is displayed in the Settings menu of the application.

Type

Object

Default value

{
    HIDE_DEFAULT_ACCOUNT_SETTING: false
    SHOW_MENU_ITEM: true,
    DISPENSABLE_SECTIONS: [],
    OVERRIDES: {},
    DEFAULT_CLICK_TYPE: null,
    DEFAULT_LAUNCH_TICKET_IS_ONE_WAY: false,
    COSTS: {
      ENABLED: false,
    },
}
Example value
export default class ExtendedAppConfig extends AppConfig {
  constructor() {
    super();

    this.options.USER_PREFERENCE = {
      HIDE_DEFAULT_ACCOUNT_SETTING: false,
      SHOW_MENU_ITEM: true,
      DISPENSABLE_SECTIONS: [],
      OVERRIDES: {},
      DEFAULT_CLICK_TYPE: doubleClick,
      DEFAULT_LAUNCH_TICKET_IS_ONE_WAY: true,
      COSTS: {
        ENABLED: true,
      }
    }
  }
}