MetaTrader 5的双系统交易策略:ColorSchaffJJRSXTrendCycle详解

Mike 2018.10.26 03:29 29 0 0
附件

在今日的文章中,我们来聊聊一个基于 ColorSchaffJJRSXTrendCycle 指标的双系统交易策略。这套系统可以同时管理多头和空头交易,并且可以在同一个EA(专家顾问)中进行多种配置,能够根据之前交易的结果动态调整即将进行的交易量。

交易系统的输入参数

为了更好地管理这两个交易系统,所有的输入参数可以被分为两个主要的组别:

  • L 开头的参数用于管理多头持仓;
  • S 开头的参数用于管理空头持仓。
//+----------------------------------------------+
//| 多头交易的输入参数   |
//+----------------------------------------------+
magic numberinput uint    L_Magic=777;          //多头魔法数字
//+----------------------------------------------+
//| 空头交易的输入参数  | 
//+----------------------------------------------+
input uint    S_Magic=555;          //空头魔法数字

这两个交易系统使用不同的魔法数字,相互独立。实际上,金融市场很少是对称的。在上涨和下跌市场中,往往需要针对同一交易系统设置完全不同的参数。因此,在正确配置EA之前,建议先仅测试其中一个交易系统,并关闭另一个系统。

input bool    L_PosOpen=true;       //允许进入多头持仓
input bool    L_PosClose=true;      //允许退出多头持仓

完成这一步后,接下来可以对第二个系统执行相同的操作。

管理持仓量的输入参数

EA的输入参数中增加了用于管理已开持仓量的模块:

input uint    L_TotalMMTriger=5;    //用于计算止损的最近5笔买入交易数量
input uint    L_LossMMTriger=3     //用于减少MM的亏损买入交易数量
input double  L_SmallMM=0.01       //亏损情况下交易的存款比例
input double  L_MM=0.1             //正常交易情况下交易的存款比例
input MarginMode L_MMMode=LOT;      //手数设置模式

同样的代码块也适用于空头交易:

input uint    S_TotalMMTriger=5    //用于计算止损的最近5笔卖出交易数量
input uint    S_LossMMTriger=3     //用于减少MM的亏损卖出交易数量
input double  S_SmallMM=0.01       //亏损情况下交易的存款比例
input double  S_MM=0.1             //正常交易情况下交易的存款比例
input MarginMode S_MMMode=LOT;      //手数设置模式

在此情况下,如果最近五笔交易中有三笔是亏损的,EA会以0.01手的量在相同方向上开下一笔交易。若最近五笔交易中亏损交易少于三笔,则持仓量为0.1手。

为了让EA正常工作,编译后的 JJRSX.ex5ColorSchaffJJRSXTrendCycle.ex5 指标文件需要放置在 <terminal_data_directory>\MQL5\Indicators 目录下。

以下测试中使用了EA的默认输入参数,测试期间未使用止损和止盈。


图1:对称设置下的交易示例

图1:对称设置下的交易示例

2017年EURAUD H8的测试结果:

图2:测试结果图

图2:测试结果图


图3:非对称设置下的交易示例

图3:非对称设置下的交易示例

列表
评论 0