这款EA使用了 小内棒 指标,专门用来寻找并显示“内棒”价格行为模式。
值得注意的是,这个指标并不是EA正常运行的必要条件,因为其数据是由EA内部计算得出的。
当发现看涨的“内棒”模式时,EA将会自动开一个买入头寸;相反,若出现看跌模式,则会开一个卖出头寸。
开仓的方式有三种选择:
- 在每个信号上开相应的仓位,并通过止损或止盈平仓;
- 在每个信号上开相应的仓位,同时平掉相反方向的仓位(补充摆动);
- 在信号出现时开相应的仓位,前提是该仓位不存在,并平掉相反方向的仓位(摆动)。
该EA允许用户禁用买入/卖出操作,并具有反向交易模式,即在买入信号下开卖出仓位,反之亦然。
* 如果选择在所有信号上开所有仓位,并且没有设置止损或止盈水平,EA将无法自动平仓。在这种情况下,图表上会显示警告,提示未设置止损或止盈,您只能手动平仓。
请注意,这款专家顾问是为培训目的而设计的。
EA 共有十二个输入参数:
- 专家魔术编号 - EA仓位的唯一标识;
- 开仓模式 - 仓位开仓模式:
- 每个信号开任何仓位 - 每个信号都开任何仓位;
- 每个信号单方向开仓(补充摆动) - 多个仓位单方向开仓;
- 始终只开一个仓位(摆动) - 始终只开一个仓位。
- 启用多头仓位 - 是否启用多头仓位(是/否切换);
- 启用空头仓位 - 是否启用空头仓位(是/否切换);
- 反向交易 - 交易反向模式(是/否切换);
- 手数 - 开仓的手数;
- 止损点数 - 止损点数(0表示不设置止损);
- 止盈点数 - 止盈点数(0表示不设置止盈);
- 价格滑点 - 开仓时允许的最大滑点;
- 止损的点差倍数 - 用于计算止损订单的适当距离的点差倍数;
- 等待环境更新(秒) - 等待交易环境更新的时间(秒);
- 获取环境状态的尝试次数 - 获取交易环境准确状态的尝试次数。
* 对于挂单(以及止损或止盈),有一个最小允许距离来放置止损单,即止损水平。也就是说,挂单(以及止损或止盈)不能放置得离价格太近。然而,如果止损水平为零,这仅意味着止损水平是浮动的,而不是不存在。在这种情况下,最小距离通常是点差的两倍,但有时甚至双倍的点差也不足以满足要求。因此,我们引入了一个自定义点差倍数,用于EA计算挂单的最小放置距离。
** 当交易订单被发送到服务器时,执行的偶尔延迟可能导致市场仓位的计数错误。如果检测到这种“未定义”状态,专家顾问会等待指定的秒数,然后重新读取环境。
*** 在一个tick内的等待周期数量是在EA参数中设置的。在所有允许的尝试都获取不到环境的准确状态后,专家顾问将退出处理并等待下一个tick。如果在此时交易环境仍未更新,EA将在新的tick上重复这些尝试。
为了检查策略,默认设置在2016年1月4日至2018年3月29日期间使用EURUSD H1在1分钟OHLC模式下进行了测试。接着,为了找到最佳的止损和止盈值,这些值也在相同模式和时间间隔内进行了优化。
最佳止损为800点,最佳止盈为900点:

