三句话版本:CopyRates 行为改了,请求超出历史范围会直接报错,部分 EA 可能不开单;回撤计算修了个 bug,回测报告数字会变;WebRequest 和 ONNX 支持都有改进。跑 EA 的人,更新前备份 .set 文件,更新后第一件事查日志。
2026 年 4 月 16 日,MetaQuotes 推送了 MT5 Build 5800。更新日志挺长的,大部分是界面改动和开发者才关心的东西。但有几个改动直接关系到你的 EA 能不能正常跑,回测报告数字对不对得上。
这篇文章不翻译更新日志,只讲跟 EA 交易者有关的部分。我们团队内部已经在测试环境里装了 5800,下面的内容有一部分来自我们自己踩坑的经验。
Build 5800 改了什么
快速过一遍主要改动。
交易对话框重新设计了,新版把 DOM(市场深度)直接集成进来,下单的时候能同时看到买卖挂单的分布。对手动交易者来说还挺方便。不过 EA 自动下单不走这个对话框,跟你没关系。
帮助系统换了引擎,以前点 F1 弹出来的是本地 CHM 文件,现在换成了网页渲染。打开速度快了,但暗色模式用户注意——帮助页面白得晃眼,MQL5 论坛上已经有人吐槽了,MetaQuotes 还没修。
MQL5 新增了 L1 Trend Filter 方法,一种基于 L1 范数的趋势提取算法,底层用 OpenBLAS 做矩阵运算。对量化开发者是好消息,普通 EA 用户暂时用不到。感兴趣可以看 MQL5 官方文档。
ONNX CUDA 支持扩展了,从 Turing 架构一路覆盖到最新的 Blackwell。用 ONNX 机器学习模型跑 EA 的人,现在更多型号的显卡能用了。
MetaEditor 加了 CSV 表格视图,以前只能看纯文本,现在有表格界面,方便不少。
还有一堆 bug 修复。下面挑跟 EA 有关的重点说。
EA 影响速查表
| 改动 | 影响程度 | 你需要做什么 |
|---|---|---|
| CopyRates 返回值变化 | 高 | 更新后查 EA 日志 |
| 回撤计算修复 | 中 | 知道就行,交易报告数字会变 |
| OpenBLAS/ONNX 库修复 | 低 | ML 类 EA 检查 DLL |
| WebRequest Keep-Alive | 低(好事) | 不需要操作 |
| CopyTicksRange 修复 | 中 | 多品种 EA 重新回测 |
| ONNX CUDA 扩展 | 低 | ML 用户受益 |
对 EA 交易者真正有影响的改动
这部分是文章重点。如果你在跑 EA,仔细看。
CopyRates 行为变了——最容易踩的坑
这个改动对 EA 的影响最大。
CopyRates 是 MQL5 里获取 K 线历史数据的函数,几乎所有 EA 都会用到。以前如果你请求的数据范围超出了服务器上实际有的历史数据,MT5 会"好心"地返回它能找到的部分数据。比如你请求 10000 根 K 线,服务器只有 8000 根,它就给你 8000 根。
Build 5800 之后,同样的情况直接返回 -1。报错。
我们团队内部有几款 EA 会在初始化阶段拉比较长的历史数据做均线计算,更新后有两款在某些经纪商的服务器上触发了这个问题。EA 不报错但也不开单,查日志才发现是 CopyRates 拿不到数据了。
你不需要自己去改代码,但更新后一定要留意 EA 的日志。打开 MT5 的"工具箱"面板,切到"日志"标签,看看有没有新的报错。如果出现 CopyRates returned -1 之类的提示,联系 EA 开发者处理。
更多关于 EA 日志排错的内容可以看我们的 MT5 错误代码指南。
回撤计算修了,回测报告数字会变
以前 MT5 在生成交易报告的时候有个 bug:出金(withdrawal)操作导致的余额下降会被算成回撤。你从账户里提了一笔钱,余额减少了,MT5 把这当成"亏损"计入了最大回撤数字。
Build 5800 修复了这个问题。
这主要影响实盘和模拟盘的账户报告。如果你之前在 MT5 里导出过交易报告给别人看,更新后同样的账户历史,回撤数字可能会变小。不是账户表现变好了,是统计方式修正了。
关于怎么正确读交易报告里的各项指标,看我们的 EA 回测教程 里有详细说明。
关于怎么正确读回测报告,看我们的 EA 回测教程。关于回测和实盘之间的差异,也建议看一下回测 vs 实盘:为什么差距那么大。
OpenBLAS 和 ONNX 库的下载修复了
Build 5800 修复了 OpenBLAS 和 ONNX 库在平台更新时的检查和下载逻辑。之前有用户遇到过更新后这两个库文件缺失或版本不对的情况,导致用到矩阵运算或 ONNX 模型的 EA 报错。
大部分 EA 跟这个没关系。但如果你在用涉及矩阵运算的 EA——比如一些机器学习策略或者高级统计模型——更新后 EA 报错的话,检查一下 MT5 安装目录里 openblas.dll 是否存在、版本是否正确。
WebRequest 更稳定了
用 WebRequest 函数发 HTTP 请求的 EA 会受益。典型场景:Telegram 推送通知、远程监控、从外部 API 拉数据。
以前长时间运行的 HTTP 连接容易断,断了之后 EA 可能要等超时才能重新连。我们之前帮用户排查过好几次"Telegram 消息发不出去"的问题,最后都是连接断了没重建。现在 Keep-Alive 机制改进了,这类问题应该会少很多。
不需要改代码,更新后自动生效。
策略测试器里多品种数据修复了
如果你在用多品种 EA(同时交易多个货币对或品种),这个修复跟你有关。
以前在策略测试器里,用 CopyTicksRange 获取非主测试品种的 tick 数据时可能出错,错误代码 4401。导致多品种回测结果不准。
简单说:多品种 EA 的回测结果现在更准了。如果你之前觉得某个多品种 EA 的回测表现和实盘差得离谱,可以在更新后重新跑一遍看看。我们团队有几款多品种组合策略,更新后重新跑了回测,结果确实比之前更接近实盘表现。
ONNX CUDA 支持的显卡更多了
面向用 GPU 跑 ONNX 模型的 EA。支持的 NVIDIA GPU 架构从 Turing(RTX 20 系列)扩展到了 Blackwell(RTX 50 系列),Ampere(RTX 30)、Ada Lovelace(RTX 40)、Hopper(数据中心卡)全覆盖。
用 ONNX 机器学习 EA 的话,升级后可以利用更新的显卡加速推理。不跑 ML 模型的话,这条跳过。
更新前后你需要做什么
更新前备份你的 EA 参数文件(.set 文件),在 MQL5/Profiles/Tester/ 目录下。图表模板和布局也备份一下,Build 5800 之前有用户反馈断电后布局丢失。
更新后这几件事检查一下:
- 打开 EA 日志看有没有新的报错,特别是
CopyRates相关的 - 导出交易报告发现回撤数字和以前不一样的话,不是 bug,是出金不再被算成回撤了
- 用了 Telegram 推送的 EA 不需要任何改动
- ML 类 EA 如果报错,检查 MT5 安装目录下
openblas.dll是否存在且版本正确 - 在 VPS 上跑 EA 的话,建议先在本地更新测试,确认没问题再动 VPS 上的
- 趁重新跑回测的机会,也看看你的 EA 有没有过拟合的问题
- 新手还没装过 EA 的话先看 MT5 安装 EA 教程
MQL5 论坛上怎么说
截至目前,MQL5 社区论坛上没有 EA 兼容性方面的大面积投诉。
主要吐槽集中在界面上:暗色模式帮助页面白底黑字对比度差读着费眼睛,图表缩放的上限比以前小了引发不满。MetaEditor 的查找对话框有个焦点 bug,不过这个在更早的 Build 5792 里已经修了。
总体来说这次更新比较平稳。根据 MetaQuotes 官方更新日志,Build 5800 的重心是界面现代化和 MQL5 数学库扩展,没有对 EA 运行环境做根本性改动。但 CopyRates 那个行为变化确实需要注意——它是静默修改,不会弹窗告诉你。
在 MQL5 官方论坛 可以跟进其他用户的反馈,Build 5800 完整更新日志 有所有细节。FX News Group 的报道 也有一个简洁的英文概述。
如果你在找经过测试、持续跟进平台更新的 EA,可以看看我们的产品页,或者了解一下 FXTool 会员计划——会员可以第一时间获取兼容性更新。
关于作者:FXTool 团队每天都在开发和测试 MetaTrader 交易工具。我们在实盘账户上运行每一款上架的 EA,并公开结果。本文来自我们开发 50+ 款 EA、服务数千名交易者的实战经验。如果你还不了解 EA 是什么,可以从这篇入门文章开始。
风险提示:外汇交易涉及高风险,可能导致本金全部亏损。EA 过去的表现不代表未来结果。请仅用可承受损失的资金进行交易。