EA-16348 · 马丁格尔
HelloSmart
HelloSmart是一个马丁格尔风格的网格EA,按固定价格间隔开仓,当持仓总量超过BigLot时将手数乘以倍增系数。达到盈利目标或亏损限额时平掉所有仓位并重置手数。
打开交互版(权益曲线、切换品种)基本信息
回测结果(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 | — | — | — | — | — | 暂不支持转换 |
这个 EA 从未交易的原因:转换后没有留下任何开仓规则。
由 MQL5 自动转换为 Python,所有 EA 使用同一套规则回测:按 MT5 手数计仓(外汇每手 10 万单位、黄金每手 100 盎司),1:100 杠杆,同一时间只有一张挂单,净值跌破初始资金 10% 时强平。夏普比率按权益曲线计算。标为不可靠的结果仅供参考。
爆仓风险: 高
- 亏损后加大仓位(马丁格尔)
- 按固定价格间距挂一串网格单
- 没有止损,也没有移动止损
高:回测中爆仓,或使用马丁/网格加仓且不设止损。偏高:马丁或网格加仓但有止损,或不设止损且可同时持有多个仓位。 标签的含义和我们的发现 →
策略分析
策略概念:该EA采用马丁格尔加仓策略,在价格每移动Step个点后加仓,试图通过增大仓位来摊薄成本并在回调时获利。入场条件:当BuySell=1时,若无持仓或当前Ask比上次开仓价格低Step个点,则买入;当BuySell=2时,若无持仓或当前Bid比上次开仓价格高Step个点,则卖出。出场条件:当累计浮动盈利超过Profit美元或亏损超过Loss美元时,平掉该品种所有仓位。仓位管理:初始使用Lot手数开仓,当累计持仓量达到BigLot时,手数乘以Mnogitel倍增系数,若手数超过MaxLots则重置为Lot。资金管理:仅通过Profit和Loss两个美元阈值控制盈亏,无止损止盈设置,且平仓后手数重置为初始值。该策略在单边行情中会持续加仓,风险极大。
优势
- 逻辑简单直观,易于理解和修改
- 有全局止盈止损机制,限制最大亏损
- 手数倍增后设有MaxLots上限和重置机制,防止无限加仓
- 使用新K线判断避免逐tick重复开仓
劣势
- 马丁格尔策略在单边行情中风险极高,亏损限额5100美元相对盈利60美元过大
- 无单笔止损止盈,完全依赖全局平仓机制
- SymbProfit和Lots函数存在逻辑错误:pos.Select(Symb)未使用循环变量i,导致仅检查同一持仓
- CloseAll函数同样存在pos.Select索引错误,无法正确遍历所有仓位
- 无滑点、点差、保证金检查,实盘可能开仓失败
- 手数倍增系数10倍过大,容易迅速达到MaxLots上限
改进建议
- 修复pos.Select调用逻辑,应使用pos.SelectByIndex(i)或pos.Select(pos.Ticket(i))来正确遍历持仓
- 添加单笔止损止盈,降低单方向持续加仓的风险
- 增加点差过滤和保证金检查,提高实盘可靠性
- 将Mnogitel倍增系数降低至合理范围(如1.5-2),并采用更保守的加仓策略
风险评估
总体风险: 危险
- 马丁格尔加仓策略在单边行情中可能导致爆仓
- 持仓遍历函数存在严重逻辑错误,SymbProfit/Lots/CloseAll无法正确统计和操作所有仓位
- 无单笔止损,完全依赖全局亏损限额,在极端行情下滑点可能导致实际亏损远超设定值
- 手数倍增系数10倍过大,加仓速度极快
评估得分
代码质量1.0
策略逻辑2.0
风险管理1.0
稳健性1.0
创新性1.0
文档1.0
综合1.2
参数
| 参数 | 默认值 | 说明 |
|---|---|---|
BuySell | 2 | 交易方向:1=仅买入,2=仅卖出 |
Step | 1000 | 加仓间距(点数) |
Lot | 0.1 | 初始手数 |
BigLot | 0.5 | 触发倍增手数的持仓量阈值 |
MaxLots | 5 | 最大允许手数 |
Profit | 60 | 止盈金额(美元) |
Loss | 5100 | 止损金额(美元) |
Mnogitel | 10 | 手数倍增系数 |
同类 EA:马丁格尔
回测是历史模拟,不代表未来收益,不构成投资建议。