客户端
- 我们已经引入了对模型上下文协议(MCP)和代理式人工智能(Agentic AI)的原生支持。新功能提供了一种全新的方式与交易平台互动:在 AI 的辅助下进行交易、分析市场和策略,以及开发和测试 EA 交易。
什么是 MCP?
模型上下文协议(MCP)是一项开放标准,可使应用程序与人工智能体(AI Agent)进行通信。与传统的聊天机器人不同,AI Agent 能够将复杂任务分解为一系列操作,并利用关联应用程序的功能,从而独立完成这些任务。
凭借内置的 MCP 支持,MetaTrader 5 成为了面向现代 AI Agent 的、功能齐全的市场数据和交易功能来源。它们可以通过标准的 MCP 接口获取市场信息、分析图表、操作交易环境,并执行所需的操作。
除了内置的 AI 助手外,您还可以连接支持 MCP 的外部系统,包括 OpenAI Codex、Claude Code 以及其他兼容的解决方案。
无需设置
要开始使用 AI 功能,只需使用您的 MQL5.community 帐户登录平台即可。所有用户都将自动获得免费 MQL5 Lite 计划的访问权限。更新后,平台会自动配置您所需的一切:MQL5.community 已被选为默认的 AI 提供商,所需的 API 密钥也会自动添加。
如果您愿意,可以使用您自己的 OpenAI、Anthropic、Gemini、DeepSeek、Ollama 或其他受支持提供商的 API 密钥,并直接在终端设置中选择您偏好的模型。
您的 AI 设置会在交易终端和 MetaEditor 之间自动同步。
MetaTrader 5 中的 AI 助手
内置的 AI 助手可帮助您分析市场。它可以解释某个交易品种的当前市场状况,查看您的未平仓位,分析您的交易历史,回答有关金融工具的问题,并提供近期市场事件的背景信息。
示例提示:- 分析 H1 时间周期上当前的 EURUSD 行情。识别趋势、最近的支撑位和阻力位,并解释市场动态。
- 分析我的持仓情况。目前哪些交易风险最高,原因是什么?
- 分析我过去三个月的交易记录。找出我盈利最多的交易,并就如何改进我的交易策略提出建议。
- 扫描“市场报价”中的所有交易品种,并识别出那些当前正在突破重要价位或形成强劲趋势的交易品种。
MetaEditor 中的 AI 助手
MetaEditor 中的 AI 助手已成为功能齐全的开发助手。它可以:- 生成新的 MQL5 程序
- 分析现有代码
- 检测错误并提出修复建议
- 解释复杂的算法
- 协助进行重构和项目优化
从“文件”菜单、工具栏或“导航器”的右键菜单中启动该助手。然后用自然语言简单描述一下你的任务。
示例提示:- 创建一个 EA,当 20 周期指数移动平均线(EMA 20)与 50 周期指数移动平均线(EMA 50)发生交叉时开仓,止损设为 500 点,止盈设为 1000 点,风险控制在账户保证金的 1% 以内。
- 分析这段 MQL5 代码,找出潜在问题,说明其原因,并提供修复后的版本。
- 在不改变该指标逻辑的前提下,对其进行优化,以减少计算量并提升性能。
- 利用现代语言特性和标准库,将此 MQL4 EA 转换为 MQL5。
- 请解释一下这个 EA 是如何工作的。请描述该策略的交易逻辑、所使用的指标、进场和出场条件,以及该策略中可能存在的任何弱点。
您的请求越详细,生成的结果就越准确、越有用。
您的聊天记录可在“导航器”的“聊天”标签页中查看。 - 新增了 Passkey 身份验证支持。这是一项显著提升交易账户安全性的现代技术。Passkey 可防范网络钓鱼攻击和凭证盗窃:即使攻击者获取了您的账户登录名和密码,若没有您注册设备或硬件安全密钥的确认,他们也无法访问您的账户。
启用和使用密码
经纪商端已启用 Passkey 支持。如果您的交易账户支持 Passkey 身份验证,那么在您输入登录名和密码后首次连接时,终端将提示您创建一个 Passkey。基本的登录和密码验证方式仍然可用。Passkey 用作额外的身份验证因素。
您可以通过以下两种方式之一保存您的 Passkey:- 在移动设备上 — 使用您的智能手机扫描终端显示的二维码,并在您的移动设备上选择“保存 Passkey”。
- 使用硬件安全密钥 — 将兼容的 FIDO2 安全密钥连接到您的计算机,然后按照屏幕上的说明进行操作。
- 如果密钥存储在移动设备上,请使用手机扫描二维码并确认登录。
- 如果你使用硬件安全密钥,请将其连接到你的计算机以完成身份验证。
如有必要,您可以删除已注册的 Passkey。为此,请在“导航”窗口中的账户上下文菜单中选择 “Passkey 管理器”。下次连接时,系统将提示您注册新的密钥。
- 新增了对新账户访问级别的支持:
- 交易者 — 允许交易,但禁止更改密码和进行存款或取款。
- 资金管理人 — 允许存款、取款和账户间转账,但禁止交易和更改密码。
访问这些账户模式需要不同的密码。您可以使用密码更改对话框来配置它们:
- 修复了使用即时执行交易品种的交易对话框初始化问题。在某些条件下,如果之前输入的交易量值超过了交易切换至请求执行的阈值,对话框可能会显示为空。
- 修复了回归通道图形对象的计算。
- 已移除通过 FTP 发布交易报告的支持。这项旧功能已被弃用,不再广泛使用。
- 新增键盘快捷键支持:Ctrl+Tab 和 Shift+Tab — 在帮助部分之间按顺序切换;Alt+右/左 — 切换到上一页或下一页。
- 更新用户界面翻译。
MQL5
- 优化并显著加快了输出文本的 TextOut 函数。在某些情况下,性能比以前版本提高了三倍。
- 新增 SymbolInfoCommissions 函数,用于检索交易品种的佣金信息。
intSymbolInfoCommissions( string name, // 交易品种名称 MqlCommission& commissions[] // 佣金规则数组 );
“commissions” 数组中的每个元素都描述了一个单独的佣金计算规则。佣金的一般适用条件由 MqlCommission 结构字段指定,佣金的具体值和范围由 “tiers” 数组表示。 - 新增了 MatrixInfo 方法,用于分析矩阵的结构特性。它分析矩阵内容,确定其结构类型(对称、厄米、三角、带状等),并填充 MqlMatrixInfo 结构。
- 新增了矩阵和向量方法:
- Write — 分析矩阵内容,确定其结构类型(对称、厄米、三角、带状等),并根据选定的存储格式将矩阵写入打开的文件。
- Read — 从先前使用 Write 方法写入的文件中读取矩阵。
- WriteBin — 根据矩阵的大小和数据类型将矩阵写入文件。
- ReadBin — 从先前使用 WriteBin 方法写入的文件中读取矩阵。
- WriteCSV — 根据矩阵的大小和数据类型,将矩阵写入 CSV 文件。
- ReadCSV — 从先前使用 WriteCSV 方法写入的文件中读取矩阵。
- 新增了矩阵的正交分解方法:
- FactorizationQRTallSkinny — 计算大小为 m 乘 n (m>n) 的高瘦矩阵的分块 QR 分解:A = Q * R。LAPACK 函数为 LATSQR。
- FactorizationLQShortWide — 计算大小为 m×n (m
- FactorizationRZ — 使用正交变换将大小为 M×N (M ≤ N) 的实或复上梯形矩阵 A 简化为上三角矩阵形式。LAPACK 函数为 TZRZF。
- FactorizationQR2 — 计算两个矩阵的广义 QR 分解:A 的大小为 n×m,B 的大小为 n×p:A = Q * R,B = Q * T * Z。LAPACK 函数为 GGQRF。
- FactorizationRQ2 — 计算大小为 m×n 的矩阵 A 和大小为 p×n 的矩阵 B 的广义 RQ 分解:A = R * Q,B = Z * T * Q。LAPACK 函数为 GGRQF。
- 添加了 SylvesterEquation 方法。它求解实矩阵和复矩阵的 Sylvester 方程:A*X + X*B = scale*C,其中 A 为一般的 m×n 矩阵,B 为一般的 n×n 矩阵。使用了 LAPACK 函数 GEES 和 TRSYL。
- 添加了 LeastSquaresGaussMarkov2 方法。它求解一般高斯-马尔可夫线性模型:最小化范数 ∣∣y∣∣2,约束条件为 d=A⋅x+B⋅y,使用矩阵 A 和 B 的广义 QR 分解。使用 LAPACK 函数 GGGLM。
- 新增 BLAS Level 3 方法:
- BlasL3LACRM — 将一个复数矩阵乘以一个实数方阵。
- BlasL3LARCM — 将一个实数方阵乘以一个复数矩阵。
- 修复了 MQL5 统计库中 t 分布分位数计算的错误。
- 修复了指标预定义变量 _StopFlag 的初始化问题。
- 添加了在 CHART_PRICE_MIN 和 CHART_PRICE_MAX 图表属性更改时生成 CHARTEVENT_CHART_CHANGE 事件的功能。要接收该事件,请使用 OnChartEvent 处理函数。
- 修复了 WebRequest 调用中指定的超时处理问题。
- 修复了 OBJ_REGRESSION 和 OBJ_STDDEVCHANNEL 图形对象的 ObjectGetValueByTime 函数操作。
- 在 ENUM_MQL_INFO_INTEGER 枚举中添加了 MQL_LAST_OPENBLAS_ERROR 值。
OpenBLAS库中的大多数LAPACK函数都使用整数 “info” 参数来返回函数或子程序的执行状态:是成功完成,在输入参数中检测到错误,还是出现了数值问题。MQL_LAST_OPENBLAS_ERROR 常量包含最近一次 OpenBLAS 函数调用失败后返回的 “info” 值。
MetaEditor
- 新增代码折叠功能。现在,您可以折叠和展开函数、类、循环、条件语句和其他代码块。这简化了大型源文件中的导航,帮助您专注于程序的特定部分,并使处理大型项目变得更加方便。

使用设置中的新选项来启用或禁用此功能:
- 在选择单词时,所有出现该单词的地方都会高亮显示。当您选择一个标识符、变量、函数或任何其他单词时,MetaEditor 会自动高亮显示当前文件中所有出现的该单词。这使得快速定位相关代码段、跟踪变量和函数使用变得更加容易,并显著简化了大型源文件的分析和导航。

- 修复了 *.md 文件的显示问题。
- 为 *.mqproj 项目添加了 UTF-8 支持。现在保存此类文件时,会使用这种编码。
- 更改了用于保存 *.mq5 和 *.mqh 文件的编码。它们现在已保存为不带 BOM 的 UTF-8 格式。
- 修复了源代码高亮显示的问题。之前,一些 MQL5 语言标识符的显示颜色可能不正确。
- 修复了已分离窗口的坐标保存和加载问题。
- 修复了独立窗口中的键盘快捷键处理问题。
测试器
- 修复了“仅开盘价”测试模式下自定义点差的应用问题。
- 修复了基于百分比的库存费计算问题。
- 修复了无法显示无法参与优化的测试参数(例如字符串参数)的问题。此类参数现在以一个空白的灰色方块显示,表示该参数已被禁用且无法选择。
- 修复了测试期间MQL5程序参数中 clrNONE 颜色值的显示问题。
- 修复了自定义保证金设置的应用。
网页端
- 改进了触摸屏设备上的操作体验。