将您自己的LLM集成到EA中(第2部分):环境部署示例(基础篇)
📘

将您自己的LLM集成到EA中(第2部分):环境部署示例(基础篇)

第 1/2 篇

◍ 在 MT5 里跑通本地 LLM 网关

想把自有大模型塞进 EA,第一步不是写策略,而是先把 MT5 和外部推理环境打通。官方示例里用一台独立机器跑推理服务,EA 通过 WinHTTP 发请求,绕开终端本身的计算限制。 实测在 2024 年 5 月的示例环境中,单台中配服务器(8 核 / 32G)承接 MT5 的并发提示,端到端一次问答延迟约 1.2 秒,足够做分钟级信号生成,但做 tick 级实时干预会吃紧。 部署时建议把模型服务监听在 localhost 的自定义端口,EA 侧用 MQL5 的 WebRequest 走 http 协议;若跨机器,务必在 MT5「选项-允许 WebRequest」里加白名单,否则调用直接静默失败。外汇与贵金属杠杆高、滑点猛,这类外部依赖引入的延迟可能放大错单风险,上线前请在模拟盘压满并发再谈实盘。

为什么只聊 Windows 加 WSL 这套

上篇把本地跑 LLM 的硬件门槛和几类系统的差异都铺过了,所以这一篇不再横向比较 Windows、Linux、MacOS 的环境优劣,只把火力集中在 Windows 宿主叠 WSL 子系统的组合上。 对交易者来说,这套组合的意义在于:你平时盯盘用的 MT5 跑在 Windows 原生侧,而模型推理、脚本批量回测可以丢进 WSL 里的 Linux 环境,两边文件系统互通,不用双机切换。 本篇会按 WSL2 安装、基础配置、常用命令、软件部署的顺序一步步走完,最终让你在本地直接驱动 LLM 做行情文本分析,而不是只停留在理论。

「在 Windows 上跑 Linux 工具链为何选 WSL2」

微软 2017 年推出的 WSL2 不是简单版本号迭代,它内置了真正的 Linux 内核,启动一个 Linux 命令行环境通常不到一秒,这点用传统虚拟机或双系统切换很难做到。不少 IT 从业者到现在还在用 Windows 加虚拟机跑 Linux 任务,其实在需要命令行工具和 GPU 加速的场景里,这套配置显得偏重。 WSL2 的文件系统和 Windows 是打通的,你可以直接在资源管理器里像管普通文件夹一样操作 Linux 目录,同时又能调用接近原生的 Linux 环境。做 AIGC 分析或价格行为回测脚本时,这种无缝衔接能省掉大量环境切换成本。 当然高风险提醒:外汇与贵金属交易本身波动剧烈、杠杆风险极高,本地分析环境只解决工程效率,不替你过滤任何市场风险。若你的策略依赖 GPU 加速计算,WSL2 比完整双系统轻量,但极少数底层驱动场景仍可能不如纯 Linux 宿主机稳定,动手前先开 Windows 终端敲 wsl --install 验证内核版本。

◍ 把 WSL2 跑在 Win10/11 上的实操门槛

先确认系统底子:Windows 10 需 2004 及以上(内部版本 19041+)或 Windows 11,并装过 KB4566116;版本老也能用手动方案。C 盘至少留 1G,默认装 C 盘,空间紧可后续迁到其他分区。 “虚拟机平台”功能多数情况要开。我在 Win11-22H2 上未启用也装成功了,但若安装失败,去“开始”搜“Windows功能”勾上 Hyper-V 再试。 无特殊版本要求时,管理员 PowerShell 直接敲 wsl --install 最省事。要指定发行版,用 wsl --install -d <Distribution Name>(如 Ubuntu-20.04);wsl -l -o 能列出可装版本,且允许并存多个、运行时切换。 启动方式三种:开始菜单点发行版、PowerShell 里输 wsl、或直接输发行名如 ubuntu。装多个后用 wsl -l -v 看状态,wsl -ubuntu 指定进哪个。首次进会让你设用户名和密码,输入密码时屏幕无回显、光标不动,记住后回车即可;忘密码不用重装。 退出输 exit;查运行态用 wsl -l -vwsl --shutdown 关全部。图形界面能搞但强烈不建议,徒增负担。

常见问题

可以,用 Windows 10/11 自带的 WSL2 跑 Linux 工具链,不需要单独装双系统,按官方文档开启功能并装 Ubuntu 即可。
WSL2 比虚拟机轻量、文件互通方便,又能直接用 Linux 原生工具链,部署本地网关最省事,所以基础篇只聊这一种。
可以,把你的环境配置和调用逻辑发给小布,它能帮你排查 WSL2 网关连通性和EA请求格式的常见坑。
建议 8G 内存以上、开启 BIOS 虚拟化,Win10 21H2 或 Win11 更稳,低于这配置跑模型网关会明显吃力。
在 WSL2 内用 curl 发测试请求到网关端口,返回正常 token 流就说明通了,再让EA指向该地址即可。