- 经纪商API
- 必要的方法
- constructor(host)
- positions : Promise
- orders : Promise
- executions(symbol) : Promise
- trades : Promise
- chartContextMenuActions(e)
- connectionStatus()
- isTradable(symbol)
- accountManagerInfo()
- showOrderDialog( order )
- placeOrder( order , silently)
- modifyOrder( order , silently, focus)
- cancelOrder(orderId, silently)
- cancelOrders(symbol, side, ordersIds, silently)
- editPositionBrackets(positionId, focus)
- closePosition(positionId, silently)
- reversePosition(positionId, silently)
- editTradeBrackets(tradeId, focus)
- closeTrade(tradeId, silently)
- symbolInfo(symbol) : Deferred (or Promise)
- accountInfo() : Deferred (或 Promise)
- subscribeEquity()
- unsubscribeEquity()
- 必要的方法
- 也可以看看
经纪商API
此页面上的所有内容仅与交易终端相关。
经纪商API是一种能让你在线交易的接口。它的主要目的是将我们的图表与您的交易逻辑连接起来。就JS
而言,它是一个预期暴露特定接口的对象
。下面是一个API的*方法,终端将有这样一个列表。
必要的方法
constructor(host)
经纪商API的构造函数通常需要交易主机。
positions : Promise
交易终端调用这种方法来请求仓位。你应该返回仓位数组。
orders : Promise
交易终端调用这种方法来请求订单。你应该返回订单数组。
executions(symbol) : Promise
交易终端调用这种方法来请求执行。你应该返回执行数组。
trades : Promise
交易终端调用这种方法来请求交易(个别仓位)。 你应该返回交易对象数组。
chartContextMenuActions(e)
图表可以在菜单中拥有一个子菜单交易
。 返回子菜单的项目列表。 格式与buttonDropdownItems
相同。
e
是浏览器传递的上下文对象
connectionStatus()
通常你不需要返回1
以外的值,因为当你创建widget时经纪商已经连接。 如果要在加载数据时在底部面板中显示一个spinner,则可以使用它。
可能的返回值是:
ConnectionStatus.Connected = 1
ConnectionStatus.Connecting = 2
ConnectionStatus.Disconnected = 3
ConnectionStatus.Error = 4
isTradable(symbol)
该功能是浮动交易面板所必需的。通过面板进行交易的能力取决于这个函数的结果:true
还是false
。 如果所有商品都可以交易,则不需要实现这个方法。
accountManagerInfo()
此功能用于返回账户管理器的信息。请参阅账户管理器了解更多信息。
showOrderDialog(order)
当用户请求创建或修改订单时,此功能由图表调用。
所以我们给您使用您自己的对话框的能力。
placeOrder(order, silently)
方法在用户想要下订单时调用。 订单预先填写了部分或全部信息。
如果silently
是true
,则不显示任何对话框。
modifyOrder(order, silently, focus)
order
是要修改的订单对象silently
- 如果是true
,则不应显示任何订单对话框focus
- OrderTicketFocusControl constants。它可以通过图表初始化。
方法在用户想要修改现有订单时被调用。
cancelOrder(orderId, silently)
这个方法被调用来取消给定id
的单个订单。
如果silently
是true
,则不显示任何对话框。
cancelOrders(symbol, side, ordersIds, silently)
symbol
- symbol stringside
: Side orundefined
ordersIds
-symbol
和side
收集的ids。如果silently
是true
,则不显示任何对话框。
这个方法被调用来取消symbol
和side
的多个订单。
editPositionBrackets(positionId, focus)
如果supportPositionBrackets
配置标志打开,将显示一个用于编辑止盈和止损的对话框,此方法将被调用。
1.positionId
要修改的现有仓位ID
2.focus
- Focus constant。
closePosition(positionId, silently)
如果supportClosePosition
配置标志打开,通过仓位id平仓时,此方法将被调用。
如果silently
是true
,则不显示任何对话框。
reversePosition(positionId, silently)
如果supportReversePosition
配置标志打开,通过仓位id反转时,此方法将被调用。
如果silently
是true
,则不显示任何对话框。
editTradeBrackets(tradeId, focus)
如果supportTradeBrackets
配置标志打开,将显示一个用于编辑止盈和止损的对话框。
1.tradeId
是要修改的交易id
2.focus
- Focus constant。
closeTrade(tradeId, silently)
如果supportCloseTrade
配置标志打开以通过交易id关闭交易,则调用此方法。
如果silently
是true
,则不显示任何对话框。
symbolInfo(symbol) : Deferred (or Promise)
symbol
- symbol string
这个方法由内部的Order Dialog,DOM面板和浮动交易面板调用,以获取商品信息。
结果是具有以下数据的对象:
qty
- 对象拥有这3个属性:min
、max
、step
,用于指定数量的step
和边界。pipSize
- 点数的大小(例如,EURUSD为0.0001)pipValue
- 账户币种的点数值(例如,对于以美元为账户的EURUSD为1)minTick
- 最低的价格变动(例如,EURUSD为0.00001)。 它用于价格字段。description
- 要在对话框中显示的描述type
- 商品类型, 只要forex
比较特殊 - 它允许在订单对话框中检查负的点数。domVolumePrecision
- DOM 卖出/买入量的小数位数(可选,默认为0)
accountInfo() : Deferred (或 Promise)
这个方法被内部的Order Dialog调用来获取帐户信息。
现在应该只返回一个字段:
- currencySign:字符串 - 这是一个计数货币的标志
由于这种方法被调用,经纪商应该停止提供利润/损失。
subscribeEquity()
如果您使用标准订单对话框并支持止损,则应实现这个方法。
由于这种方法被调用,经纪商应该通过equityUpdate方法提供净资产更新。
unsubscribeEquity()
如果您使用标准订单对话框并支持止损,则应实现这个方法。
由于这种方法被调用,经纪商应该停止提供净资产更新。
这就是它!