用 LLM 制定并微调交易策略:从零理解外汇 EA 的模型底座(基础篇)
🧠

用 LLM 制定并微调交易策略:从零理解外汇 EA 的模型底座(基础篇)

(1/2)· 想让大模型替你跑外汇策略,却卡在“训练完为何还要微调”?这篇先铺地基

含代码示例 第 1/2 篇
很多交易者以为用自己的数据训完一个语言模型就能直接下指令跑 EA,结果输出完全对不上交易逻辑。其实从预训练模型到能用的策略引擎,中间还差一道微调工序。本文先把这套路径和为什么非微调不可讲透,后面才动手写代码。

「把私有LLM塞进EA前的目录与定位」

这篇系列第5部分拆的是用LLM开发并测试交易策略的第一截,落点是微调而不是提示词工程。原文发布于2025年3月4日,MetaTrader 5语境下,截至发文页面对外显示阅读量1348、评论3条,作者Yuqiang Pan。 全篇结构已经排好:概述、大模型微调、制定交易策略、数据集创建、微调模型、测试、结论、参考。也就是说,这一节只是把路线铺开,真正动手改参数和跑回测在后面几节。 外汇与贵金属本身高杠杆、高波动,用LLM辅助生成的策略未经严格样本外验证前,实盘胜率倾向偏低,别急着挂真金白银。

◍ 从训练到落地的四步路径

上一篇文章把 GPU 训练大模型跑通了,但没碰策略制定和回测。训练出来的模型最终得拿来服务交易,所以这一篇起要逐步把语言模型接进外汇策略里实测,过程不简单,得拆步骤走。 整套流程预计要分几篇文章才能做完:先定交易策略;再按策略造数据集并微调模型(以 GPT2 为例),让输入输出贴合策略;接着做模型推理,融合策略产出 EA,推理阶段还要选框架并做 flash-attention、量化等优化;最后用 MT5 历史回测验 EA。 有人会问,自己数据都训过模型了为何还要微调?这篇就回答这事。除了微调,RAG 检索增强和 Agent 智能体也能用,但全塞一篇太长太乱,本文只做第一步和第二步,并给一个 GPT2 微调实例。外汇与贵金属杠杆高,回测通过也不代表实盘概率占优,任何步骤都要先在 MT5 策略测试器里验证。

把通用大模型改造成盯盘助手的几条现实路径

做价格行为分析的交易助手,未必需要从零训一个 Transformer。现阶段的 LLM 基本都基于带注意力机制的 Transformer,参数量大,从头训练几十亿 token 通常要集群跑几十小时到几天,对个人开发者基本不现实——除非你手头有多张 80G 显存卡且电费不计。 更务实的做法是在通用预训练模型上做下游微调,达到领域自适应。主流分三类:用标注对话集做的监督微调、用未标注文本继续预训练的无监督微调、以及先训一个奖励模型给多个输出排序再用 PPO/DPO 等强化学习对齐的 RLHF 类方法。 具体落地常用两条线。其一是全参数微调:把 8B 模型全量更新,大约要吃满 2 张 80G 显存(合计约 160G 多卡),普通散户开发者基本望而却步。其二是 PEFT 系列,只动少量参数。Adapter-Tuning 在 Transformer 里插一个「降维—非线性—升维+跳过连接」的小结构,原模型冻结;Prompt-Tuning 仅在输入前加连续嵌入前缀,只训前缀;Prefix-Tuning 用 MLP 编码前缀且不进 LLM 输入流;P-Tuning v2 把连续提示铺到每一层,仅微调 0.1%–3% 参数就能逼近全量微调。 LoRA 及其变体在量化交易圈更常用:冻结原权重,在解码层加低秩矩阵 A、B,显存门槛降约 3 倍,部署时还能把 A、B 合并进原权重不增推理延迟。AdaLoRA 按奇异值给不同层分配不同秩,靠近末尾的层秩更高;QLoRA 用 4 位 NormalFloat 量化预训练模型再反传梯度到 LoRA,单张 48GB GPU 可微调 65B 模型且不掉点。外汇与贵金属行情序列噪声大、跳空频繁,用这类方法做领域适配仍属高风险实验,结论仅代表「可能」改善胜率筛选。 下一节会直接给一个 GPT-2 全参数微调的可运行样例,你可以照着在本地把行情注释数据喂进去验证泛化边界。

「用均价差给 LLM 定买卖规则」

这里给大语言模型定了一条极简策略,先不碰 EA:从客户端取某货币对最近 20 个报价收盘价,算均值记为 A;再让 LLM 预测同期未来 40 个报价的开盘价,算均值记为 B。 判断只看 B 与 A 的大小——B 大于 A 倾向买入,B 小于 A 倾向卖出,两者相等或极接近就空仓。外汇与贵金属杠杆高、滑点大,这套规则只是策略原型,实盘触发前须在 MT5 用历史数据验证信号频率。 原文留了替换口子:把输入长度做成动态,预测总长设为 60 减输入长;或换波浪、鳄鱼、乌龟等逻辑,但模型输入输出要同步改。下一阶段才是建数据集做微调。

把策略回测前的脏活交给小布
策略草拟和数据集雏形这类重复劳动,小布盯盘的 AIGC 辅助已内置模板,打开对应品种页就能先跑一版初稿,你只校验边界条件。

常见问题

倾向可以,但受参数规模限制,更适合做规则明确的信号分类或文本式策略生成;外汇贵金属波动受宏观事件影响,高风险,模型输出仅作概率参考。
预训练模型学的是通用语言结构,没见过你的交易标签体系;微调是把输入输出的格式与你的策略约束对齐,否则推理阶段 EA 拿不到合规信号。
目前知识库侧的 AIGC 看板可载入外部策略描述辅助诊断,自有模型权重接入属进阶部署,建议关注后续版本;外汇贵金属交易本身高风险,任何模型信号都只是概率。
建议先用自然语言把进出场、止损、品种周期写清楚,再转成可用于微调的数据集;本文给出的 GPT2 例子就是从这个顺序起步的。
算力吃紧时 RAG 可能更轻,Agent 偏重推理链编排;本篇先覆盖微调,完整对比见《将您自己的 LLM 集成到 EA 中·实战篇》。