大家好!今天想和大家聊聊一个非常有趣的交易系统——Exp_ColorX2MA_X2。这个系统基于两个指标的信号,特别是ColorX2MA指标。第一个指标通过线条的颜色来判断慢趋势的方向,而第二个指标则用来判定开盘时机,尤其是当线条颜色变化时。信号的形成是在一根柱子收盘时,如果满足以下两个条件:
- 快速趋势和慢速趋势的信号一致;
- 快速趋势的方向发生变化。
Expert Advisor的输入参数
//+-------------------------------------------------+ //| EA指标的输入参数 | //+-------------------------------------------------+ sinput string Trade="交易管理"; //+============== 交易管理 ==============+ input double MM=0.1; //交易中占用的存款比例 input MarginMode MMMode=LOT; //手数值检测方法 input uint StopLoss_=1000; //止损点数 input uint TakeProfit_=2000; //止盈点数 sinput string MustTrade="交易权限"; //+============== 交易权限 ==============+ input int Deviation_=10; //最大价格偏差点数 input bool BuyPosOpen=true; //允许开多头 input bool SellPosOpen=true; //允许开空头 //+-------------------------------------------------+ //| 过滤器指标的输入参数 | //+-------------------------------------------------+ sinput string Filter="慢交易参数"; //+============== 交易参数 ==============+ input ENUM_TIMEFRAMES TimeFrame=PERIOD_H6; //1个图表周期用于趋势 input Smooth_Method MA_Method1=MODE_SMA_; //第一个平滑平均方法 input uint Length1=12; //第一个平滑深度 input int Phase1=15; //第一个平滑参数 //---- 对于JJMA在-100到+100之间,它影响过渡过程的质量; //---- 对于VIDIA,它是CMO周期,对于AMA它是慢速平均周期 input Smooth_Method MA_Method2=MODE_JJMA; //第二个平滑平均方法 input uint Length2= 5; //第二个平滑深度 input int Phase2=15; //第二个平滑参数 //---- 对于JJMA在-100到+100之间,它影响过渡过程的质量; //---- 对于VIDIA,它是CMO周期,对于AMA它是慢速平均周期 input Applied_price_ IPC=PRICE_CLOSE_;//价格常量 input uint SignalBar=1; //获取信号的柱子索引 input bool BuyPosClose=true; //根据趋势允许平多头 input bool SellPosClose=true; //根据趋势允许平空头 //+-------------------------------------------------+ //| 进场指标的输入参数 | //+-------------------------------------------------+ sinput string Input="进场参数"; //+=============== 进场参数 ===============+ input ENUM_TIMEFRAMES TimeFrame_=PERIOD_M30; //2个图表周期用于进场 input Smooth_Method MA_Method1_=MODE_SMA_; //第一个平滑平均方法 input uint Length1_=12; //第一个平滑深度 input int Phase1_=15; //第一个平滑参数 //---- 对于JJMA在-100到+100之间,它影响过渡过程的质量; //---- 对于VIDIA,它是CMO周期,对于AMA它是慢速平均周期 input Smooth_Method MA_Method2_=MODE_JJMA; //第二个平滑平均方法 input uint Length2_= 5; //第二个平滑深度 input int Phase2_=15; //第二个平滑参数 //---- 对于JJMA在-100到+100之间,它影响过渡过程的质量; //---- 对于VIDIA,它是CMO周期,对于AMA它是慢速平均周期 input Applied_price_ IPC_=PRICE_CLOSE_;//价格常量 input uint SignalBar_=1;//获取进场信号的柱子索引 input bool BuyPosClose_=false; //根据信号允许平多头 input bool SellPosClose_=false; //根据信号允许平空头 //+-------------------------------------------------+
代码中的字符串参数仅用于更好地可视化EA输入参数窗口。
EA中的ColorX2MA_HTF指标仅用于在策略测试器中更方便地可视化趋势,在其他操作模式下是非活动的。
为了确保生成的EA正常运作,ColorX2MA.ex5和ColorX2MA_HTF.ex5的编译文件必须放在<terminal_data_directory>\MQL5\Indicators文件夹内。
请注意,TradeAlgorithms.mqh库文件允许在提供非零点差的经纪商处使用EA,并且可以在开盘时同时设置止损和止盈。您可以在以下链接下载更多库的变体:交易算法。
以下测试中使用了默认Expert Advisor的输入参数,测试期间未使用止损和止盈。
这是关于2016年美元兑日元的测试结果,慢趋势在H6上,快速趋势的进场在M30上:

图1. 图表上的交易示例

图2. 测试结果图表