MetaTrader5
Combo_Right - MetaTrader 5 的智能交易助手
这款智能交易助手(EA)是由 Reshetov 重新编写的,原始代码可以在此处找到:https://www.mql5.com/en/code/7917。
工作原理
该系统基于一个基本的交易策略,使用CCI指标进行交易。当CCI值大于零时,系统会发出买入信号;相反,则发出卖出信号。
当然,基本策略也可能出现错误。为此,系统引入了线性感知机(perceptron),有时会接管控制并忽略基本交易信号。
该系统设有三个感知机:一个用于卖出,一个用于买入,第三个则是总的判断。
感知机的输出值可能高于或低于零。如果总感知机和第一个感知机的输出值都是负数,则会开仓卖出;如果总感知机和第二个感知机的输出值都是正数,则会开仓买入;在其他情况下,则使用基本系统的信号。
作者建议的设置流程如下:有一个参数“pass”,可以取值1到4。当pass=1时,不使用感知机,仅设置基本交易系统。此时需优化参数tp1、sl1、CCIPeriod和CCIPrice。接着,当pass=2时,配置卖出感知机的参数x12、x22、x32、x42、tp2、sl2和p2。然后,当pass=3时,设置买入感知机的参数x13、x23、x33、x43、tp3、sl3和p3。最后,当pass=4时,设置总感知机,并优化参数x14、x24、x34、x44和p4。该智能交易助手使用的是pass=4。
下图展示了该智能交易助手在测试中的表现。图1是优化结果,图2是前向测试结果。
图1. 优化结果。
图2. 前向测试结果。
参数说明
tp1 - 基本交易信号开仓时的止盈。
sl1 - 基本交易信号开仓时的止损。
CCIPeriod - CCI指标周期。
CCIPrice - CCI计算使用的价格。
x12, x22, x32, x42 - 卖出感知机的权重。
tp2 - 卖出感知机信号开仓时的止盈。
sl2 - 卖出感知机信号开仓时的止损。
p2 - 卖出感知机的历史数据覆盖周期。
x13, x23, x33, x43 - 买入感知机的权重。
tp3 - 买入感知机信号开仓时的止盈。
sl3 - 买入感知机信号开仓时的止损。
p3 - 买入感知机的历史数据覆盖周期。
x14, x24, x34, x44 - 总感知机的权重。
p4 - 总感知机的历史数据覆盖周期。
pass - 智能交易助手的工作模式:1为基本系统,2为卖出感知机,3为买入感知机,4为所有感知机的工作模式。
lots - 持仓量。
Shift - 用于价格数据的条形图,0为当前形成的条,1为第一个形成的条。
2012.12.07