MT5指标编译通过 · EX5 33KB 自动发布 1 0

黄金马丁格尔多空可选EA

taiyu1983·1 小时前发布

支持单向或双向马丁,持仓数达标后自动切换间距,盈利目标平仓

黄金马丁格尔多空可选EA

MT5 真机运行截图 · 服务器把编译好的 EX5 挂到黄金 H1 图表上截的,你装上去看到的就是这个样子

挂到 MT5 上运行时终端报了错

编译通过了,但真挂到图表上时终端记录了下面的错误。指标一报错就会被终端停掉,图上可能只剩半截线甚至一片空白—— 这就是「装上去和预期不一样」的原因。把报错连同代码丢给 AI 工作台,让它改好重新发布,截图会自动更新。

指标没能挂到图表上(指标加载失败 错误 4802),截图里没有它
MartingaleDirectionEA.mq5预览 35 / 279 行
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#property copyright "XAUOF Indicator Workshop"
#property version   "1.00"

#include <Trade\Trade.mqh>

// ===== 全局参数 =====
input group "=== 交易方向 ==="
input bool InpEnableLong  = true;         // 允许做多
input bool InpEnableShort = true;         // 允许做空

input group "=== 马丁参数 ==="
input double InpLotStart     = 0.01;      // 初始手数
input double InpLotMulti     = 2.0;       // 手数倍增系数(1.0=固定手数,2.0=翻倍)
input int    InpGridStep1    = 500;       // 第一阶段加仓间距(点)
input int    InpSwitchOrders = 5;         // 几单后切换间距(0=不切换)
input int    InpGridStep2    = 1000;      // 第二阶段加仓间距(点)
input double InpTakeProfit   = 50.0;      // 全部持仓盈利目标(美元)

input group "=== 风控参数 ==="
input int    InpMaxAddTimes  = 10;        // 最多加仓几次(包括初始仓)
input int    InpMagic        = 20241201;  // EA魔术号
input string InpComment      = "Martin";  // 订单注释
input int    InpSlippage     = 30;        // 滑点(点)

// ===== 全局变量 =====
CTrade trade;
int totalBuyOrders = 0;
int totalSellOrders = 0;

