MT5-Quant
MT5-Quant
MCP 服务器,用于在 macOS/Linux 上进行 MT5 策略开发。 提供 89 个工具,用于编译、回测、分析、优化、调试崩溃以及管理 MQL5 智能交易系统——无需 Windows。
You: "Backtest MyEA Jan-Mar, what caused the February drawdown?"
Claude: [compile → clean → backtest → analyze 1,847 deals]
→ Feb 14: BUY grid at L6, locking lot 1.75× base
→ Cutloss fired 17 points later
→ Recommendation: cap locking multiplier to ≤1.2×为什么选择 MT5-Quant
重点: 回测组织、报告和分析——这些是 MT5 本身不具备的能力。
MT5-Quant | 其他 | |
平台 | macOS/Linux 原生 | 仅 Windows |
回测流程 | ✅ 完整(编译 → 运行 → 分析) | ✅ 通过 MT5 Python 包 |
交易级分析 | ✅ 19 个维度,数据库支持 | ❌ |
报告组织 | ✅ SQLite(报告 + 交易)+ 搜索 + 历史 | ❌ |
MQL5 编译 | ✅ 无头模式(通过 Wine 运行 MetaEditor,无 GUI) | ⚠️ 通过 GUI 或终端 |
优化 | ✅ 后台运行 + 结果解析 + .set 文件生成 | ⚠️ 仅终端,无解析 |
崩溃调试 | ✅ Wine/MT5 诊断 | ❌ |
其他方案通常使用 MetaTrader5 Python package 在 Windows 上运行,提供完整的终端操作。MT5-Quant 填补了这一空白:组织回测报告、提取交易级洞察、管理优化工作流——这些都不是 MT5 或其 Python API 原生提供的功能。
Related MCP server: mt4ctl
快速开始
安装 MT5-Quant
选项 A — Cargo(推荐,需要 Rust 工具链)
cargo install mt5-quant --locked选项 B — 预构建二进制文件(无需工具链)
# macOS Apple Silicon
curl -LO https://github.com/masdevid/mt5-quant/releases/latest/download/mcp-mt5-quant-macos-arm64.tar.gz
tar xzf mcp-mt5-quant-macos-arm64.tar.gz # → mcp-mt5-quant-macos/mt5-quant
# Linux x64
curl -LO https://github.com/masdevid/mt5-quant/releases/latest/download/mcp-mt5-quant-linux-x64.tar.gz
tar xzf mcp-mt5-quant-linux-x64.tar.gz # → mcp-mt5-quant-linux/mt5-quant将二进制文件移动到 PATH 中的某个位置(例如 /usr/local/bin 或 ~/.local/bin),以便客户端可以将其作为 mt5-quant 启动。
选项 C — 注册到你的 LLM 客户端(复制粘贴)
Claude Code
claude mcp add mt5-quant -- mt5-quant --stdioClaude Desktop — ~/Library/Application Support/Claude/claude_desktop_config.json
{ "mcpServers": { "mt5-quant": { "command": "mt5-quant", "args": ["--stdio"] } } }Cursor — .cursor/mcp.json(与 Claude Desktop 的 JSON 结构相同)
{ "mcpServers": { "mt5-quant": { "command": "mt5-quant", "args": ["--stdio"] } } }opencode — .opencode/opencode.jsonc
{ "mcp": { "mt5-quant": { "type": "local", "command": ["mt5-quant", "--stdio"], "enabled": true } } }Codex CLI — ~/.codex/config.toml
[mcp_servers.mt5-quant]
command = "mt5-quant"
args = ["--stdio"]然后完成设置(自动检测 Wine 和 MT5 路径):
bash scripts/setup.sh提示: 你也可以直接让你的 LLM 编程代理完成以上所有操作: “请从 https://github.com/masdevid/mt5-quant 安装 mt5-quant——下载或构建它,运行其
scripts/setup.sh以自动检测 Wine 和 MT5 路径,并将其注册为 MCP 服务器。”
首次回测
Run a backtest on MyEA from 2025.01.01 to 2025.03.31AI 会运行完整流程:编译 → 清理缓存 → 回测 → 提取 → 分析。
MCP 工具(89)
核心工作流
工具 | 描述 |
| 完整流程:编译 → 清理 → 回测 → 提取 → 分析 |
| 使用预编译 EA 快速回测(跳过编译) |
| 仅回测——只提取原始交易,不进行分析 |
| 即发即弃:启动 MT5 回测,轮询直至完成 |
| 轮询运行中的回测状态(MT5 是否运行、是否找到报告、已用时间) |
| 遗传优化(后台运行,立即返回) |
| 在 MT5 完成后解析优化结果 |
| 列出所有优化任务及其状态 |
| 从任意报告目录读取 |
| 将报告与基线比较,返回胜者/败者判定 |
| 通过 MetaEditor 编译 MQL5 EA |
| 列出 MQL5/Experts 目录中的所有 EA |
| 列出 MQL5/Indicators 目录中的所有指标 |
| 列出 MQL5/Scripts 目录中的所有脚本 |
| 快速服务器健康检查 |
| 列出 MT5 终端中所有可用的交易品种 |
细粒度分析(单独分析)
工具 | 描述 |
| 仅月度盈亏明细 |
| 仅回撤事件及原因 |
| 仅最大亏损交易 |
| 仅连续亏损模式 |
| 持仓时间与盈亏配对 |
| 买入与卖出表现 |
| 连胜/连亏分析 |
| 同时持仓峰值 |
使用这些工具进行针对性分析,或使用 analyze_report 一次性运行所有分析。
交易级分析(新)
工具 | 描述 |
| 列出单个交易,支持筛选(类型、利润范围、手数、日期) |
| 在交易注释中进行全文搜索(例如 "Layer #3") |
| 按 EA 魔术数字筛选交易 |
| 利润直方图:小/中/大额盈利与亏损 |
| 按小时和星期几分析表现 |
| 持仓时间分桶 + 与利润的相关性 |
| 根据注释进行网格/马丁格尔层分析 |
| 手数相关性 + 按手数大小的表现 |
| 手续费和隔夜利息对盈利能力的影响 |
| 每小时/每日利润、年化收益、交易频率 |
监控
工具 | 描述 |
| 检查 Wine/MT5 路径、Wine 版本以及 EA/.set 文件数量 |
| 检查后台优化任务的实时状态 |
| 一次调用获取所有优化任务及简洁状态 |
报告与日志
工具 | 描述 |
| 所有运行的关键指标紧凑表格——无需完整分析 |
| 获取最新报告,可选权益曲线图 |
| 按 EA、交易品种、日期范围或利润条件查找报告 |
| 按 ID 获取特定报告及权益曲线图 |
| 汇总统计:数量、平均值、通过率 |
| 按任意指标排序的前 N 个报告(利润因子、回撤等) |
| 按标签查找报告 |
| 按回测日期范围查询 |
| 在报告备注中进行全文搜索 |
| 查找使用特定 .set 文件的所有报告 |
| 查找可比较的报告(相同 EA/交易品种/时间框架) |
| 读取任意日志的最后 N 行;使用 |
| 删除旧报告目录,保留最近 N 个(跳过 |
| 将历史条目或报告写入 |
历史与基线
工具 | 描述 |
| 将一个报告目录转换为 |
| 批量归档所有报告目录,然后可选择删除;保留最近 N 个安全 |
| 使用筛选条件(EA、交易品种、判定、利润、DD)和排序选项查询历史 |
| 为任意历史条目附加判定/备注/标签 |
缓存管理
工具 | 描述 |
| 按交易品种统计 MT5 测试器缓存大小——清理前检查 |
| 删除测试器缓存文件;支持按交易品种和 |
预检与验证
工具 | 描述 |
| 获取当前 MT5 账户会话(登录名、服务器、可用交易品种) |
| 验证交易品种在日期范围内是否有足够的历史数据 |
| 检查 MT5 终端是否已安装并准备就绪 |
| 不运行完整编译的预编译语法检查 |
调试与诊断(新)
Tool | Description |
| 检查 Wine 安装、版本和 prefix 健康状况 |
| 获取 MT5 终端、测试器或 MetaEditor 日志(支持过滤) |
| 在日志中搜索错误模式(崩溃、异常、访问冲突) |
| 检查 MT5 进程是否在运行,获取 PID、CPU 和内存使用情况 |
| 终止卡死的 MT5 进程(对 wineserver 使用 force=true) |
| 检查磁盘空间、内存和 CPU 可用性 |
| 验证 terminal.ini 和测试器配置文件 |
| 获取 Wine prefix 详细信息:Windows 版本、已安装程序、注册表 |
| 调查回测失败:不完整的标记、缺失的 deals.csv、错误 |
| 检查是否有更新版本的 MT5-Quant 可用 |
| 将 MT5-Quant 更新到最新版本 |
项目管理
Tool | Description |
| 使用模板(scalper/swing/grid/basic)搭建新的 MQL5 项目 |
| 从 EA 输入变量生成 .set 参数文件 |
| 将回测报告导出为 CSV、JSON 或 Markdown |
历史与比较
Tool | Description |
| 列出 EA/交易品种的所有回测及汇总指标 |
| 并排比较 2 个以上回测结果并附带分析 |
.set 文件 — 读取 / 写入
Tool | Description |
| 列出测试器配置目录中的所有 .set 文件,包含扫描统计和组合数量 |
| 解析 UTF-16LE |
| 将完整参数字典写入 → 带 |
| 就地更新特定参数,返回差异 — 取代读取→编辑→写入流程 |
| 一次调用即可将 |
.set 文件 — 分析与生成
Tool | Description |
| 扫描参数、值计数和总优化组合数 |
| 两个 |
| 从 |
搜索与发现
Tool | Description |
| 在所有目录中按名称模式搜索 EA |
| 按名称模式搜索指标 |
| 按名称模式搜索脚本 |
| 将指标复制到项目目录 |
| 将脚本复制到项目目录 |
故障排除
首先从你的 LLM 运行 verify_setup — 它会检查所有路径并返回可操作的提示。
对于回测/编译/优化期间的崩溃或无法解释的失败:
diagnose_wine— 检查 Wine 安装和 prefix 健康状况search_mt5_errors— 在日志中查找崩溃原因check_mt5_process+kill_mt5_process— 检测并终止卡死的进程get_backtest_crash_info— 调查失败的回测报告
文档
Doc | Description |
分步安装、设置和首次回测 | |
全部 90 个工具的完整输入/输出模式 | |
配置参考( | |
设计原则和内部模块布局 | |
通过 Wine 在 Linux 代理之间分发优化任务 | |
针对 Wine、MT5 和回测的平台特定修复 |
包含阅读顺序的完整索引:docs/INDEX.md
致谢
MT5-Quant 站在卓越开源项目的肩膀上:
Rust — 使零成本抽象、内存安全和无畏并发成为现实的语言
Tokio — 为所有并发操作提供动力的异步运行时
Wine — 让 MT5 无需 Windows 许可即可在 macOS 和 Linux 上运行
MetaTrader 5 — MetaQuotes 的交易平台(MetaQuotes Software Corp. 的商标)
rusqlite — 为 Rust 提供易用的 SQLite 绑定
serde — 让配置和报告处理变得轻松的序列化框架
scraper — 用于 MT5 报告提取的 HTML 解析
tempfile — 安全的临时文件处理
特别感谢 Anthropic 的 Model Context Protocol (MCP) 团队,他们定义了让 AI 驱动的开发工作流成为可能的标准。
免责声明
非财务建议。 MT5-Quant 是用于算法交易策略的开发和分析工具。它不提供投资建议、交易推荐,也不保证盈利能力。所有回测结果均为历史模拟,不保证未来表现。
风险自负。 交易金融工具存在重大亏损风险。MT5-Quant 的作者和贡献者对以下情况不承担任何责任:
使用此工具开发或测试的策略所产生的交易亏损
回测操作导致的数据丢失或损坏
Bug、错误或不正确的分析结果
系统崩溃、Wine 兼容性问题或 MT5 故障
软件保证。 本软件按"原样"提供,不附带任何明示或暗示的保证,包括但不限于适销性、特定用途适用性或不侵权的保证。完整条款请参阅 LICENSE。
第三方软件。 MT5-Quant 与 MetaTrader 5、Wine 及其他第三方软件交互。用户有责任遵守这些依赖项的所有适用许可和服务条款。MetaTrader 是 MetaQuotes Software Corp. 的商标。MT5-Quant 与 MetaQuotes 无关联,未获得其认可或赞助。
监管合规。 用户有责任确保其交易活动符合所在司法辖区的适用金融法规。在某些地区,自动交易可能受到限制或需要许可。
许可证
MIT
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
No tool schema history has been recorded yet.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Connect any MCP client to MetaTrader 4/5 to read prices, manage positions, and place trades.
Research-only MCP server: turn your AI into a quant research desk — backtests, no trades.
MCP server for OpenMM — exposes market data, account, trading, and strategy tools to AI agents
MCP server with quote and live cryptocurrency price tools, local and cloud-deployed transports.
21
Related MCP Servers
- FlicenseNot gradedqualityCmaintenanceConnects MCP clients to MetaTrader 5 MetaEditor on Linux via Wine, enabling automated MQL5 development workflows including code editing, compilation of EAs/indicators, and strategy backtesting.5-
- AlicenseAqualityCmaintenanceAn MCP server for operating headless MetaTrader 4 terminals remotely over SSH, enabling status checks, logs, screenshots, systemd control, and automated first-login.131MIT
- AlicenseNot gradedqualityBmaintenanceAn MCP server for operating headless MetaTrader 5 terminals — over SSH, from your agent.MIT
- AlicenseNot gradedqualityCmaintenanceA local-first MCP server that bridges AI coding agents with MetaTrader 5 for inspection, market data, MQL5 development, compiling, Strategy Tester review, workspace sync, logs, audit trails, demo trading, and carefully gated live trading.MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/masdevid/mt5-quant'
If you have feedback or need assistance with the MCP directory API, please join our Discord server