MartingalePulse
一个多策略EA,结合了四种价格行为入场方式(HFT跳动动量、吞没K线、RSI反转、EMA交叉)与马丁格尔仓位管理系统。具备高级风险管理功能,包括每日利润/回撤限制、交易时段过滤、移动止损和保证金检查。亏损后通过可配置的马丁格尔类型加仓,盈利或达到每轮最大订单数时重置。
打开交互版(权益曲线、切换品种)基本信息
回测结果(H1,约 1 年)
| 品种 | 盈亏 | 年化 | 最大回撤 | 交易数 | 胜率 | 夏普 | 恢复因子 | 最长连亏 | 每笔期望 | 状态 |
|---|---|---|---|---|---|---|---|---|---|---|
| EURUSD | -0.18% | -0.15% | 5.08% | 123 | 50.00% | -0.01 | -0.04 | 5 | −$0.08 | 可靠 |
| GBPUSD | +5.66% | +4.90% | 4.64% | 121 | 58.30% | 0.94 | 1.22 | 4 | +$4.91 | 可靠 |
| USDJPY | +0.79% | +0.68% | 4.47% | 122 | 45.90% | 0.17 | 0.18 | 7 | +$0.65 | 可靠 |
| XAUUSD | +129.66% | +98.76% | 25.64% | 129 | 52.30% | 1.58 | 5.06 | 5 | +$103.23 | 可靠 |
在 4 个有可信结果的品种中,3 个盈利。
由 MQL5 自动转换为 Python,所有 EA 使用同一套规则回测:按 MT5 手数计仓(外汇每手 10 万单位、黄金每手 100 盎司),1:100 杠杆,同一时间只有一张挂单,净值跌破初始资金 10% 时强平。夏普比率按权益曲线计算。标为不可靠的结果仅供参考。
和同类(马丁格尔)在同一品种上有可信结果的 EA 相比:EURUSD 好于 69%(共 16 个);GBPUSD 好于 87%(共 15 个);USDJPY 好于 38%(共 16 个);XAUUSD 好于 94%(共 16 个)
按月看
| 品种 | 盈利月份占比 | 最好的月份 | 最差的月份 |
|---|---|---|---|
| EURUSD | 54% | +2.00% 2026-02 | -1.67% 2026-06 |
| GBPUSD | 69% | +2.83% 2026-02 | -2.75% 2026-03 |
| USDJPY | 62% | +2.82% 2026-05 | -3.27% 2026-08 |
| XAUUSD | 69% | +26.27% 2026-02 | -15.77% 2026-08 |
根据回测净值曲线计算(约每两天一个点),只统计可信结果。
爆仓风险: 偏高
- 亏损后加大仓位(马丁格尔)
高:回测中爆仓,或使用马丁/网格加仓且不设止损。偏高:马丁或网格加仓但有止损,或不设止损且可同时持有多个仓位。 标签的含义和我们的发现 →
策略分析
该EA的核心策略概念是将技术分析入场信号与马丁格尔资金管理相结合。入场条件提供四种选择:HFT跳动动量要求连续N个跳动价格同向递增/递减;吞没形态要求前一根K线被后一根完全吞没;RSI反转要求RSI从超买/超卖区域穿越回来;EMA交叉要求收盘价穿越EMA线。出场条件依赖固定点数的止损和风险回报比计算的止盈,可选移动止损。仓位管理采用马丁格尔策略,亏损后按经典乘数、乘数加初始、累加初始三种方式加仓,盈利后重置。资金管理支持固定手数或按余额风险百分比计算初始手数,并设有每日利润上限和回撤保护。EA还支持市价单、止损单和限价单三种入场方式,以及按星期设定的交易时段控制。
优势
- 提供四种不同的入场策略选择,灵活性较高
- 具备每日利润上限和回撤保护,有一定风险控制意识
- 支持交易时段过滤,可避开不利时段
- 马丁格尔轮次有最大订单数限制,避免无限加仓
- 代码结构清晰,模块化程度较好,包含保证金充足性检查
劣势
- 马丁格尔策略本质上是高风险的,连续亏损时手数指数增长可迅速耗尽账户
- 市价单入场时先以无SL/TP下单再修改,存在滑点或修改失败导致裸仓的风险
- EMA交叉和RSI反转策略缺乏新K线检查机制(仅有吞没和RSI部分有),可能重复触发信号
- 没有点差过滤器,在小周期或高波动时段入场可能因点差过大而亏损
- 反转逻辑仅关闭当前持仓后等待下一个tick开新仓,可能在快速行情中错失最佳入场价
改进建议
- 为市价单入场添加直接设置SL/TP的逻辑,避免先开仓后修改的风险窗口
- 在所有入场策略中统一添加新K线检查,防止同一根K线重复触发信号
- 添加点差过滤器,当点差超过阈值时暂停入场
- 考虑添加马丁格尔总亏损金额限制,除了订单数量限制外增加资金维度的保护
- 反转逻辑可在平仓成功后立即开反向仓,而非等待下一个tick
风险评估
总体风险: 危险
- 马丁格尔策略在连续亏损时手数呈指数增长,可导致爆仓
- 市价单先开仓后设置SL/TP,存在修改失败导致无止损裸仓的风险
- 默认马丁格尔乘数为2.0且最大5轮,极端情况下手数可达初始的32倍
- 缺乏点差过滤,在高点差时段入场可能产生不必要的亏损
- 反转平仓后等待下一个tick开仓,行情剧烈时可能以更差价格入场
评估得分
参数
| 参数 | 默认值 | 说明 |
|---|---|---|
InpPriceActionType | EMA_CROSSOVER | 价格行为策略类型 |
InpEntryStrategy | MARKET_ORDER | 入场策略(市价/止损/限价) |
InpPendingOrderDistancePoints | 500 | 挂单距当前价格的点数距离 |
InpPendingUpdateInterval | 100 | 挂单更新间隔秒数 |
InpTradeCooldownSeconds | 3 | 交易冷却时间秒数 |
InpChartTimeframe | PERIOD_CURRENT | 指标使用的时间周期 |
InpTickMomentumCount | 6 | HFT动量所需连续跳动数 |
InpEmaPeriod | 15 | EMA周期 |
InpRsiPeriod | 14 | RSI周期 |
InpRsiOverbought | 70 | RSI超买水平 |
InpRsiOversold | 30 | RSI超卖水平 |
InpLotSizeMode | PERCENT_OF_BALANCE | 手数模式(固定/按风险百分比) |
InpFixedInitialLot | 0.01 | 固定初始手数 |
InpRiskPercentage | 1.0 | 余额风险百分比 |
InpMartingaleType | CLASSIC_MULTIPLIER | 马丁格尔类型 |
InpMartingaleMultiplier | 2.0 | 马丁格尔乘数 |
InpMaxOrdersPerRound | 5 | 每轮马丁格尔最大订单数 |
InpMaxLotSize | 5.0 | 最大手数限制 |
InpStopLossPoints | 1000 | 止损点数 |
InpRiskRewardRatio | 2 | 风险回报比 |
InpEnableTrailingStop | false | 启用移动止损 |
InpTrailingStopType | TRAILING_IN_POINTS | 移动止损类型(点数/金额) |
InpTrailingStartPoints | 200 | 移动止损启动点数 |
InpTrailingStopPoints | 100 | 移动止损跟踪点数 |
InpTrailingStartMoney | 50 | 移动止损启动金额 |
InpTrailingStopMoney | 10 | 移动止损跟踪金额 |
InpEnableTradingSessions | true | 启用交易时段 |
InpCloseAtSessionEnd | true | 时段结束时平仓 |
InpMondayTimes | 01:00-23:00 | 周一交易时间 |
InpEnableDailyProfitLimit | true | 启用每日利润限制 |
InpDailyProfitLimitAmount | 1000.0 | 每日利润限制金额 |
InpEnableDrawdown | true | 启用回撤保护 |
InpDrawdownType | PERCENTAGE | 回撤计算类型(固定/百分比) |
InpDrawdownFixedAmount | 300.0 | 最大回撤固定金额 |
InpDrawdownPercentage | 5.0 | 最大回撤百分比 |
InpDrawdownTimeMode | SERVER_TIME | 回撤计算时间模式 |
InpMagicNumber | 105091 | EA魔数标识 |
同类 EA:马丁格尔
回测是历史模拟,不代表未来收益,不构成投资建议。