//+------------------------------------------------------------------+
//| 初始化                                                              |
//+------------------------------------------------------------------+
int OnInit()
{
   if(!InpEnableLong && !InpEnableShort)

已显示前 35 行,共 279 行。完整源码仅对 xauusd.team VIP 开放查看与复制。

开通 VIP 查看完整源码
MT5 运行截图 · 完整视图带价格轴和时间轴的整张图表(约 150 根 H1 K 线),上面的封面是它最近 80 根 K 线的放大视图
黄金马丁格尔多空可选EA 在 MT5 上的真实截图

作品说明

使用说明

  1. 安装:将代码保存为 .mq5 文件,放入 MT5 的 MQL5\Experts 目录,重启终端或刷新导航器,拖到图表上
  1. 交易方向:允许做多 和 允许做空 可单独或同时开启,关闭一个即为单向马丁
  1. 初始手数:初始手数 建议从 0.01 开始测试,手数倍增系数 设为 1.0 则固定手数,2.0 则翻倍加仓
  1. 间距设置:第一阶段加仓间距 是前几单使用的点数(500点≈50美元),几单后切换间距 为 0 时始终用第一间距,设为 5 则第 5 单后切换到 第二阶段加仓间距
  1. 最多加仓次数:包括初始仓,设为 5 则最多开 5 单(1初+4加仓),达到上限后停止加仓,只等待盈利目标平仓
  1. 盈利目标:所有持仓浮盈+库存费合计达到此金额时自动平掉所有仓位
  1. 风险提示:马丁格尔策略在单边行情中会快速增加持仓和保证金占用,最多加仓次数 是硬性风控上限,务必在模拟盘充分测试后再用实盘
  1. 注意事项:EA 不设止损,靠盈利目标统一平仓;单边行情可能需要较大资金抗单,建议配合人工监控

AI 解读根据源码逐行分析写成,供参考,以实际运行为准

这是什么

这是一个MT5马丁格尔EA,在初始仓后按设定间距自动加仓,通过增加持仓量来摊低平均价格,等待价格回到盈利区间后一键平仓。支持只做多、只做空或同时做多做空,适合对行情方向有基本判断且有足够资金抗单的交易者。

逻辑原理

开仓逻辑:EA启动后,如果允许做多,立即以初始手数做多;如果允许做空,立即以初始手数做空。没有入场信号或技术指标判断,完全依赖人工部署时机。

加仓逻辑:每个tick检查持仓,计算最后一单与当前价格的距离。买单时,若当前价低于最后开仓价≥设定间距(点数),则加仓;卖单时,若当前价高于最后开仓价≥设定间距,则加仓。加仓手数由初始手数 × 倍增系数^(当前单数-1)计算。比如初始0.01手、倍增系数2.0,第1单0.01、第2单0.02、第3单0.04。

切换间距:前几单用第一阶段间距(如500点),达到设定单数后切换到第二阶段间距(如1000点),可减缓后期加仓频率。若「几单后切换间距」设为0,则始终用第一间距。

平仓逻辑:所有持仓的浮盈+库存费合计达到盈利目标金额时,一次性平掉所有仓位。无止损设置。

仓位上限:最多加仓次数是硬性风控,包括初始仓。设为5则最多开5单(1初+4加),达到上限后停止加仓,只等待盈利目标触发平仓。

参数说明

  • 允许做多(默认true):开启则初始和后续允许做多
  • 允许做空(默认true):开启则初始和后续允许做空
  • 初始手数(默认0.01):第一单的手数,建议从小开始测试
  • 手数倍增系数(默认2.0):加仓时手数乘以这个系数;设为1.0则每单固定手数,2.0则翻倍
  • 第一阶段加仓间距(默认500点):前几单加仓时,价格移动多少点触发加仓
  • 几单后切换间距(默认5):第几单之后改用第二间距;设为0则始终用第一间距
  • 第二阶段加仓间距(默认1000点):切换后的加仓间距
  • 全部持仓盈利目标(默认50美元):所有仓位的浮盈+费用达到此金额时平仓
  • 最多加仓几次(默认10):包括初始仓在内的最大持仓数,硬性风控上限
  • EA魔术号(默认20241201):识别该EA的订单,不要改
  • 订单注释(默认"Martin"):订单标注
  • 滑点(默认30点):下单允许的最大价格偏差

怎么用

  1. 代码保存为.mq5文件,放入MT5安装目录的MQL5\Experts文件夹
  2. 重启MT5或在导航器里按F5刷新,在专家顾问列表里找到这个EA
  3. 拖到要交易的图表上(建议选黄金XAUUSD或其他流动性好的品种),任意周期都可以
  4. 参数设置窗口会弹出,按需调整参数后点"确定"启动
  5. 如果没有"允许自动交易"的提示,需要点MT5右上角的自动交易按钮开启
  6. EA会自动开仓加仓,观察图表左上角的日志输出确认每笔订单

适用场景

适合:有明确持仓方向判断的交易者,账户资金充足能抗单(10-20倍杠杆下初始仓不超过账户的5%),心理素质强不怕短期回撤。品种不限,流动性好的黄金、外汇、指数都可以;周期不限,5分钟到日线都能用。

不适合:单边行情中会快速堆积持仓和保证金占用;震荡行情里加仓频繁会消耗点差成本;资金紧张或风险承受能力低的账户;不能监控或对自动交易不放心的人。

风险提示

马丁格尔的根本问题:这个策略假设价格最终会反弹,但在极端单边行情里,加仓会快速拉高保证金占用,最终可能爆仓。最多加仓次数是硬止,一旦触发就停止加仓,但之前的持仓仍然存在。

无止损设置:EA没有止损,靠盈利目标统一平仓。如果行情继续逆向运动超过盈利目标的反向幅度,会陷入被动。

库存费:多日持仓会产生库存费,盈利目标计算已含库存费,但实际费用取决于持仓时长和符号设置,可能偏差。

滑点和成本:每加仓一单都产生点差成本,间距越小加仓越频繁,点差损耗越大。建议用点差低的账户和品种。

重绘风险:不存在。EA的加仓决策基于持仓记录和当前价格,都是确定的,不会改写历史信号。

需自行测试:代码没有内置品种限制,黄金、外汇、加密货币都能跑。但不同品种的波动率、点差、库存费都不同,必须在模拟盘充分测试后再用实盘。

常见问题

这个EA会重绘吗?
不会。加仓决策基于已持仓位的开仓价和当前市场价,这些都是确定的历史数据,不存在重绘风险。
参数默认值适合什么周期?
代码里没有周期限制,任何周期都可以跑。但建议从较大周期(1小时以上)开始测试,避免加仓过于频繁。
只能用在黄金上吗?
代码没有品种限制,外汇、指数、贵金属都能用。但波动率、点差、库存费不同,需要针对性调参和模拟测试。
最多加仓次数达到上限后会怎样?
停止加仓,EA只等待盈利目标触发平仓。期间持仓浮亏会随市场波动。如果行情持续逆向,可能会爆仓。
手数倍增系数设为1.0是什么意思?
每单固定手数,不翻倍。比如初始0.01手,倍增系数1.0,那么第2、3、4单都还是0.01手。

Gold Martingale Grid EA for MT5 - Customizable Long/Short Trading

A MetaTrader 5 Expert Advisor using martingale strategy with customizable lot multiplication and dual-phase grid spacing. Supports unidirectional or bidirectional trading with automatic position closure at profit target. Includes maximum add-on limits as hard risk control.

A short source preview is shown above for visitors; full source, copy and compiled EX5 files are available to VIP members.

评论

后可以留言,比如反馈用着怎么样、想加什么功能。

还没有人评论,来抢个沙发。