交易主机


5-3、交易主机 - 图1此页面上的所有内容仅适用于交易终端

交易主机是经纪商API与图表交易子系统之间交互的API。其主要目的是用您的交易适配器与图表之间交换信息。 就JS而言,它是一个具有一组函数的object。 以下是交易主机的 方法 列表。

指令

showOrderDialog(order, focus): Promise

  • order 下单或修改
  • focus - 焦点常量. 显示标准订单对话框以创建或修改订单,并在按下买/卖/修改时执行处理程序。

showCancelOrderDialog(orderId, handler): Promise

  • orderId 要取消订单id
  • handler 处理取消的方法。它应该返回 Promise 显示一个确认对话框,并在按下YES/OK时,执行处理程序。

showCancelMultipleOrdersDialog(symbol, side, qty, handler): Promise

  • symbol 取消订单的商品
  • side - 取消订单的方向
  • qty - 取消订单的数量
  • handler 处理取消的方法。它应该返回 Promise。 显示一个确认对话框,并在按下YES/OK时,执行处理程序。

showClosePositionDialog(positionId, handler): Promise

  • positionId 要平仓的仓位id
  • handler 处理平仓的方法。它应该返回 Promise。 显示一个确认对话框,并在按下YES/OK时,执行处理程序。

showReversePositionDialog(position, handler): Promise

  • position 反转仓位
  • handler 处理反转仓位的方法。它应该返回 Promise。 显示一个确认对话框,并在按下YES/OK时,执行处理程序。

showPositionBracketsDialog(position, brackets, focus): Promise

  • position 修改仓位
  • brackets (可选) 新的包围单
  • focus - 焦点常量 显示默认的编辑包围单对话框,并在按下MODIFY时执行处理程序。

activateBottomWidget: Promise

打开底部面板并切换到交易标签页上。

showTradingProperties()

显示属性对话框,切换当前标签页到交易标签页。

showNotification(title, text, type)

显示通知。类型可以是 1 - 成功 或 0 - 错误。

triggerShowActiveOrders()

触发显示活动订单。

numericFormatter(decimalPlaces)

返回具有指定小数位的Formatter

defaultFormatter(symbol: string, alignToMinMove?: boolean = true)

返回指定合约的默认Formatter。此formatter基于SymbolInfo创建。

默认情况下,formatter将价格舍入到最低价格,但有时您可能希望禁用此舍入。例如,仓位的平均价格不应四舍五入到最低价格。让我们假设我们将一笔交易价格在100.25,另一笔交易价格在100.50。该持仓的平均价格将是100.375。 如果你使用defaultFormatter(symbol)获得formatter,那么这个formatter会将这个价格舍入为100.38,但是如果你将第二个参数设置为false,那么价格将四舍五入为100.50

factory

factory 是一个对象属性。 其成员如下所述。

factory.createDelegate

创建一个Delegate对象。

factory.createWatchedValue

创建一个WatchedValue对象。

factory.createPriceFormatter(priceScale, minMove, fractional, minMove2)

创建价格Formatter。此函数的参数在另一个文章中描述。

symbolSnapshot(symbol): Promise

返回商品报价。

Getters and Setters

floatingTradingPanelVisibility: WatchedValue

返回浮动交易面板是否可见。

domVisibility: WatchedValue

返回DOM面板是否可见。

orderPanelVisibility: WatchedValue

返回订单面板是否可见。

showPricesWithZeroVolume: WatchedValue

返回是否折叠0成交量(最小和最大成交量级别)的级别。

silentOrdersPlacement: WatchedValue

返回是否可以在不显示订单窗口的情况下将订单发送给经纪商。

suggestedQty(): Object

返回的对象属性:

  • value - 获取当前值。 它返回Promise.
  • setValue - 设置新值
  • changed : Subscription 在浮动交易面板和对话框中同步数量。

setButtonDropdownActions(actions)

底部交易面板有一个带有下拉列表项目的按钮。此方法可用于替换现有项目。

  • actions ActionMetainfo的数组, 每个对象都代表一个下拉项。

defaultContextMenuActions()

提供默认的买/卖,显示属性操作作为默认值chartContextMenuItems返回。

defaultDropdownMenuActions(options)

提供操作的默认下拉列表。您可以在setButtonDropdownActions中使用默认操作。您可以使用 options 从结果中添加/删除默认操作:

  • showFloatingToolbar: boolean;
  • tradingProperties: boolean;
  • selectAnotherBroker: boolean;
  • disconnect: boolean;
  • showDOM: boolean;
  • showOrderPanel: boolean;

数据更新

使用这些方法来通知图表它需要更新的信息。

orderUpdate(order)

在添加或更改订单时调用此方法。

orderPartialUpdate(order)

当订单未更改时调用此方法,但您添加到在账户管理器中显示的订单对象的字段已更改。仅当您要在账户管理器中显示自定义字段时才应使用它。

positionUpdate (position)

在添加或更改持仓时调用此方法。

positionPartialUpdate (position)

当持仓未更改时调用此方法,但您添加到在账户管理器中显示的持仓对象的字段已更改。仅当您要在账户管理器中显示自定义字段时才应使用它。

executionUpdate([execution)

添加执行时调用此方法。

fullUpdate()

所有数据都已更改时调用此方法。例如,用户帐户已更改。

plUpdate(positionId, pl)

当经纪商连接收到PL更新时调用此方法。当configFlags中设置supportPLUpdate标志时,应使用此方法。

equityUpdate(equity)

当经纪商连接收到equity时调用此方法。标准订单对话框需要此方法来计算风险。

marginAvailableUpdate(marginAvailable)

当经纪商连接收到可用保证金更新时,请调用此方法。标准订单对话框需要此方法来显示可用保证金。 当在configFlags中设置supportMargin标志时,应该使用此方法。交易终端使用subscribeMarginAvailable,订阅保证金可用更新。

tradeUpdate(trade)

在添加或更改交易时调用此方法。

tradePartialUpdate (trade)

交易未更改时调用此方法,但您添加到交易对象中以显示在客户经理中的字段将更改。

tradePLUpdate(tradeId, pl)

当经纪商连接收到交易PL更新时,请调用此方法。

pipValueUpdate(symbol, pipValues)

当经纪商连接具有pipValue更新时,请调用此方法。图表库使用subscribePipValue订阅pipValue更新。

pipValues是一个包含以下字段的对象:

  • buipPipValue - 如果你买入symbol,值为1点
  • sellPipValue - 如果卖出symbol,值为1点