EA-13588 · 趋势跟踪

Exp_EMA-Crossover_Signal

该EA基于EMA-Crossover_Signal自定义指标进行交易,在向上交叉信号时开多仓,在向下交叉信号时开空仓。它支持可配置的资金管理模式、止损止盈,以及买卖双边开平仓的独立开关控制。策略在新K线事件触发时运行,并通过历史K线回溯判断是否应平掉反向持仓。

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

基本信息

风险中等
评分★★☆☆☆
类型交易型 EA
周期H1, H4, D1
指标EMA, LWMA, EMA-Crossover_Signal
作者—

回测结果(H1,约 1 年)

暂未回测:这个 EA 还没能自动转换。

策略分析

策略概念基于两条不同周期的移动平均线交叉信号,快速MA上穿慢速MA产生买入信号,下穿产生卖出信号。入场条件为EMA-Crossover_Signal指标在指定SignalBar位置输出非零且非EMPTY_VALUE的信号值,UpValue触发做多、DnValue触发做空。出场条件包括止损和止盈参数控制,同时在开启反向平仓时,EA会遍历历史K线寻找更早期的反向信号来决定是否平仓。仓位管理通过MM参数控制交易手数比例,支持五种资金管理模式:自由保证金、余额、扣除亏损后自由保证金、扣除亏损后余额和固定手数。资金管理采用TradeAlgorithms.mqh库中的标准化模块,提供从固定手数到基于不同保证金计算方式的动态仓位调整。

优势

  • 提供独立的开仓和平仓开关,灵活性高,可以只做单向交易或只平仓不开仓
  • 支持五种资金管理模式,从固定手数到基于保证金动态计算,满足不同风险偏好
  • 使用IsNewBar机制控制信号计算频率,避免同一根K线内重复触发交易
  • 止损止盈参数完整,默认止损1000点止盈2000点,盈亏比2:1较为合理
  • 代码结构清晰,使用TradeAlgorithms.mqh库封装交易逻辑,减少重复代码

劣势

  • 快速MA周期5和慢速MA周期6差距过小,容易产生频繁的虚假交叉信号导致过度交易
  • 反向平仓逻辑遍历所有历史K线(for循环无上限优化),在长历史数据上可能导致性能问题
  • 没有点差过滤机制,在高点差环境下信号可能被噪声淹没导致不利入场
  • 依赖iCustom调用外部指标EMA-Crossover_Signal,增加了部署复杂性和依赖风险
  • Recount标志在CopyBuffer失败时置为true但在下次tick才重新计算,可能在快速行情中延迟信号

改进建议

  • 增大快速MA和慢速MA的周期差距(如5和20),或增加信号确认机制(如要求信号持续2-3根K线)以减少虚假信号
  • 为反向平仓的历史K线遍历添加最大搜索范围限制,避免在超长历史数据上不必要的性能消耗
  • 增加点差过滤和波动率过滤,在高点差或低波动率环境下抑制交易信号

风险评估

总体风险: 中等

  • 快速MA和慢速MA周期差距仅1,产生频繁虚假信号可能导致连续亏损
  • 反向平仓逻辑遍历所有历史K线无上限,存在性能和逻辑风险
  • 缺乏点差过滤和最大持仓检查,可能在不利条件下频繁开仓

评估得分

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

参数

参数默认值说明
MM0.1资金管理比例或固定手数
MMModeLOT资金管理模式:自由保证金/余额/扣除亏损自由保证金/扣除亏损余额/固定手数
StopLoss_1000止损点数
TakeProfit_2000止盈点数
Deviation_10最大允许滑点点数
BuyPosOpentrue是否允许开多仓
SellPosOpentrue是否允许开空仓
BuyPosClosetrue是否允许平多仓
SellPosClosetrue是否允许平空仓
InpInd_TimeframePERIOD_H4EMA-Crossover_Signal指标时间周期
FasterMA5快速移动平均线周期
SlowerMA6慢速移动平均线周期
MATypeMODE_LWMA移动平均线计算方法
MAPricePRICE_CLOSE移动平均线应用价格
SignalBar1信号计算使用的K线索引

同类 EA:趋势跟踪

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

订阅每周 Arena 周报

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