Appearance
交易工具箱
AppTools是基于MT5CTP应用程序开发接口(API)开发的图表交易管理工具,本身是客户端的一款交易策略,可加载到任一可交易合约的图表窗口。AppTools符合MT5客户端的操作习惯,增加了符合期货图表惯例的信息显示区。提供信息显示、移动止损、画线下单,移动止损止盈线同步修改持仓止损止盈等便捷操作。
AppTools
AppTools加载图表后,左下角横向排列四个图标,管理图表中[行情显示]、[交易面板]、[持仓信息]的显示|隐藏和[画线下单]的开启|关闭。鼠标悬停,显示图标按钮的功能说明。

参数配置
AppTools加载图表后,图表右上角显示(客户端EA)图标,在图标上右键菜单中单击属性,打开参数配置窗口:

配置信息可以[保存],已保存的配置信息可以[载入],配置信息参数如下:
1. 报单模式 |-> 参数选择 | 默认值[先平后开|FIFO]
与图表的买|卖指令配合,规范报单指令执行规则。
[开平独立] ->买|卖指令都是开仓,不涉及平仓操作。
[先平后开|FIFO] ->买|卖指令是先平仓剩余部分开仓,平仓遵循先开先平的规则。
[先平后开|FILO] ->买|卖指令是先平仓剩余部分开仓,平仓遵循后开先平的规则。
2.报单警告信息 |-> 参数选择 | 默认值[false]
是否弹出报单警告信息。
3.适配4K高清显示器 |-> 参数选择 | 默认值[true]
4.报单滑点 |-> 参数填写 | 默认值[0]
填写报单的滑点控制,是最小变动价位的倍数(ticks)。
5.止损点数 |-> 参数填写 | 默认值[0]
填写报单的止损点数,是最小变动价位的倍数(ticks),AppTools以报单价格为基础计算报单止损价。
6.止盈点数 |-> 参数填写 | 默认值[0]
填写报单的止盈点数,是最小变动价位的倍数(ticks),AppTools以报单价格为基础计算报单止盈价。
7.是否移动止损(高点回落) |-> 参数选择 | 默认值[false]
使用配置的止损点数,开启移动止损功能。报单成交后,AppTools以行情最高价回落的止损点数动态计算和更新持仓的止损价。
8.止损线颜色 |-> 参数选择 | 默认值[FireBrick]
9.止盈线颜色 |-> 参数选择 | 默认值[FireBrick]
关于 | 止损、止盈、移动止损
- 移动止损仅更新止损价格,实际止损执行是MT5CTP内置功能。
- 止损、止盈功能均为本地执行,如果关闭了客户端,止损止盈目标将无法实现,务必注意,这与MT5规则和习惯不一致。止损止盈使用对手价触发,并使用反向涨、跌停板价报单,实际成交价格可能与设置的止损止盈价格不完全一致。
行情显示
行情显示以线条分割,从上到下,共五个区:市场限价卖出订单薄、市场限价买入订单薄、当前交易日合约信息、账户及持仓信息、最新行情时间。
- 市场限价卖出订单薄:支持五档行情实时显示。
- 市场限价买入订单薄:支持五档行情实时显示。
- 当前交易日合约信息:最新价、涨跌值、涨跌幅、最新价的成交数量(现量)、当前交易的成交量(总量)、当前交易日的持仓量与上一交易日的持仓量的差额(仓差)、当前总持仓量(仓量)、当前交易日的成交量加权平均价(结算)、昨结算价(昨结)、当前交易日的开盘价(开盘)、当前交易日的最高价(最高)、当前交易日的最低价(最低)、当前交易日的涨停价(涨停)、当前交易日的跌停价(跌停)。
- 账户及持仓信息:账户动态权益、可用资金、冻结资金、平仓盈亏、持仓盈亏、交易手续费、图表合约的多单数量、空单数量、多单持仓均价、空单持仓均价。
- 行情更新日期、时间,精确到毫秒。
关于 | 行情显示
- 订单薄行情使用OnBookEvent事件响应函数,由最新的订单薄行情驱动,如果没有收到最新的行情,信息显示为空。
- MT5CTP支持五档行情,如果行情源没有发布五档行情,MT5CTP使用一档行情填充五档行情信息。
- 价格上涨用红色标注,价格下跌用绿色标注,价格持平用白色标注,量、仓、资金等用黄色标注。
交易面板
交易面板极致简约,仅提供买|卖指令和报单数量输入,与AppTools[报单模式]参数组合,可实现多种快捷操作效果。报单面板左侧为卖出,用蓝色区块显示,右侧为买入,用红色区块显示,面板上动态显示合约当前价格。中间为报单数量填写和调整区,数量最小为0,最大为图表合约限价单最大报单数量。
关于 | 交易面板报单操作
- 指令内置报单信息检查,包括账户登录状态、合约交易状态、报单价格、报单数量等,报单信息未通过检查,MT5CTP拒绝报单到CTP柜台,并弹出警告信息。
- 客户端的[工具箱]-[专家]页面会记录和显示每一笔报单操作和报单状态,更详细的报单信息、成交信息,可在[UICTP]中查看。
- 报单数量为0,指合约持仓全部平仓。买入0手指空头全平,卖出0手指多头全平。
- 报单指令和参数配置,务必在仿真系统中反复测试,确保充分了解使用规则、影响范围和实际执行效果。
持仓信息
合约持仓信息,会以黄色的点线在图标上绘制,左侧线上标注持仓信息,如:"#1764745083 buy 1 at 4657.8",显示信息为:持仓标识(ticket)、持仓方向、持仓数量、持仓价格,每一条MT5持仓显示一条点线。鼠标在持仓线上悬停可显示持仓的订单号、方向、数量和价格(与线上标注信息一致)。
双击选中持仓的点线,可以上下拖动,并形成止损价和止盈价。止损价和止盈价使用点划线,颜色可在AppTools参数配置[止损线颜色]和[止盈线颜色]中自定义。止损止盈线上标注止损止盈信息,如:"#1764745083 sl at 4625.2",显示信息为:持仓标识(ticket)的止损价为4625.2。
双击选中止损或止盈的点划线,可以上下移动,修改持仓的止损价和止盈价。反过来,止损价或止盈价修改,AppTools也会重绘止损止盈线。
移动图表上的止损线、止盈线后,显示的日志信息
CTrade::OrderSend: modify position #1764745083 IF2601 (sl: 4625.2, tp: 0.0) [done]
CTrade::OrderSend: modify position #1764745083 IF2601 (sl: 4625.2, tp: 4678.5) [done]
CTrade::OrderSend: modify position #1764745083 IF2601 (sl: 4625.2, tp: 4674.4) [done]
显示持仓信息、止损价、止盈价的图表:

画线下单
画线下单指图表上手动绘制水平或趋势线,在价格触碰绘制的线条时触发交易报单。AppTools支持简单配置实现画线下单功能。
在图表上绘制趋势线或水平线,右键菜单点击[属性],可在[说明]信息栏中填写报单指令,如果价格触碰,交易指令就会生成并向CTP系统报单。如图所示:

关于 | 画线下单
- 报单指令只能使用"buy"或"sell",大小写自适应,指令后的数字指报单数量。特别注意:报单指令与报单数量之间用空格分隔。
- AppTools的止损点数、止盈点数、移动止损设置对画线下单同样适用。
- 关闭画线下单会让画线下单功能失效,但是不会清除图表中的画线和下单设置,重启画线下单功能后,原设置依然有效。