高频交易嵌套决策执行框架设计

简介

日频交易(如组合管理)与日内交易(如订单执行)是量化投资中的两大热点课题,通常被分开研究。

要获取日频与日内交易的联合表现,两者必须相互交互并联合进行回测。 为支持多层次的联合回测策略,需要相应的框架支持。现有公开的高频交易框架均未考虑多层次联合交易,这使得前述回测结果不够准确。

除回测外,不同层级策略的优化也非独立进行,而是会相互影响。 例如,最佳组合管理策略可能随订单执行表现而变化(当改进订单执行策略时,换手率更高的组合可能成为更优选择)。 要实现整体优异表现,必须考虑不同层级策略间的交互作用。

因此,构建新的多层次交易框架成为解决上述各类问题的必要方案,为此我们设计了考虑策略交互的嵌套决策执行框架。

../_images/framework.svg

框架设计如上图中间黄色部分所示。每个层级由``交易代理``(Trading Agent)和``执行环境``(Execution Env)组成。交易代理``包含自有数据处理模块(``信息提取器)、预测模块(预测模型)和决策生成器(决策生成器)。交易算法通过``决策生成器``基于``预测模块``输出的信号生成决策,并将决策传递至``执行环境``,后者返回执行结果。

交易算法的频率、决策内容和执行环境均可由用户自定义(如日内交易、日频交易、周频交易),且执行环境内部可嵌套更细粒度的交易算法与执行环境(即图中的子工作流,例如日频订单可通过日内拆单转化为更细粒度决策)。嵌套决策执行框架的灵活性使用户能轻松探索不同层级交易策略的组合效果,打破交易算法不同层级间的优化壁垒。

嵌套决策执行框架的优化可在`QlibRL <./rl/overall.html>`_支持下实现。了解更多QlibRL使用方式,请参阅API文档:RL API

示例

An example of a nested decision execution framework for high-frequency can be found here.

除了上述示例外,以下是Qlib中关于高频交易的其他相关工作。