EA-262 · 动量

TestMACD

该EA使用MetaTrader 5标准专家框架,配合MACD信号模块,基于MACD柱状图交叉逻辑产生交易入场信号。采用固定手数下单,无移动止损,依赖静态止损止盈管理仓位。整体为基于MQL5标准库组件的模板化实现。

打开交互版(权益曲线、切换品种)

基本信息

分类动量
风险低风险
爆仓风险低
评分★★★☆☆
类型交易型 EA
周期H1, H4, D1
指标MACD, EMA
作者MetaQuotes Software Corp.

回测结果(H1,约 1 年)

品种盈亏年化最大回撤交易数胜率夏普恢复因子最长连亏每笔期望状态
EURUSD0.00%0.00%0.00%0—————暂不支持转换
GBPUSD0.00%0.00%0.00%0—————暂不支持转换
USDJPY0.00%0.00%0.00%0—————暂不支持转换
XAUUSD0.00%0.00%0.00%0—————暂不支持转换

这个 EA 从未交易的原因:转换后没有留下任何开仓规则。

由 MQL5 自动转换为 Python,所有 EA 使用同一套规则回测:按 MT5 手数计仓(外汇每手 10 万单位、黄金每手 100 盎司),1:100 杠杆,同一时间只有一张挂单,净值跌破初始资金 10% 时强平。夏普比率按权益曲线计算。标为不可靠的结果仅供参考。

爆仓风险: 未发现爆仓模式

代码里没有发现常见的爆仓模式,回测中账户也没有爆仓。但这不是保证,任何 EA 都可能亏钱。

高:回测中爆仓,或使用马丁/网格加仓且不设止损。偏高:马丁或网格加仓但有止损,或不设止损且可同时持有多个仓位。 标签的含义和我们的发现 →

策略分析

该EA的核心策略是MACD动量交易,通过快速EMA(12周期)与慢速EMA(24周期)的差值构建MACD线,再以信号线(9周期)作为触发条件,当MACD柱状图出现交叉信号时开仓。入场条件由CSignalMACD类内部逻辑决定,通常为MACD线与信号线的金叉做多、死叉做空。出场条件完全依赖固定止损(90点)和固定止盈(110点),没有使用任何移动止损策略(CTrailingNone),这意味着盈利仓位不会锁定浮盈。仓位管理采用CMoneyFixedLot固定手数模式,每次交易固定0.1手,不考虑账户余额变化动态调整。资金管理方面,虽然设置了10%的百分比参数,但固定手数模式下该参数仅影响风险计算,实际下单量始终为0.1手,缺乏根据波动率或账户风险动态调整仓位的能力。整体策略简单直接,但缺乏对市场环境变化的自适应能力。

优势

  • 基于MQL5标准库组件构建,代码结构规范、可维护性强
  • 使用CExpert框架实现了信号、 trailing、资金管理的模块化分离,便于替换和扩展各模块
  • 参数均可通过输入变量外部配置,方便优化和回测调整
  • 每新Bar才执行交易逻辑(EveryTick=false),减少了频繁交易和过拟合风险
  • 具备完整的参数验证流程(ValidationSettings),防止无效参数导致异常交易

劣势

  • 无移动止损策略,盈利仓位无法锁定浮盈,可能导致盈利回吐
  • 固定手数仓位管理过于简单,未根据账户风险或市场波动率动态调整
  • 止损90点与止盈110点的风险回报比仅为1:1.22,对于MACD动量策略偏保守
  • 缺乏市场环境过滤机制,在震荡行情中MACD交叉信号容易产生频繁虚假信号
  • 未设置点差过滤或交易时段过滤,高点差时段可能侵蚀利润
  • 慢速EMA周期24非标准值(通常为26),可能与多数交易平台默认参数不一致

改进建议

  • 增加移动止损模块(如CTrailingFixedPct或CTrailingMA)以保护浮盈,提升盈利能力
  • 替换固定手数管理为动态仓位管理(如CMoneyFixedRisk),根据账户风险百分比和止损距离计算手数
  • 增加趋势过滤条件(如更高时间周期均线方向或ADX指标),避免在震荡行情中频繁开仓
  • 增加点差过滤和交易时段限制,避免在流动性差、点差高的时段交易
  • 考虑增加MACD柱状图零轴过滤,仅在MACD与信号线同侧交叉时开仓,减少虚假信号

风险评估

总体风险: 低风险

  • 固定止损90点提供了一定的下行保护,但缺乏移动止损可能导致盈利仓位回吐
  • MACD在震荡行情中容易产生虚假信号,缺乏过滤机制可能导致连续小亏
  • 固定手数不考虑账户规模变化,小账户可能承受过大风险,大账户则资金利用率不足

评估得分

代码质量4.0
策略逻辑3.0
风险管理3.0
稳健性3.0
创新性1.0
文档2.0
综合2.7

参数

参数默认值说明
Inp_Expert_TitleTestMACD专家名称标识
Expert_MagicNumber9424EA唯一标识号,用于区分不同EA的订单
Expert_EveryTickfalse是否每个Tick都执行交易逻辑,false表示仅在新Bar开盘时执行
Inp_Signal_MACD_PeriodFast12MACD快速EMA周期
Inp_Signal_MACD_PeriodSlow24MACD慢速EMA周期
Inp_Signal_MACD_PeriodSignal9MACD信号线周期
Inp_Signal_MACD_StopLoss90止损点数
Inp_Signal_MACD_TakeProfit110止盈点数
Inp_Money_FixLot_Percent10.0资金管理百分比参数
Inp_Money_FixLot_Lots0.1固定交易手数

同类 EA:动量

回测是历史模拟,不代表未来收益,不构成投资建议。

订阅每周 Arena 周报

每周一封邮件:排名变化、新信号和新研究。不发垃圾邮件,随时可以退订。