
写在前面的话:强化学习(RL)由于其处理高维金融数据和解决复杂的序列决策问题的能力,已成为HFT的另一种有吸引力的方法。例如,分层强化学习(HRL)通过训练一个路由器从智能体池中选择一个子智能体来执行当前交易,在秒级HFT上表现出色。然而,现有的用于HFT的RL方法仍然存在一些缺陷,为了解决这些问题,本文提出了一种新颖的增强记忆上下文感知强化学习方法用于高频交易,即MacroHFT,实验表明,MacroHFT在分钟级交易任务上可以达到最先进的性能。
现有的 HFT 所用 RL 方法仍存在一些弊端:
- 标准的基于 RL 的交易智能体存在过拟合问题,无法依据金融背景有效调整策略;
- 由于市场条件变化迅速,单个智能体做出的投资决策通常片面且严重偏向一方,这或许会在极端市场中造成显著损失。
为处理这些问题,本文推出了一种创新的增强记忆上下文感知强化学习方式:MacroHFT,它包含两个训练阶段:第一阶段:根据各种金融指标(尤其是市场趋势和波动性)拆分市场数据,训练多种类型的子代智能体,其中每个智能体都有一个条件适配器,可按照市场条件调整其交易策略;第二阶段:训练一个超级智能体,将这些子智能体的决策进行混合,并输出一个持续盈利的元策略,以应对迅速的市场波动,还配备了记忆机制以提升决策能力。针对各种交易市场的众多实验表明,MacroHFT 在分钟级任务上能够达到前沿性能。
一、相关工作
1.1 传统金融方法
传统金融交易中广泛使用技术分析方法,基于过去的价格和成交量信息来预测未来市场状况。量化交易者设计了许多技术指标作为交易信号,用于指导交易执行。例如,Imbalance Volume(IV)用于衡量买单和卖单数量之间的差异,提供了短期市场方向的线索。移动平均收敛散度(MACD)是另一种常用的趋势跟踪动量指标,显示了资产价格的两条移动平均线之间的关系,反映了未来的市场趋势。然而,在非平稳市场(如加密货币市场)中,这些仅基于技术指标的传统金融方法往往会产生错误的交易信号,导致表现不佳,因此最近的研究对其进行了批评。
1.2 基于RL的方法
除了传统的金融方法,基于强化学习(RL)的交易方法最近在量化交易领域变得越来越有吸引力。除了直接应用标准的深度强化学习算法如Deep-Q网络(DQN)和近端策略优化(PPO),还使用了各种技术进行增强。例如,CDQNRP通过应用随机扰动来增加DQN训练的稳定性生成交易策略。CLSTM-PPO应用长短期记忆(LSTM)来增强PPO的状态表示,在高频股票交易中使用。DeepScalper使用回顾奖励和辅助任务来提高智能体的前瞻性和风险管理能力。此外,为了适应包含不同市场动态的长期交易,还应用了分层强化学习(HRL)结构。HRPM提出了一个分层框架来同时处理投资组合管理和订单执行。MetaTrader使用不同的专家策略训练多个策略,并根据当前市场情况选择最合适的策略进行投资组合管理。EarnHFT通过最优动作监督器训练低层智能体,并使用路由器进行智能体选择,在高频加密货币交易中实现稳定的表现。然而,现有的HRL方法存在过拟合问题,难以根据金融背景进行有效调整策略。其中MetaTrader和EarnHFT在每个时间戳仅选择一个个体智能体进行交易,通常导致单方面和高度偏向的决策执行。
二、预备知识
在本节中,我们将介绍与加密货币交易相关的基本金融定义,并详细解释我们所使用的层次化马尔可夫决策过程(MDP)结构,重点解决分钟级高频交易(HFT)的问题。
2.1 金融术语

