Skip to main content
Version: latest

IBrokerCommon

Interface

Methods

accountManagerInfo

This function should return the information that will be used to build the Account Manager.

Signature

accountManagerInfo() => AccountManagerInfo

Returns

AccountManagerInfo


chartContextMenuActions

The library calls chartContextMenuActions when users open the context menu on the chart. This method also renders the Trade button in the context menu.

This method should return an array of ActionMetaInfo elements, each of them representing one context menu item.

Signature

chartContextMenuActions(context: TradeContext, options?: DefaultContextMenuActionsParams) => Promise<ActionMetaInfo[]>

Parameters

NameTypeDescription
contextTradeContextcontext object passed by a browser
options?DefaultContextMenuActionsParamsdefault options for the context menu action parameters

Returns

A promise that resolves to an array of ActionMetaInfo , which may be empty. In that case, the Trade button will be removed from the context menu.

Promise<ActionMetaInfo[]>


connectionStatus

Defines a connection status for the Broker API. If any other value than 1 ("Connected") is returned, the Account Manager will display an endless spinner instead of users' trading data. If you want to handle other scenarios, for example when the status is disconnected, you need to manage this scenario within your implementation and use the IBrokerConnectionAdapterHost.connectionStatusUpdate method.

If the method is not implemented or returns a value other than 1, the following error will appear in the console: Method connectionStatus is not properly implemented.

Signature

connectionStatus() => ConnectionStatus

Returns

ConnectionStatus


executions

Called by Trading Platform to request executions for the specified symbol. If you want executions to be displayed on the chart, set the BrokerConfigFlags.supportExecutions to true.

Signature

executions(symbol: string) => Promise<Execution[]>

Parameters

NameTypeDescription
symbolstringsymbol identifier

Returns

Promise<Execution[]>


formatter

Optional

Provide a custom price formatter for the specified symbol.

Signature

formatter(symbol: string, alignToMinMove: boolean) => Promise<INumberFormatter>

Parameters

NameTypeDescription
symbolstringsymbol identifier
alignToMinMovebooleanalign formatted number to the minimum movement amount of the symbol

Returns

Promise<INumberFormatter>


getOrderDialogOptions

Optional

Implement this method if you want to add custom fields to the standard Order Ticket.

Use the symbol parameter to return customization options for a particular symbol.

Signature

getOrderDialogOptions(symbol: string) => Promise<OrderDialogOptions>

Parameters

NameTypeDescription
symbolstringsymbol identifier

Returns

Promise<OrderDialogOptions>


getPositionDialogOptions

Optional

Implement this method if you want to customize the position dialog.

Signature

getPositionDialogOptions() => PositionDialogOptions

Returns

PositionDialogOptions


getSymbolSpecificTradingOptions

Optional

Implement this method if you want to have custom options available for different symbols.

Signature

getSymbolSpecificTradingOptions(symbol: string) => Promise<SymbolSpecificTradingOptions>

Parameters

NameTypeDescription
symbolstringsymbol identifier

Returns

Promise<SymbolSpecificTradingOptions>


individualPositions

Optional

Called by Trading Platform to request individual positions. Required if the BrokerConfigFlags.supportPositionNetting flag is set to true.

Signature

individualPositions() => Promise<IndividualPosition[]>

Returns

Promise<IndividualPosition[]>


isTradable

The library calls this method to check if a symbol can be traded. If the method returns false, users will see the Non-tradable symbol message in the UI when creating orders. You can also show a custom message with the reason why the symbol cannot be traded and the possible solution to resolve the issue. To do this, return an IsTradableResult object.

Signature

isTradable(symbol: string) => Promise<boolean | IsTradableResult>

Parameters

NameTypeDescription
symbolstringsymbol identifier

Returns

Promise<boolean | IsTradableResult>


orders

Called by Trading Platform to request user's active orders.

Signature

orders() => Promise<Order[]>

Returns

Promise<Order[]>


ordersHistory

Optional

The library calls the ordersHistory method to request orders history. It is expected that returned orders will have a final status (rejected, filled, cancelled).

This method is only required when you set the BrokerConfigFlags.supportOrdersHistory flag to true. This flag adds the History page, where order history is displayed, to the Account Manager. Refer to the History section for more information.

Signature

ordersHistory() => Promise<Order[]>

Returns

Promise<Order[]>


positions

Optional

Called by Trading Platform to request positions. Required if the BrokerConfigFlags.supportPositions flag is set to true.

Signature

positions() => Promise<Position[]>

Returns

Promise<Position[]>


quantityFormatter

Optional

Provide a custom quantity formatter for the specified symbol.

Signature

quantityFormatter(symbol: string) => Promise<INumberFormatter>

Parameters

NameTypeDescription
symbolstringsymbol identifier

Returns

Promise<INumberFormatter>


spreadFormatter

Optional

Provide a custom spread formatter for the specified symbol.

Signature

spreadFormatter(symbol: string) => Promise<INumberFormatter>

Parameters

NameTypeDescription
symbolstringsymbol identifier

Returns

Promise<INumberFormatter>


symbolInfo

Called by the Order Ticket and DOM panel to get symbol information.

Signature

symbolInfo(symbol: string) => Promise<InstrumentInfo>

Parameters

NameTypeDescription
symbolstringsymbol identifier

Returns

Promise<InstrumentInfo>