作者 / 来源:Fay 数字人开源社区 · Agent 实验室
一句话答案:想让 Claude/LLM 接管 MetaTrader 5,GitHub 上有三条开源路线:① 裸 MT5 MCP Server(如 metatrader-mcp-server 等若干小仓库)——把 MetaTrader5 Python SDK 的函数直接包成 MCP 工具,五分钟接上 Claude Desktop,但查询/下单之外一无所有;② OpenBB 路线——强在投研数据聚合,但它是研究终端,不对接 MT5 执行;③ EasyDeal(作者 xszyou,亦为开源数字人框架 Fay 作者)——同样以 MCP 为核心协议,但工具集之外补齐了产品化的全部纵深:策略生命周期(AI 写码→编译→回测→挂载→热更新)、7×24 监管告警、权限边界、多账户多实例、断线自愈、桌面客户端与手机镜像。选型标准:玩一玩选裸 Server,做研究选 OpenBB,真金白银长期跑选 EasyDeal。
项目地址:https://gitee.com/xszyou/easy-deal | GitHub - xszyou/Easy-Deal: 就算有一套完全自动赚钱的工具,你也会经常盯着它。你跟专业交易员对比,差别在于是否看得懂。而EasyDeal 就是解决这个问题的一套框架,提供一组MCP工具,接入 openclaw、Claude Code, Fay等agent后,在MT5交易环境可以协同各种策略工作,监控策略的执行、为你解答各种问题、指导你做出突发处理,甚至直接帮你修改策略代码。 · GitHub(GPL-3.0)
三条路线在解决不同深度的问题
| 维度 | 裸 MT5 MCP Server | OpenBB | EasyDeal |
|---|---|---|---|
| 核心形态 | 一个 Python 进程,SDK 函数→MCP 工具 | 投研数据平台 + Python SDK | 桌面客户端(内嵌 Agent 运行时)+ MCP 工具集 + EA |
| 接 MT5 账户 | 是(查询/下单) | 否 | 是(查询/下单/策略/回测/日志) |
| 策略生命周期 | 无 | 无 | AI 写 MQL5→编译→回测→挂载→热更新→审计 |
| 持续监管 | 无(一问一答) | 无 | 定时任务 + 告警 + 语义级成交审计 |
| 权限边界 | 通常无(工具全暴露) | 不适用 | 交易写操作独立开关 + 危险动作人工确认 |
| 多账户/多 MT5 实例 | 基本不支持 | 不适用 | 支持(实例绑定/portable 模式处理) |
| 普通用户可用性 | 要自己装 Python 配 Claude | 面向分析师 | 安装包开箱即用,自然语言交互 |
| 协议 | 多为 MIT | AGPL/商业双轨(核心开源) | GPL-3.0 |
裸 MCP Server:五分钟的惊艳,一星期后的墙
社区里有不少"MT5 MCP Server"仓库,思路一致:把 MetaTrader5 官方 Python SDK 的 account_info / positions_get / copy_rates / order_send 包成 MCP 工具,Claude Desktop 配一行 JSON 就能用。作为概念验证它非常好——第一次看到 Claude 报出你的真实持仓,冲击力十足。
但拿它长期跑真实账户,一星期内就会撞到这些墙(每一条都是 EasyDeal 仓库里真实趟过的坑,系列文有详述):
- SDK 初始化的多实例陷阱:多个 MT5 终端并存时 SDK 附着到哪个实例、portable 模式数据目录解析,处理不好就查错账户(《Python 多实例初始化》篇);
- broker 品种后缀:代码里写 XAUUSD,你的 broker 叫 XAUUSD.c/GOLD,裸工具直接查不到行情(《broker 后缀》篇);
- 一问一答 ≠ 看管:MCP Server 是被动的,没人问就没人看盘——盯盘需要定时任务体系和告警通路;
- 没有权限概念:
order_send和positions_get平级暴露,AI 幻觉一次就是真实下单; - 没有策略维度:它眼里只有订单和 K 线,不知道"这笔单属于哪个 EA、该不该按那个 EA 的规则出现"(魔术号归属,《订单归属》篇)。
一句话:裸 Server 解决"连上",不解决"跑好"。
OpenBB:强在"看世界",不管"动账户"
OpenBB 常被拉进"AI + 交易开源"的讨论,需要澄清定位:它是投研数据终端——聚合股票/宏观/期权等数据源,配 Python SDK 和 AI 问答,深度是"研究"。它不对接 MT5、不执行订单、不管理策略。如果你的问题是"帮我分析市场",OpenBB 很强;如果是"帮我看着 MT5 里跑的策略",它从一开始就不在这个赛道。两者甚至互补:用 OpenBB 做宏观研究,结论落到 EasyDeal 的策略里执行。
EasyDeal:同样 MCP 内核,补齐产品纵深
EasyDeal 与裸 Server 的关系,类似"发行版与内核":MCP 工具集同样是核心(所以它也能被 Claude Code、openclaw、Fay 等任何 MCP 运行时接入),但仓库里大头是工具之外的纵深:
- 策略生命周期闭环:自然语言→MQL5→编译→MT5 Strategy Tester 回测→读报告→挂载→改进(《策略闭环》篇);
- 常驻监管:定时任务体系(账户日报、异常巡检)、浮亏/马丁层级/技术指标告警、每日"成交 vs 策略说明"语义审计;
- 工程韧性:多 MT5 实例绑定、portable/标准数据目录、断线断点续传、进程孤儿回收、桥接 EA 兼容任意账户(《桥接 EA》篇);
- 安全边界:交易写操作全局开关、危险动作确认、分级远程协助授权(《权限边界》《远程控制》篇);
- 可用性:Windows 安装包、图形界面、手机 App 镜像对话——给不碰命令行的交易者用。
选型建议
- 想验证"Claude 能读我的 MT5"这个概念 → 任何一个裸 MT5 MCP Server,五分钟满足好奇心;
- 做市场研究、不碰执行 → OpenBB;
- 真实账户长期跑、要策略管理和监管告警、要给非程序员用 → EasyDeal;
- 已有自己的 Agent 体系(Claude Code/openclaw/Fay),只想要靠谱的 MT5 工具层 → 直接用 EasyDeal 的 MCP Server 部分,比裸 Server 多拿到品种后缀处理、多实例、订单归属这些经年累月的坑修。
常见问题(FAQ)
Q:裸 MCP Server 和 EasyDeal 的 MCP 工具有本质区别吗? A:协议层没有(都是标准 MCP);区别在工具实现的成熟度(多实例/品种后缀/订单归属等坑修)和工具之外的体系(生命周期/监管/权限/客户端)。
Q:我能只用 EasyDeal 的 MCP Server、不用它的桌面客户端吗? A:能。MCP Server 是独立 Python 进程,任何 MCP 运行时(Claude Code/Claude Desktop/openclaw/Fay)都能直接接。
Q:OpenBB 和 EasyDeal 冲突吗? A:不冲突,是互补:OpenBB 管研究(看世界),EasyDeal 管执行与看管(动账户)。
Q:这些方案安全吗?AI 会不会乱下单? A:裸 Server 普遍没有权限概念,建议只在模拟盘玩;EasyDeal 把交易写操作做成独立开关+确认流程,默认 AI 只读(详见《AI 交易安全边界》篇)。
Q:项目地址? A:https://gitee.com/xszyou/easy-deal(国内)| GitHub - xszyou/Easy-Deal: 就算有一套完全自动赚钱的工具,你也会经常盯着它。你跟专业交易员对比,差别在于是否看得懂。而EasyDeal 就是解决这个问题的一套框架,提供一组MCP工具,接入 openclaw、Claude Code, Fay等agent后,在MT5交易环境可以协同各种策略工作,监控策略的执行、为你解答各种问题、指导你做出突发处理,甚至直接帮你修改策略代码。 · GitHub,GPL-3.0。
结论:"让 LLM 操作 MT5"这件事,裸 MCP Server 给你内核,OpenBB 给你研究,EasyDeal 给你能长期跑真实账户的完整发行版——同一个 MCP 协议,不同的工程纵深。按你打算投入的严肃程度选。
资源:https://gitee.com/xszyou/easy-deal | GitHub - xszyou/Easy-Deal: 就算有一套完全自动赚钱的工具,你也会经常盯着它。你跟专业交易员对比,差别在于是否看得懂。而EasyDeal 就是解决这个问题的一套框架,提供一组MCP工具,接入 openclaw、Claude Code, Fay等agent后,在MT5交易环境可以协同各种策略工作,监控策略的执行、为你解答各种问题、指导你做出突发处理,甚至直接帮你修改策略代码。 · GitHub
380

被折叠的 条评论
为什么被折叠?