在高频交易中,我们需要了解以下金融术语的定义:
- 限价单:市场参与者下达的订单,用于以指定价格买入或卖出特定数量的加密货币。限价单可以表示为 (𝑝𝑏, 𝑞𝑏),表示以价格 𝑝𝑏 买入数量为 𝑞𝑏 的限价单;或表示为 (𝑝𝑎, 𝑞𝑎),表示以价格 𝑝𝑎 卖出数量为 𝑞𝑎 的限价单。
- 限价订单簿(LOB):限价订单簿是描述当前市场微观结构的重要快照。它记录了同一时间戳下所有市场参与者的买入和卖出限价单的集合。限价订单簿可以表示为 𝑏𝑡 = {(𝑝𝑏𝑖, 𝑞𝑏𝑖), (𝑝𝑎𝑖, 𝑞𝑎𝑖)},其中 𝑝𝑏𝑖 和 𝑝𝑎𝑖 分别表示第 𝑖 级买入和卖出价格,𝑞𝑏𝑖 和 𝑞𝑎𝑖 是对应的交易数量。
- 开高低收成交量(OHLCV):这是已执行市场订单的汇总信息。在时间戳 𝑡,OHLCV 信息可以表示为 𝑥𝑡 = (𝑝𝑜, 𝑝ℎ, 𝑝𝑙, 𝑝𝑐, 𝑣),其中 𝑝𝑜, 𝑝ℎ, 𝑝𝑙, 𝑝𝑐 分别表示开盘价、最高价、最低价和收盘价,𝑣 表示这些市场订单的总成交量。
- 技术指标:技术指标是通过使用公式从原始的限价订单簿和OHLCV信息中计算出来的特征,可以揭示金融市场的潜在模式。我们表示时间 𝑡 的技术指标集为 𝑦𝑡 = 𝜙 (𝑥𝑡, 𝑏𝑡, …, 𝑥𝑡 −ℎ+1, 𝑏𝑡 −ℎ+1),其中 ℎ 是回溯窗口的长度,𝜙 是指标计算器。我们在 MacroHFT 中使用的技术指标的详细计算公式在附录 A 中提供。
- 仓位:交易者在某一时间 𝑡 持有的加密货币数量,表示为 𝑃𝑡。在我们的交易方法中,我们只允许持有多头仓位,即 𝑃𝑡 ≥ 0。
- 净值:交易者持有的现金和加密货币的市场价值之和,可以计算为 𝑉𝑡 = 𝑉𝑐𝑡 + 𝑃𝑡,其中 𝑉𝑐𝑡 表示现金价值,𝑃𝑡 表示持有的加密货币数量。
2.2 层次化马尔可夫决策过程(MDP)
MacroHFT框架是一种用于在加密货币市场进行分钟级高频交易的方法,它基于层次化马尔可夫决策过程(MDP)的架构。这个架构由两个层次组成:高层的超智能体(hyper-agent)和低层的子智能体(sub-agents)。它的目标是解决在不同市场动态下进行高频交易的问题。
状态表示
在MacroHFT框架中,市场状态在每个时间戳(时间点)被表示为一组信息。这些信息包括:LOB(限价订单簿)信息,描述当前市场的细节;OHLCV(开高低收成交量)信息,汇总已执行的市场订单的数据;技术指标,通过对LOB和OHLCV信息进行计算得出的特征;以及仓位,表示交易者在某个时间点持有的加密货币数量。将这些信息组合在一起,就可以表示市场的状态。
动作空间
在每个时间戳,智能体可以选择三种动作之一:买入、卖出或保持。买入动作表示以当前市场价格购买一定数量的加密货币,卖出动作表示以当前市场价格卖出一定数量的加密货币,保持动作表示不进行任何交易操作。
奖励函数
为了指导智能体在交易过程中做出合理的决策,定义了一个奖励函数。该奖励函数的目标是最大化交易者的净值变化。具体而言,奖励函数通过计算时间 t+1 的净值与时间 t 的净值之差来确定奖励值。这样,智能体在交易过程中会受到奖励或惩罚,以鼓励其采取能够提高净值的行动。
三、本文工作

