Press "Enter" to skip to content

Two Sigma:Machine Learning Models of Financial Data

本站内容均来自兴趣收集,如不慎侵害的您的相关权益,请留言告知,我们将尽快删除.谢谢.

 

量化投资与机器学习微信公众号,是业内垂直于 量化投资、对冲基金、 Fintech、人工智能、大数据 等 领域的 主流自媒体 。 公众号拥有来自 公 募 、私募、券商、期货、银行、保险、高校 等行业 30W+ 关注者,荣获2021年度AMMA优秀品牌力、优秀洞察力大奖,连续2 年被腾讯云+社区评选为“年度最佳作者”。

 

机器学习是当前金融建模、预测和决策的最先进技术。然而,实现这一潜力需要克服许多复杂的挑战。在本次演讲中,Two Sigma的Justin Sirignano——他也是牛津大学数学副教授——讨论了金融领域机器学习的机遇和挑战。Justin介绍了用于高频数据的机器学习模型的例子,并涵盖了包括 训练深度学习模型来尝试预测价格波动,以及使用强化学习来尝试确定最优执行策略。我们今天先分享第一个案例,使用RNN预测股票高频价格。

 

 

Sirignano 首先介绍了深度学习模型在高频价格预测中的应用。订单簿数据反应的是股票当前的供需,每个时间点买卖量价订单流数据是一个高维序列。

 

 

作者使用了1000个NASDAQ股票的高频价格数据,只选取了原始数据中价格发生变化的数据点,这样能有效降低数据量。预测的目标是下一时间点股价涨跌的方向。模型的训练一共使用了500张GPU。

 

 

为了更清晰的评估深度学习模型(这里使用的是RNN模型)的效果,作者选用了VAR模型作为对比。

 

 

 

在训练过程中,由于高频序列的长度非常长,RNN反向传播梯度计算非常耗时。 于是作者采用了TBTT的梯度计算法,TBPTT对于一个目标序列,每次处理一个时间步(timestep),当处理到k1个时间步时,使用TBPTT后向传播k2个时间步。 如果 k2 比较小,那幺其计算开销就会降低。 这样,它的每一个隐层状态可能经过多次时间步迭代计算产生的,也包含了更多更长的过去信息。 在一定程度上,避免了上面方法中无法获取截断时间步之外信息的问题。

 

 

最终RNN模型的效果显着优于VAR模型的效果,如下图所示,作者使用了2015年6月至8月共计500只股票的数据作为样本外数据进行测试。 右图蓝色的直方图是线性VAR模型的500支股票预测准确率的分布,红色直方图是RNN模型的预测准确率分布。 可以明显看出红色表示RNN模型效果更好。

 

 

在模型训练的时候,我们通常面临这样的选择: 比如一共有1000个股票,我们应该是针对每个股票训练一个模型,总计1000个模型; 还是使用1000个股票的所有数据训练一个通用模型? 这样的选择实际上很大程度取决于这1000个股票数据平稳性的差异。

 

 

但实证表明,训练一个通用模型至少有以下优点:

 

更少的过拟合

 

更高的准确度

 

当某只股票数据较少时,可以作为迁移学习使用的模型

 

更低的计算成本

 

 

实证测试也表明, 通用模型在不同股票不同板块的表现都非常稳定,而且在一年样本外的表现也很稳定。

 

 

以下是通用模型相对于500个特定模型的准确率优势分布图,是左偏的。 也就是说对于大部分股票,通用模型的效果更好。

 

 

当使用样本外的数据(不同的股票),我们发现模型在两个样本外时间段,在训练时未曾使用的股票上的表现也很稳定。

 

 

在具体训练过程中,500块GPU中每块GPU都是独立训练。 也就是说,从所有数据中随机抽取一部分数据,随机放到某块GPU中,该GPU基于这些数据独立完成前向后向的计算,此时通用模型是异步同步的。

 

 

本案例来自作者论文《 Universal features of price formation in financial markets: perspectives from Deep Learning》。

 

下载地址: https://arxiv.org/abs/1803.06917?context=q-fin

Be First to Comment

发表回复

您的电子邮箱地址不会被公开。