大家好!今天我想和大家聊聊一个非常实用的趋势交易系统——Exp_AdaptiveCGOscillator_X2。这个系统基于两个 AdaptiveCGOscillator 指标的信号,帮助我们更好地把握市场趋势。
系统工作原理
第一个指标主要用于判断慢趋势的方向,依据的是主线和信号线的位置。而第二个指标则是在两条线交叉或触碰时,给出开仓信号。当一根K线收盘时,如果满足以下两个条件,就会形成一个有效信号:
- 快慢趋势的信号一致;
- 快趋势的方向发生变化。
EA的输入参数
以下是Expert Advisor的输入参数设置:
//+-------------------------------------------------+
//| EA指标的输入参数 |
//+-------------------------------------------------+
input string Trade="交易管理"; //+============== 交易管理 ==============+
input double MM=0.1; //每笔交易占用的存款比例
input MarginMode MMMode=LOT; //手数计算方式
input uint StopLoss_=1000; //止损点数
input uint TakeProfit_=2000; //止盈点数
input string MustTrade="交易权限"; //+============== 交易权限 ==============+
input int Deviation_=10; //最大价格偏差点数
input bool BuyPosOpen=true; //允许开多仓
input bool SellPosOpen=true; //允许开空仓
//+-------------------------------------------------+
//| 滤波器指标的输入参数 |
//+-------------------------------------------------+
input string Filter="慢趋势参数"; //+============== 慢趋势参数 ==============+
input ENUM_TIMEFRAMES TimeFrame=PERIOD_H6; //慢趋势的图表周期
input double Alpha=0.07;//指标平滑比率
input uint SignalBar=1; //获取入场信号的K线索引
input bool BuyPosClose=true; //允许根据趋势平仓多仓
input bool SellPosClose=true; //允许根据趋势平仓空仓
//+-------------------------------------------------+
//| 入场指标的输入参数 |
//+-------------------------------------------------+
input string Input="入场参数"; //+=============== 入场参数 ===============+
input ENUM_TIMEFRAMES TimeFrame_=PERIOD_M30; //入场的图表周期
input double Alpha_=0.07;//指标平滑比率
input uint SignalBar_=1;//获取入场信号的K线索引
input bool BuyPosClose_=false; //允许根据信号平仓多仓
input bool SellPosClose_=false; //允许根据信号平仓空仓
//+-------------------------------------------------+
//| EA指标的输入参数 |
//+-------------------------------------------------+
input string Trade="交易管理"; //+============== 交易管理 ==============+
input double MM=0.1; //每笔交易占用的存款比例
input MarginMode MMMode=LOT; //手数计算方式
input uint StopLoss_=1000; //止损点数
input uint TakeProfit_=2000; //止盈点数
input string MustTrade="交易权限"; //+============== 交易权限 ==============+
input int Deviation_=10; //最大价格偏差点数
input bool BuyPosOpen=true; //允许开多仓
input bool SellPosOpen=true; //允许开空仓
//+-------------------------------------------------+
//| 滤波器指标的输入参数 |
//+-------------------------------------------------+
input string Filter="慢趋势参数"; //+============== 慢趋势参数 ==============+
input ENUM_TIMEFRAMES TimeFrame=PERIOD_H6; //慢趋势的图表周期
input double Alpha=0.07;//指标平滑比率
input uint SignalBar=1; //获取入场信号的K线索引
input bool BuyPosClose=true; //允许根据趋势平仓多仓
input bool SellPosClose=true; //允许根据趋势平仓空仓
//+-------------------------------------------------+
//| 入场指标的输入参数 |
//+-------------------------------------------------+
input string Input="入场参数"; //+=============== 入场参数 ===============+
input ENUM_TIMEFRAMES TimeFrame_=PERIOD_M30; //入场的图表周期
input double Alpha_=0.07;//指标平滑比率
input uint SignalBar_=1;//获取入场信号的K线索引
input bool BuyPosClose_=false; //允许根据信号平仓多仓
input bool SellPosClose_=false; //允许根据信号平仓空仓
//+-------------------------------------------------+
在输入参数代码中,字符串参数主要是为了更好地展示expert的输入参数窗口。
EA中的AdaptiveCGOscillator_Cloud_HTF指标仅用于在策略测试器中方便地可视化趋势,在其他操作模式下不活跃。
请将 AdaptiveCGOscillator.ex5、CyclePeriod.ex5 和 AdaptiveCGOscillator_Cloud_HTF.ex5 文件放置到 <terminal_data_folder>\MQL5\Indicators 目录下。
注意,TradeAlgorithms.mqh 库文件允许与提供 非零点差 的经纪商一起使用EA,并且可以在开仓时设置止损和止盈。您可以在以下链接下载更多库的变体:交易算法。
下面的测试使用了默认的Expert Advisor输入参数。测试中没有使用止损和止盈。

图1. 交易示例
这是2015年EURUSD的测试结果,慢趋势在H6,快趋势在M30的入场:

图2. 测试结果图表
评论 0