MacroHFT旨在通过利用市场趋势和波动性等宏观市场信息,来增强高频交易的决策能力。具体来说,MacroHFT的工作流程分为两个阶段:首先,我们在不同市场动态下训练多个子智能体;然后,我们训练一个超智能体来整合这些子智能体的决策,形成稳定且能快速响应市场波动的交易策略。
3.1 市场分解
第一阶段,我们根据市场趋势和波动性指标,将加密货币市场分解为不同类别。我们使用以下步骤来实现这一点:
- 市场趋势分类:我们使用技术指标(例如移动平均线)来识别市场趋势,并将市场分为上升、下降和横盘三类。
- 市场波动性分类:我们通过计算历史价格数据的标准差来衡量市场波动性,并将市场分为高波动性和低波动性两类。
通过结合市场趋势和波动性,我们将市场分为六种不同的动态类别。然后,我们为每种市场动态训练一个子智能体,每个子智能体拥有一个条件适配器,可以根据市场条件调整其交易策略。
3.2 低级策略优化与条件适应
尽管之前的研究表明,基于价值的强化学习算法(如深度Q网络)可以在高频加密货币交易中表现出色,但这些算法往往面临过拟合问题。具体来说,策略网络可能对某些特征过于敏感,而忽略了近期的市场动态,导致利润损失。此外,由于高频交易的最佳策略依赖于交易者的当前持仓状态,现有算法通常将持仓信息与状态拼接在一起,但这种做法可能不足以影响决策。
为了解决这些问题,我们提出了一种带有条件适应的低级策略优化方法。在子智能体训练中,我们使用双深度Q网络(DDQN)和对抗网络架构,并将上下文特征和当前持仓作为额外的条件输入。通过独立的全连接层提取单一和上下文特征的语义向量,并通过位置嵌入层处理持仓信息,我们获得了结合上下文特征和持仓信息的条件表示。
受Diffusion Transformer自适应层设计的启发,我们通过条件特征调整单一状态表示,使其适应不同的市场条件。调整后的状态用于DDQN的价值网络和优势网络,以估计每个动作的Q值。网络参数通过最小化时间差分误差和一个最优值监督器进行优化。最终,我们在六个训练子集上训练了六个子智能体,由一个超智能体整合形成最终的交易策略。
3.3 使用记忆增强的元策略优化
我们在学会了多种应对不同市场情况的策略后,进一步训练了一个超级智能体(hyper-agent),它能够综合子智能体(sub-agent)的决策,输出一个灵活应对市场变化且持续盈利的高层策略。具体来说,我们有6个优化过的子智能体,每个都有一个Q值估算器。超级智能体会综合这些子智能体的决策,生成一个权重向量,将子智能体的决策加权组合成一个元策略函数。这可以充分利用不同子智能体的意见,防止策略过于单一。我们还引入了一个条件适配器,根据前期市场的斜率和波动性指标来确定子智能体的优先级,增强决策能力。
然而,在实际操作中,我们遇到了一些问题。由于加密货币市场变化快,相似状态的奖励信号可能差异很大,导致超级智能体难以学习稳定的策略。极端市场波动虽然罕见但影响巨大,标准的经验回放机制无法应对这种情况。为了解决这些问题,我们提出了一种增强记忆方法,利用相关经验来学习更稳健和广泛适用的元策略。
我们构建了一个基于表格的记忆模块,具有有限的存储容量,包括三个部分:键向量、状态和动作对、以及值。当遇到新的经验和其奖励时,我们计算其对应的键向量,然后将这个经验添加到记忆模块中。当模块达到最大容量时,会删除最早添加的经验,保持最新的经验以提供最相关的知识。在查找操作中,我们检索存储在记忆中最相似的几个经验,使用L2距离衡量当前隐藏状态向量与存储键的相似性,然后计算这些相似经验的权重,并将它们的值加权组合起来。这样,我们就可以利用这个检索到的记忆值作为超级智能体的动作值估计的额外目标。修改后的损失函数会考虑这个额外的目标,以增强超级智能体在相似状态下的Q值估计一致性,并让智能体能够快速适应市场的突然变化。
四、实验分析
4.1 实验设置
实验在以下四个加密货币市场上进行:Bitcoin(BTC)、Ethereum(ETH)、Ripple(XRP)和Litecoin(LTC)。这些市场具有高波动性和不同的市场动态,能够充分测试MacroHFT的适应性和鲁棒性。实验采用分钟级交易任务,数据集涵盖了过去一年的市场数据。为了评估MacroHFT的性能,本文与多种现有的最先进基线方法进行了比较,包括传统的技术分析方法和几种RL方法,如DQN和PPO。
4.2 实验分析

总的来说:MacroHFT方法展示了其在高频交易中的显著优势。以下是实验部分的主要结论:
- 显著的高收益率:MacroHFT在所有测试市场上均实现了显著高于基线方法的累计收益率。特别是在Bitcoin和Ethereum市场,MacroHFT的收益率几乎是其他方法的两倍。这表明MacroHFT在高波动性市场中能够稳定盈利,具有卓越的收益能力。
- 有效的风险控制:MacroHFT的最大回撤显著低于其他基线方法,尤其是在Ripple和Litecoin市场。这表明MacroHFT不仅能够实现高收益,还能有效控制风险,避免在极端市场条件下出现重大损失。低回撤率是衡量交易策略稳健性的重要指标,MacroHFT在这方面表现出色。
- 策略的稳定性和适应性:MacroHFT在不同市场动态下均能保持较低的收益率波动,显示出其在快速变化的市场条件下的适应性和鲁棒性。通过记忆增强机制和条件适配器,MacroHFT能够迅速调整策略,以应对不同的市场动态,从而保持稳定的盈利能力。


五、总结展望
本文提出的MacroHFT方法通过市场分解、子代理训练和超代理的记忆增强,显著提高了高频交易策略的适应性和稳定性。实验结果表明,MacroHFT在多个市场上均表现出色,能够实现高收益率并有效控制风险。未来的研究可以在以下几个方面进行扩展:首先,可以研究MacroHFT在多个市场联合交易中的表现,进一步提高策略的多样性和鲁棒性;其次,可以将MacroHFT应用于实时交易系统,验证其在实际交易环境中的性能;最后,可以将MacroHFT方法扩展到其他高频交易市场,如股票和外汇市场,评估其通用性和适应性。通过这些扩展,MacroHFT有望在更广泛的金融市场中发挥重要作用,推动高频交易策略的发展。
源码 | https://github.com/alexyu2013/MacroHFT
本文内容仅仅是技术探讨和学习,并不构成任何投资建议。
Be First to Comment