Exp_AnchoredMomentum
该EA基于Anchored Momentum自定义指标进行交易,当动量突破上轨时开多仓,跌破下轨时开空仓。使用可配置的SMA/EMA周期和阈值水平生成信号,仓位管理采用存款比例机制并配合固定的止损止盈点数。
打开交互版(权益曲线、切换品种)基本信息
回测结果(H1,约 1 年)
| 品种 | 盈亏 | 年化 | 最大回撤 | 交易数 | 胜率 | 夏普 | 恢复因子 | 最长连亏 | 每笔期望 | 状态 |
|---|---|---|---|---|---|---|---|---|---|---|
| EURUSD | 0.00% | 0.00% | 0.00% | 0 | — | — | — | — | — | 运行报错 |
| GBPUSD | 0.00% | 0.00% | 0.00% | 0 | — | — | — | — | — | 运行报错 |
| USDJPY | 0.00% | 0.00% | 0.00% | 0 | — | — | — | — | — | 运行报错 |
| XAUUSD | 0.00% | 0.00% | 0.00% | 0 | — | — | — | — | — | 运行报错 |
由 MQL5 自动转换为 Python,所有 EA 使用同一套规则回测:按 MT5 手数计仓(外汇每手 10 万单位、黄金每手 100 盎司),1:100 杠杆,同一时间只有一张挂单,净值跌破初始资金 10% 时强平。夏普比率按权益曲线计算。标为不可靠的结果仅供参考。
爆仓风险: 未发现爆仓模式
代码里没有发现常见的爆仓模式,回测中账户也没有爆仓。但这不是保证,任何 EA 都可能亏钱。
高:回测中爆仓,或使用马丁/网格加仓且不设止损。偏高:马丁或网格加仓但有止损,或不设止损且可同时持有多个仓位。 标签的含义和我们的发现 →
策略分析
该EA的策略核心是基于锚定动量指标(Anchored Momentum)的突破交易。入场条件为:当指标值从上方穿越上轨(UpLevel=+0.025)时产生买入信号,当指标值从下方穿越下轨(DnLevel=-0.025)时产生卖出信号,采用的是穿越确认而非单纯阈值判断,避免假信号。出场条件包括:持有多头时指标跌破下轨则平多仓,持有空头时指标升破上轨则平空仓,同时每笔交易设有固定点数的止损(1000点)和止盈(2000点)。仓位管理通过MM参数控制,负值表示固定手数,正值表示按存款比例计算手数。资金管理依赖外部TradeAlgorithms.mqh库中的BuyPositionOpen和SellPositionOpen函数实现。策略使用新K线检测机制(IsNewBar)来避免同根K线重复交易,但也允许SignalBar=0时逐tick执行。默认H4周期配合动量指标,属于中长线动量突破策略。
优势
- 使用穿越确认机制(Value[1]>UpLevel且Value[0]<=UpLevel)而非简单阈值判断,减少假信号
- 提供完整的买卖开平仓权限控制,可灵活配置只买、只卖或双向交易
- 新K线检测机制避免同根K线内重复交易,减少过度交易风险
- 止损止盈参数可配置,具备基本的风险控制框架
- 指标参数和时间周期均可配置,策略适应性较强
劣势
- 依赖外部TradeAlgorithms.mqh库和自定义指标AnchoredMomentum,缺少这些文件EA无法运行
- 止损止盈值较大(1000/2000点)且无动态调整机制,可能不适应当前市场波动率
- 缺少点差过滤和波动率过滤,在窄幅盘整市场中可能产生大量虚假信号
- 指标句柄创建失败时仅打印警告但OnInit仍返回0(成功),应返回INIT_FAILED
- 无最大持仓数限制和回撤控制,极端行情下风险敞口不可控
改进建议
- OnInit中指标句柄创建失败时应返回INIT_FAILED而非0,防止EA在无指标情况下运行
- 增加点差过滤和ATR波幅过滤,避免在低流动性或窄幅盘整时产生虚假信号
- 增加最大持仓数限制和最大回撤保护,提升极端行情下的风险控制能力
风险评估
总体风险: 中等
- 指标句柄创建失败时EA仍继续运行,可能导致交易逻辑完全失效
- 无点差过滤,高点差环境下止损可能被瞬间触发
- 固定止损止盈不适应市场波动率变化,可能在剧烈行情中造成过大损失
- SignalBar=0时逐tick执行可能在高波动时频繁开平仓
评估得分
参数
| 参数 | 默认值 | 说明 |
|---|---|---|
MM | -0.1 | 存款比例或固定手数,负值为手数 |
StopLoss_ | 1000 | 止损点数 |
TakeProfit_ | 2000 | 止盈点数 |
Deviation_ | 10 | 最大价格滑点偏差 |
BuyPosOpen | true | 允许买入开仓 |
SellPosOpen | true | 允许卖出开仓 |
BuyPosClose | true | 允许平多头仓位 |
SellPosClose | true | 允许平空头仓位 |
InpInd_Timeframe | PERIOD_H4 | 锚定动量指标的时间周期 |
MomPeriod | 8 | SMA周期 |
SmoothPeriod | 6 | EMA平滑周期 |
IPC | PRICE_CLOSE | 指标计算应用价格类型 |
UpLevel | +0.025 | 上突破水平 |
DnLevel | -0.025 | 下突破水平 |
Shift | 0 | 指标水平偏移K线数 |
SignalBar | 1 | 获取入场信号的K线索引 |
同类 EA:动量
回测是历史模拟,不代表未来收益,不构成投资建议。