arXiv | https://arxiv.org/abs/2306.12964
GitHub | https://github.com/RL-MLDM/alphagen
知乎(作者中文解析,评论讨论) | https://zhuanlan.zhihu.com/p/633150112
东方研报 | https://mp.weixin.qq.com/s/p0YeY3sNBflkpQZ9ZnZzuQ
中金研报 | https://mp.weixin.qq.com/s/iUQYXIE6jy7nsri8PJmHZA
摘要:
在量化交易领域,通常的做法是将原始的历史股票数据转化为市场趋势的指示信号,即alpha因子。公式形式的alpha因子更可解释,因此广受风险敏感的从业者的青睐。在实践中,为获得更好的预测精度,一组公式化因子通常一起使用,因此需要找到能协同工作的公式化因子集合。**然而,传统的因子生成方法都是逐个挖掘的,而忽略了这些因子在下游应用需要集成的问题。**在本文中,我们提出了一种新的协同因子集合挖掘框架,直接使用下游集成模型的性能来优化一个基于强化学习的因子生成器。在真实股市数据上的实验评估和模拟投资都证明了该股价预测框架的有效性和效率。
一、引言
1.1 研究动机
-
已有的因子挖掘方法只关注单个因子的性能,而现实的量化交易中往往同时使用多个因子。
- 一些已有工作认为约束因子间的相互IC(Pearson相关系数)可以提高多因子集成的表现,但我们的实验表明这种假设并不完善;
- 我们在挖掘阶段即挖掘多因子集合,将多因子集成的IC作为优化目标。
-
传统的因子挖掘方法大多基于遗传规划(Genetic Programming,GP)算法,这类方法具有收敛速度慢、超参数难以调优等局限。
- 由于维护和突变庞大种群的复杂性,GP算法的可扩展性往往很差;
- 我们利用强化学习的强大探索能力来更好地探索公式因子的广阔搜索空间。
1.2 主要贡献
- 提出了一种新的优化方案,产生一组更适合下游任务的因子,而不管组合模型采用何种实际形式的优化方案。
- 引入了一个基于策略梯度算法的搜索公式化因子的新框架,以利用强化学习的强大探索能力。
- 提出了一系列实验结果,证明了我们提出的框架的有效性。还进行了其他实验和案例研究,以说明为什么在考虑alpha集的综合性能时,常用的基于相互IC的技术可能无法像预期的那样工作。
二、公式化因子
设股票市场在 T T T 个交易日中有 n n n 只股票,每只股票有 m m m 维的特征数据。在每个交易日 t ∈ { 1 , 2 , … , T } t\in\{1,2,…,T\} t∈{ 1,2,…,T},股票 i i i 对应一个特征向量 x t i ∈ R m τ x_{ti}\in \R^{m\tau} xti∈Rmτ,由最近 τ \tau τ 日的 m m m 维特征组成。
在本文的设定中,我们将每个因子定义为一个与 t t t 和 i i i 都无关的因子函数 f : R m τ ↦ R f:\R^{m\tau}↦\R f:Rmτ↦R,作用于每个交易日所有股票的特征数据 X t ∈ R n × m τ X_t\in \R^{n\times m\tau} Xt∈Rn×mτ,得到一个因子值的时间序列 z t = f ( X t ) ∈ R n z_t=f(X_t)\in \R^n zt=f(Xt)∈Rn。
公式化因子即是一个数学表达式形式的 f f f,由以下的几种元素组成,每个元素都为一个token:
- **算子:**分为截面(CS)和时序(TS)算子,再根据需要的特征数分为一元(U)和二元(B)算子
算子 | 类型 | 描述 |
---|---|---|
Abs ( x ) \text{Abs}(x) Abs(x) | CS-U | 绝对值 |
Log ( x ) \text{Log}(x) Log(x) | CS-U | 自然对数 |
x + y , x − y , x ∗ y , x / y x+y,x-y,x*y,x/y x+y,x−y,x∗y,x/y | CS-B | 四则运算 |
Greater ( x , y ) , Less ( x , y ) \text{Greater}(x,y),\text{Less}(x,y) Greater(x,y),Less(x,y) | CS-B | 两者之大/之小 |
Ref ( x , t ) \text{Ref}(x,t) Ref(x,t) | TS-U | t t t日前的值 |
Mean ( x , t ) , Med ( x , t ) , Sum ( x , t ) \text{Mean}(x,t),\text{Med}(x,t),\text{Sum}(x,t) Mean(x,t),Med(x,t) |