交易中的神经网络:TEMPO 方法的实施结果·综合运用
EURUSD H1 上 RL 模型的实测表现
模型先在 EURUSD 2023 全年 H1 数据上用默认指标参数训练,随后直接切到 2024 年 1 月同参数历史做测试,以逼近实盘条件。状态编码器对次日的 1 小时步长预测,大体跟住了主方向,个别局部极值的时间和方向也对上了,但轨迹偏平滑,像贴在价格上的趋势线。 第二阶段看参与者(policy)在策略测试器的成绩:2024 年 1 月共 68 笔交易,胜率 50%,最大盈利 91.08、平均盈利 24.61,对比最大亏损 -69.85、平均亏损 -17.84,整月净盈利 23%。不过净值在余额线上下乱窜,存款负载一度逼近 100%,最大回撤超 20%,暴露出敞口过大的问题。 接着在未换训练集的前提下,额外训参与者并调编码器参数,结果反而恶化:交易数变少、胜率跌到 45%、整体盈利下滑、回撤超 25%。我倾向于认为,让编码器去对齐参与者与评论者目标时,后两者回传的误差梯度往编码器输出里塞了冲突噪声,破坏了原本输入到结果的干净映射,使编码器从数据过滤器变成噪声源,全链有效性都被拖垮。外汇与贵金属这类高杠杆品种,这种过拟合式优调带来的回撤放大风险极高,动手前建议在 MT5 策略测试器复跑同周期核对。
「TEMPO 在 MT5 实盘的落地门槛」
TEMPO 这套思路把时间序列先做分解再喂给生成式预训练变换器,核心是用提示词驱动预测,而不是传统回归头。MQL5 里我们复刻了它的分解与推理链路,虽受限于终端环境没法直接挂预训练大模型,但用本地轻量变换器跑通后,表征学习效率确实比直接 LSTM 高了一截。 想拿它做真实交易模型,先得面对一个硬成本:基变换器架构要喂足量历史 tick 或分钟级序列,样本量不够容易过拟合。我们计算过,单品种 3 年 M1 数据在普通 VPS 上预训练一次可能耗掉 20+ 小时,显存吃紧时还得降序列长度。 外汇与贵金属波动受事件驱动强,这类方法只倾向提升中低频趋势捕捉概率,不代表信号更稳。真要验证,开 MT5 把本文的分解模块接进 EA 回测,比空谈架构更有用。
◍ 随包附带的 Nine 个工程文件
这套 LSTM 优化方案不是只给思路,作者把整套训练与推理链路拆成了可直接编译运行的 MT5 工程。压缩包 MQL5.zip(1554.38 KB)里列了 9 个关键文件:Research.mq5 与 ResearchRealORL.mq5 负责样本采集,后者用 Real ORL 方法做样本去偏;Study.mq5、StudyEncoder.mq5 和 Study2.mq5 分别管模型训练、编码器训练和带编码器调参的参与者—评论者联合训练;Test.mq5 做模型测试;Trajectory.mqh 描述系统状态结构,NeuroNet.mqh 是建网类库,NeuroNet.cl 则是 OpenCL 核函数库。 想复现文中结果,先把 ZIP 解到 MT5 的 MQL5 目录,用 StudyEncoder.mq5 跑通编码器再切 Study2.mq5,否则网络权重初始化会读不到参数文件。外汇与贵金属行情受杠杆和跳空影响,这类神经网络预测仅提供概率倾向,实盘前务必在策略测试器用历史数据验证过拟合程度。 评论区有读者指出原文未承诺任何利润诱导,材料按原样提供;若你打算把 Test.mq5 接真实账户,建议先开模拟盘跑满一个完整财报季再谈仓位。