请观看如何免费下载自动交易
请在Telegram上找到我们!
加入我们粉丝页
有趣的脚本?
因此发布一个链接 -
让其他人评价
喜欢这个脚本? 在MetaTrader 5客户端尝试它
EA

两条均线一条 RSI - MetaTrader 5EA

发布者:
Vladimir Karputov
显示:
3163
等级:
(26)
已发布:
2018.06.25 14:41
\MQL5\Profiles\Tester\
需要基于此代码的EA交易或指标吗?请在自由职业者服务中订购 进入自由职业者服务

思路来自: Iurii Tokman

MQL5 编码: Vladimir Karputov

EA 依据两条 iMA (移动均线,MA) 指标和一条 iRSI (相对强弱指数,RSI) 进行交易。 仅在出现新的柱形时才会根据交易信号做出决策,持仓会在逐笔报价时尾随并平仓 (如果已获利的话)。

策略应用了一个非常规的解决方案: 慢速 指标的均化周期计算为 快速 均化周期乘以 2,而 RSI 均化周期总是等于 快速 均化周期。 这样就减少了优化中的参数数量。

您也可以在信号识别公式中绝对优化所有 "<" 和 ">" 符号。 为此, 它引入了自身的 自变量 (InpMoreLessBuy_1, InpMoreLessBuy_2, InpMoreLessBuy_3, InpMoreLessSell_1, InpMoreLessSell_2, 和 InpMoreLessSell_3)。 有了这些自变量,该公式被修改如下:

   bool signal_buy=(!InpMoreLessBuy_1  ?  ArrayFast[1]<ArraySlow[1]:  ArrayFast[1]>ArraySlow[1]) && 
                   (InpMoreLessBuy_2   ?  ArrayFast[0]>ArraySlow[0]:  ArrayFast[0]<ArraySlow[0]) &&
                   (InpMoreLessBuy_3   ?  RSI>InpRSI_level_UP      :  RSI<InpRSI_level_UP);
   bool signal_sell=(InpMoreLessSell_1 ?  ArrayFast[1]>ArraySlow[1]:  ArrayFast[1]<ArraySlow[1]) && 
                    (!InpMoreLessSell_2?  ArrayFast[0]<ArraySlow[0]:  ArrayFast[0]>ArraySlow[0]) &&
                    (!InpMoreLessSell_3?  RSI<InpRSI_level_DOWN    :  RSI>InpRSI_level_DOWN);


输入参数

  • 移动平均线指标参数:

    • Fast: av. period - "快速" 移动均线的均化周期;
    • Fast: horizontal shift - "快速" 移动均线的水平位移;
    • Fast: type of price - "快速" 移动均线的价格类型;
    • Slow: horizontal shift - "慢速" 移动均线的水平位移;
    • Slow: type of price - "慢速" 移动均线的价格类型;
    • Fast and Slow: smoothing type - 均化类型 ("快速" 和 "慢速" 共用参数)。

  • RSI 指标及其信号的参数:

    • RSI: type of price - 指标 RSI 的价格类型;
    • RSI: level UP - 指标 RSI 的上边界级别;
    • RSI: level DOWN - 指标 RSI 的下边界级别。

  • 交易参数:

    • Stop Loss - 止损 (如果设为零,参数将被禁用);
    • Take Profit - 止盈 (如果设为零,参数将被禁用);
    • Trailing Stop - 尾随 (如果设为零,参数将被禁用);
    • Trailing Step - 尾随步幅;
    • Lots - 按照永久性手数交易 (参数 Lots 高于零且参数 Risk 等于零);
    • Risk - 动态计算手数 (参数 Risk 高于零且参数 Lots 等于零);
    • Maximum number of positions in one direction - 一个方向上的最大数量 (如果设为零,该参数将被禁用);
    • Close all positions when profit is achieved - 达到利润目标时全部平仓 (如果设为零,参数将被禁用);
    • Close opposite positions - 逆向持仓平仓 (如果设为 "false",参数将被禁用);
    • magic number - EA 的独有标识符。

正如您所看到,除了设置指标参数之外,该 EA 可灵活设置 (和禁用) 止损,止盈,尾随,一个方向的持仓最大数量,获利平仓,以及逆向持仓平仓。 您还可以管理开仓手数的计算: 您可按照永久性手数交易 (Lots 高于零且 Risk 等于零), 或动态计算手数 (Risk 高于零且 Lots 等于零)。


优化建议

在 "1 分钟 OHLC" 模式下, 选择一个品种和时间帧 M15。 禁用 (设为零) Stop Loss, Take Profit, 和 Trailing 并将 maximum number of positions in each direction 设为 "1"。或将包括初始优化参数的文件 Two MA one RSI M15 Start.set 复制到 MQL5\Profiles\Tester\ 文件夹中。

选择优化类型为 "快速 (遗传算法)" 和 "最大余额" 参数进行优化。

为了优化,我建议参与 MQL5 云网络: 针对 2017 全年的 USDJPY,云计算优化加上我的四核笔记本电脑

耗时

2018.05.28 08:03:19.923 优化完成时间 7 分 58 秒

且成本为 $0.08。

由MetaQuotes Ltd译自俄语
原代码: https://www.mql5.com/ru/code/20886

Exp_SilverTrend_CrazyChart Exp_SilverTrend_CrazyChart

一套基于 SilverTrend_CrazyChart 指标信号的交易系统。

随机振荡器 EA 随机振荡器 EA

基于指标 iStochastic (随机振荡器,随机指标) 进行交易。 可启用/禁用持仓的止损, 止盈, 和尾随。

OzFX_D1_IndAES_v1.0_HTF OzFX_D1_IndAES_v1.0_HTF

指标 OzFX_D1_IndAES_v1.0 在输入参数中提供了时间帧选择选项。

CandlesticksBW_Alert CandlesticksBW_Alert

一款根据 B.Williams 的多色烛条指标,当趋势变化时报警,并在这种情况下发送电子邮件和推送消息。