神经网络变得轻松(第二十六部分):强化学习(基础篇)
◍ 强化学习到底和之前玩的模型有什么不同
在 MT5 里做智能交易,多数人先碰的是监督学习和无监督聚类,但强化学习换了一套逻辑:智能体不直接拿「输入-输出」配对去拟合,而是在环境里不断试错,靠奖励信号调整策略。外汇与贵金属市场高杠杆、高波动,这种试错若直接上实盘代价极大,通常先在历史数据里跑模拟。 和前面系列研究过的模型比,关键差异在目标函数。监督学习追求预测值贴近标签,强化学习追求长期累积奖励最大化,中间允许短期亏损来换更优路径。这意味着在 EURUSD 的 M15 周期回测中, agent 可能在连续 30 根 K 线里故意不入场,只为等一个胜率更高的触发区。 本文后续会落到交叉熵方法的具体实现,但先明确一点:强化学习不是「更准的预测器」,而是「会权衡得失的决策者」。开 MT5 把历史中心数据拉到 2020–2022,先跑一遍监督模型 baseline,再对比同样窗口下 RL agent 的回撤曲线,你会直观看到两者调仓节奏的根本分叉。
「强化学习凭什么能进交易系统」
前几篇已经把有监督和无监督学习跑过一轮,这一节换赛道:强化学习(RL)。它的核心机制是试错,智能体在环境里不断行动、拿奖励或惩罚,再回头调权重,这和生物靠反馈学习新技能的路径基本同构。 把这套映射到交易上很自然——任何能稳定盈利的账户,背后都是一套可重复的策略,而策略本质就是「状态→动作→反馈」的循环。RL 不预先告诉标签,只给盈亏结果,让模型自己收敛出进场与退场规则,这对没有标准答案的外汇、贵金属行情尤其合适。 但要注意,RL 在 MT5 上跑出来的策略过拟合概率不低,杠杆品种的高波动会在训练集之外迅速吃掉样本内收益。开 MT5 用历史中心做walk-forward验证,比盯着一条回测曲线更有意义。
代理者、环境与延迟奖励的坑
强化学习里没有孤立的“模型”,只有代理者(agent)和环境(environment)持续互踢皮球。环境不断生成状态,代理者按自己的策略行动,环境按概率变,并回吐奖励——正或负。把它映射到盘面:你开仓那一刻的反馈可能偏正,但真正能结算盈亏的,是平仓之后的事。 关键点在延迟奖励。像下棋,每一步棋的局部好坏很难量化,真正管用的奖励只在将死对手时一次性给;交易同理,单笔操作的效用要等平仓才定型。这意味着奖励不挂在某个单独动作上,而挂在一串动作组成的片段上。模型训练目标就是在有限时段内把总奖励推到最大。 两个硬约束得心里有数。一是马尔可夫性:理论要求代理者每一步只看当前状态,历史不影响。实盘显然不满足,所以实操里要把当前状态定义成“含一段时间窗的事件 + 时间戳”,用近期数据代偿历史。二是过程有限性:无限过程的总奖励会发散,因此训练样本必须截在一个时间帧内,但又得长到有代表性,否则过拟合到训练期外就废了。 奖励分配不公是最容易把模型带沟里的。比如一笔盈利交易,漂亮入场后磨蹭离场只吃到鱼头,若把利润在开平两端平均拆,糟糕的平仓反而污名化了好入场,下次模型躲开这个形态就少赚一波;反过来垃圾入场靠运气反转盈利,模型记成“这形态能打”,后面连吃止损。模型是从多笔里均化统计的,但错误的奖励系统会系统性把训练推向歪路,外汇和贵金属这种高杠杆、高波动品种尤其经不起这种歪打正着。
◍ 代理者能改写环境,这是RL与另两类学习的分水岭
监督和无监督学习用的训练样本都是静态的:前者由“监督者”给初始状态配正确答案,后者只给一批状态让算法自己找内部结构。模型跑完也不会动原始样本一根毫毛。 强化学习手里没有传统意义的训练样本。它面对的是能生成当前状态的环境,代理者评估状态后出手行动,行动反过来拨动环境,环境再甩回一个奖励信号。这个闭环里,模型是能改变数据源的。 奖励看似像监督学习的参考响应,本质却不同:监督学习每态有唯一正解,RL只拿到对行动的反馈,既不知道奖励怎么算出来,也不知道它是极大、极小还是离极值多远。想摸清“参考”长啥样,得穷举该状态下所有行动。 更麻烦的是,下一步环境状态由前一步行动决定,而目标又是整段区间总报酬最大。要算准每态参考行动,需对全状态全行动做海量完整验算——计算量漫长且劳动密集,所以后续只能用启发式逼近最优策略。 三类方法差异可落为一句可验证描述:监督学近似参考值、无监督学数据结构、RL靠试错攒最大奖励;前两者模型不碰原始数据,RL的代理者能影响环境。外汇与贵金属市场若接这类框架,需先认清环境非稳态、回测过拟合风险极高。