Autotrader Momentum
该EA实现了简单的动量策略,通过比较用户指定的当前K线收盘价与可比较K线收盘价来判断方向。价格上涨时开多单并平空单,价格下跌时开空单并平多单。EA包含可配置的止损、止盈、追踪止损及保证金检查功能。
打开交互版(权益曲线、切换品种)基本信息
回测结果(H1,约 1 年)
| 品种 | 盈亏 | 年化 | 最大回撤 | 交易数 | 胜率 | 夏普 | 恢复因子 | 最长连亏 | 每笔期望 | 状态 |
|---|---|---|---|---|---|---|---|---|---|---|
| EURUSD | -0.97% | -0.84% | 3.72% | 109 | 49.10% | — | — | — | — | 与其他 EA 结果相同 |
| GBPUSD | +6.69% | +5.79% | 4.59% | 107 | 51.40% | — | — | — | — | 与其他 EA 结果相同 |
| USDJPY | +3.63% | +3.14% | 4.42% | 99 | 51.50% | — | — | — | — | 与其他 EA 结果相同 |
| XAUUSD | -3.39% | -2.81% | 49.78% | 104 | 51.50% | — | — | — | — | 与其他 EA 结果相同 |
这个 EA 在每个品种上的回测都和 EA-17162, EA-17352, EA-22834 一模一样。几乎可以肯定是自动转换丢掉了它与众不同的部分(自定义指标、过滤条件或资金管理),所以这些结果不参与排名和统计。
由 MQL5 自动转换为 Python,所有 EA 使用同一套规则回测:按 MT5 手数计仓(外汇每手 10 万单位、黄金每手 100 盎司),1:100 杠杆,同一时间只有一张挂单,净值跌破初始资金 10% 时强平。夏普比率按权益曲线计算。标为不可靠的结果仅供参考。
爆仓风险: 未发现爆仓模式
代码里没有发现常见的爆仓模式,回测中账户也没有爆仓。但这不是保证,任何 EA 都可能亏钱。
高:回测中爆仓,或使用马丁/网格加仓且不设止损。偏高:马丁或网格加仓但有止损,或不设止损且可同时持有多个仓位。 标签的含义和我们的发现 →
策略分析
策略概念基于纯动量比较:如果当前K线收盘价高于N根K线前的收盘价则判定为上涨动量开多,反之判定为下跌动量开空。入场条件为close_array[InpCurrentBar] > close_array[InpComparableBar]时做多,close_array[InpCurrentBar] < close_array[InpComparableBar]时做空,仅在新K线诞生时执行交易逻辑。出场条件包括固定止损止盈(默认各50点)以及追踪止损(默认5点最小距离加5点步长),开反向仓前会先平掉同品种同魔数的反向持仓。仓位管理采用固定手数模式(默认1手),通过CheckVolumeValue函数验证手数是否符合品种最小/最大手数及步长要求。资金管理方面在开仓前调用FreeMarginCheck检查可用保证金是否充足,不足则拒绝开仓。整体策略逻辑非常简单直接,缺乏趋势过滤器、波动率过滤和多时间框架确认。
优势
- 代码结构清晰,使用MQL5标准库(CTrade、CSymbolInfo等)规范开发,具有良好的代码质量
- 包含保证金检查、手数合法性验证和止损止盈保护,具备基础风险管理框架
- 追踪止损功能可帮助锁定浮动利润,防止盈利回吐
- 仅在新K线诞生时执行交易逻辑,避免tick级别过度交易
- 支持3/5位小数点品种自动适配,兼容性良好
劣势
- 策略逻辑过于简单,仅比较两个K线收盘价缺少过滤条件,在震荡行情中会产生大量虚假信号和频繁交易
- 固定手数缺乏动态仓位管理,无法根据账户规模或市场波动率调整风险敞口
- 止损止盈默认仅50点且比例1:1,风险回报比不佳,追踪止损5点过小容易被市场噪音触发
- 缺少点差过滤、波动率过滤和多时间框架确认,在高点差或低流动性环境下容易亏损
- 每次信号都反向平仓再开仓,在频繁震荡时会产生大量手续费和滑点损失
改进建议
- 增加动量确认指标(如RSI、MACD或ADX)作为过滤条件,减少震荡行情中的虚假信号
- 实现动态仓位管理(如基于ATR的风险百分比计算手数),并根据波动率调整止损止盈距离
风险评估
总体风险: 中等
- 简单动量比较在震荡市中会产生频繁的开平仓信号导致大量手续费损耗
- 追踪止损默认5点过小容易在正常波动中被触发导致过早离场
- 固定1手交易缺乏根据账户余额动态调整的机制,小账户可能承受过大风险
评估得分
参数
| 参数 | 默认值 | 说明 |
|---|---|---|
InpLots | 1.0 | 固定交易手数 |
InpStopLoss | 50 | 止损距离(点数) |
InpTakeProfit | 50 | 止盈距离(点数) |
InpTrailingStop | 5 | 追踪止损最小距离(价格到止损的最小距离,点数) |
InpTrailingStep | 5 | 追踪止损步长(点数) |
InpCurrentBar | 0 | 当前比较K线索引 |
InpComparableBar | 15 | 可比较K线索引(回看周期) |
同类 EA:动量
回测是历史模拟,不代表未来收益,不构成投资建议。