EA-14452 · 动量
Exp_ColorMETRO_DeMarker
该EA基于ColorMETRO_DeMarker自定义指标的交叉信号进行交易,该指标对DeMarker震荡器施加阶梯过滤。当快速阶梯线上穿慢速阶梯线时开多仓,反之开空仓,配有可配置的止损和止盈水平。
打开交互版(权益曲线、切换品种)基本信息
回测结果(H1,约 1 年)
暂未回测:这个 EA 还没能自动转换。
策略分析
该EA的核心策略是基于ColorMETRO_DeMarker指标的双线交叉信号进行动量交易。ColorMETRO_DeMarker指标对DeMarker震荡指标施加快慢两个阶梯过滤(StepSize),生成两条阶梯线MPlus和MMinus。入场条件为:当MPlus[1]>MMinus[1]且MPlus[0]<=MMinus[0]时产生买入开仓信号,表示快速线从下方穿越慢速线向上;当MPlus[1]<MMinus[1]且MPlus[0]>=MMinus[0]时产生卖出开仓信号,表示快速线从上方穿越慢速线向下。出场条件依赖于反向交叉信号触发平仓,同时设置了固定点数的止损(1000点)和止盈(2000点)。仓位管理通过MM参数和MMMode枚举支持多种模式,包括按自由保证金比例、按余额比例、按亏损后余额比例以及固定手数。资金管理委托给TradeAlgorithms.mqh库函数处理,支持5种不同的资金管理模式。策略在新K线形成时检测信号以避免重复交易,但缺乏点差过滤和加仓保护机制。
优势
- 阶梯过滤机制有效减少DeMarker指标的噪音信号,避免频繁交易
- 支持多种资金管理模式,灵活性高,适应不同风险偏好
- 新K线检测机制避免同根K线内重复交易,减少无效信号
- 买卖开平仓可独立开关控制,便于策略部分启用或优化
- 使用自定义指标句柄和CopyBuffer方式获取数据,架构规范
劣势
- 缺乏点差过滤,在高点差环境下可能产生不利入场
- 止损止盈为固定点数,未考虑市场波动性(ATR)动态调整
- 没有持仓检查机制,可能在已有同向仓位时重复开仓
- 信号仅在K线闭合时检测,可能错过快速行情中的入场时机
- 依赖外部自定义指标ColorMETRO_DeMarker,若缺失则EA无法运行且仅打印警告不停止初始化
改进建议
- 增加点差过滤条件,当当前点差超过阈值时跳过交易信号
- 在开仓前检查同向持仓,避免重复建仓导致风险敞口过大
- 将OnInit中指标句柄创建失败时返回INIT_FAILED而非继续运行
- 考虑加入ATR动态止损止盈,根据市场波动性自适应调整
风险评估
总体风险: 中等
- 指标句柄创建失败时EA不会停止初始化,可能导致后续所有CopyBuffer调用失败并反复触发Recount
- 没有持仓数量检查,可能在同方向重复开仓导致风险敞口失控
- 固定止损1000点和止盈2000点在小周期或高波动品种上可能不合适
- 默认使用H8周期,但止损止盈点数与周期不匹配时风险较大
评估得分
代码质量3.0
策略逻辑3.0
风险管理2.0
稳健性2.0
创新性3.0
文档1.0
综合2.3
参数
| 参数 | 默认值 | 说明 |
|---|---|---|
MM | 0.1 | 交易手数或资金管理比例 |
MMMode | LOT | 资金管理模式(按自由保证金/余额/亏损后余额/固定手数) |
StopLoss_ | 1000 | 止损点数 |
TakeProfit_ | 2000 | 止盈点数 |
Deviation_ | 10 | 最大允许滑点点数 |
BuyPosOpen | true | 是否允许买入开仓 |
SellPosOpen | true | 是否允许卖出开仓 |
BuyPosClose | true | 是否允许买入平仓 |
SellPosClose | true | 是否允许卖出平仓 |
InpInd_Timeframe | PERIOD_H8 | 指标计算的时间周期 |
PeriodDeMarker | 7 | DeMarker指标周期 |
StepSizeFast | 5 | 快速阶梯过滤步长 |
StepSizeSlow | 15 | 慢速阶梯过滤步长 |
SignalBar | 1 | 用于检测信号的K线索引 |
同类 EA:动量
回测是历史模拟,不代表未来收益,不构成投资建议。