智能算法深度学习可以用于量化投资吗

导读:深度学习在图像识别和语音识别领域已经取得重大成就,但是,它在金融投资领域的效果还并没有得到广泛验证,所谓“深度学习黑箱”,到底有多深多黑,本文做了一些不错的研究工作。

文中缩写:

DBN=深度信念网络

LSTM=长短期记忆网络

MLP=多层感知器

RBM=受限玻尔兹曼机

ReLU=修正线性单元

CNN=卷积神经网络

一、限价委托单薄模型(LimitOrderBookModeling)

1.Sirignano()提出一种预测限价委托单薄变化的方法。他开发了一个「空间神经网络(spatialneuralnetwork)」,该网络可以利用局部空间结构的优势,比标准的神经网络更具可解释性、也更具计算效率。他模拟了在下一状态变化时最好的出价和要价。

架构:每个神经网络有4层。标准的神经网络每个隐藏层有个神经元,而该空间神经网络有50个。他在隐藏层神经元上使用双曲正切激活函数。

训练:他在年至年的支股票的委托单薄上训练并测试了该网络(每支股票有一个单独的模型)。他使用了来自纳斯达克的LevelIII限价委托单薄数据,这些数据有着纳秒级别的十进制精度。训练包括了50TB的数据,并且使用了50个GPU组成的集群。他总结了个特征:现价委托单薄在首个50非零买入和卖出(bid/ask)水平的价格和大小。他使用dropout防止过拟合,并在每个隐藏层之间使用批规范化(batchnormalization)来防止内部的协变量转变(covariateshift)。最后,使用RMSProp算法完成训练。RMSProp类似于带有动量的随机梯度下降,但它通过一个过去梯度的移动平均(runningaverage)对梯度进行规范化。他使用了一个自适应学习速率——在任何时候,当训练错误率随着训练时间增加时,这个学习速率就会按一定的常数因子下降。他使用一个被一个验证集强加的提前停止(earlystopping)来减少过拟合。在训练时为了减少过拟合,他也用了一个l^2惩罚机制。

结果:他的结果显示限价委托单薄展现出了一定程度的局部空间结构。他能提前1秒预测委托单薄,也能预测下一次买入/卖出变化的时候。这一空间神经网络超过了标准的神经网络和没有线性特征的逻辑回归。这两种神经网络都比逻辑回归的错误率低10%。

二、基于价格的分类模型

1.Dixon等人()使用一个深度神经网络预测43种大宗商品和外汇期货在接下来5分钟的价格变化。

架构:他们的输入层有个神经元,输入由滞后的价格差别和合同间的协动构成的特征。网络中有5层学习到的全连接层。4个隐藏层中的第一层有个神经元,而且后面的每层逐次减少个神经元。输出层有个神经元(每一类{-1,0,1}对应3个神经元,乘以43个合同)。

训练:他们使用标准的带有随机梯度下降的反向传播方法进行训练。他们通过使用mini-batching(依次在数个训练样本上计算梯度,而非单个样本)加速训练过程。他们使用一个英特尔XeonPhi协处理器进行训练,而非使用英伟达GPU。

结果:总体上,他们报告在三类分类上实现了42%的准确率。他们做了一些前行训练(walk-forwardtraining),而非传统的回测(backtest)。他们的箱形图(boxplot)展示了一些来自每一合同mini-backtest的普遍积极的夏普比率。他们没有把交易成本或者交叉买入/卖出差价考虑在内。他们所有的预测和特征都基于每5分钟最后时刻的中间价位。

2.Takeuchi和Lee()想要通过预测哪支股票将有比中值更高或更低的月度收益(monthlyreturns)来加强动量效应(momentumeffect)。

架构:他们使用一个由堆栈RBM组成的自动编码器提取来自股票价格的特征,然后他们将特征送入一个前馈神经网络分类器。每个RBM包含由对称链(symmetriclinks)连接的可见单位层和隐藏单位层。第一层有33个单位,用于输入来自某个时候一支股票的特征。对每个月t而言,特征包括t-2月到t-13月12个月份的特征,以及对应t月的近似20天的回报。他们通过计算关于所有股票每个月或每天的横切面(cross-section)的z-得分,正则化每个回报特征。编码器最终层的隐藏单位的数量急剧缩减,强迫降维。输出层有2个单位,对应股票是否低于或高于月度收益的中间值。最终层的大小依次为33-40-4-50-2。

训练:在预训练期间,他们将数据集分割成更小的、非重叠性的mini-batches。然后,他们展开RBM形成一个编码解码器,使用反向传播对其进行精调。他们考虑了所有在NYSE、AMEX或纳斯达克上交易的价格高于5美元的股票。他们在年至年的数据上进行训练(,支股票的每月样本),并在年至9年的数据上进行测试(,支股票的每月样本)。一些训练数据被保留,作为层的数量和每层单位的数量的验证。

结果:他们总体的准确率大约是53%。但他们考虑到预测前面十分之一股票和后面十分之一股票之间的差别时,他们得到每月3.35%的收益,或者每年45.93%的收益。

3.BatresEstrada()预测哪个标准普尔指数的股票在哪天将有高于中值的回报,而且他的研究看起来受到了Takeuchi和Lee()论文的影响。

架构:他使用一个3层DBN结合到一个MLP。在每个隐层有个神经元,而且他使用到了S形激活函数。输出层是一个带有两个输出神经元的Softmax层,进行的是二元分类(中值之上或之下)。DBN由堆栈RBM组成,每个进行连续的训练。

训练:他首先预训练了DBN模块,然后使用反向传播精调整个DBN-MLP。输入包括33个特征:t-2至t-13月的月度对数收益率,20支股票在t月的每日对数收益率,以及元月效应的指示变量。这些特征使用每个时间段的Z得分进行正则化。他使用了年至6年的标准普尔指数数据集,并按70%、15%和15%的比例分开分别用作训练、验证和测试。他使用验证数据选择层数、神经元数和正则化参数,也是使用early-stopping防止过拟合。

结果:他的模型有53%的准确率,超过了正则化逻辑回归以及一些MLP基线。

4.Sharang和Rao()使用一个在技术指标上训练的DBN交易一系列美国中期国债期货。

架构:他们使用一个包含2个堆栈RBM的DBN。第一个RBM是Gaussian-Bernoulli(15个节点),第二个RBM是Bernoulli(20节点)。DBN产生隐藏的特征,他们尝试将这些特征输入进3个不同的分类器:正则化逻辑回归、支持向量机以及一个有2个隐层的神经网络。他们预测如果5天内投资组合上升则结果是1,反之是-1。

训练:他们使用一个对比差异算法训练DBN。他们基于开仓、走高、走低、收盘利益和体量数据计算信号,这些数据最早的是年的,8年金融危机期间的一些点被移除了。他们使用20个特征:在不同时间段计算得到的「日常趋势」,然后进行规范化。所有的参数使用一个验证数据集进行选择。当训练神经网络分类器时,他们提到在mini-batch梯度下降训练期间使用一个动量参数将每次更新的系数收缩到一半。

结果:使用PCA构建的投资组合对第一主成分没有什么影响。这种投资组合是对工具的人工延展,所以真正的交易是在ZF和ZN合同之间的差价完成的。所有的输入价格是中间价,意味着买卖差价被忽略了。结果看起来是有益的,三种分类模型的准确率比随机预测器高5%-10%。

5.Zhu等人()使用震荡箱理论(oscillationboxtheory)基于DBN做交易决策。震荡箱理论表示,一个股票价格将在某个时间段在固定范围内震荡。如果价格超出了这个范围,然后它就进入了一个新的震荡箱。作者想要预测震荡箱的边界。他们的交易策略是当价格超出了上边界则买入股票,它低于下边界时则卖出股票。

架构:他们使用一个由堆栈RBM构成的DBN以及一个最后的反向传播层。

训练:他们使用blockGibbssampling(块吉布斯采样)方法以一种无监督的方式贪婪地训练从低到高的每一层。然后,以监督方式训练反向传播层,它将精调整个模型。他们选择标准普尔指数中的支股票进行测试,而且测试集覆盖4到5年间的天。他们使用了开仓、走高、走低、收盘价格,还有技术分析指标,作为全部的14个模型输入。一些指标通过使用灰色关联分析(grayrelationanalysis)或灰色关联度在预测中更具影响。

结果:在他们的交易策略中,每笔交易收取0.5%的交易成本,并为stop-loss和交易率增加了一些参数。我并未完全理解结果图,但报告称有极大的收益。

三、基于文本的分类模型

1.R?nnqvist和Sarlin()使用新闻文章来预测银行危机。具体来说,他们创造了一种分类器来评价一个给定的句子是否暗示了危机(distress)或安宁(tranquility)。

架构:他们在这篇论文中使用了两个神经网络。第一个用于语义的预训练,以减少维度。为了做到这一点,他们在文本上运行一个滑动窗口(slidingwindow),该窗口会取出一个包含5个词的序列然后学习预测下一个词。他们使用了一种前馈拓扑(feed-forwardtopology),其中一旦学习到了连接权重,中间的投射层(projectionlayer)就会提供语义向量。他们也将句子的ID包括到了该模型的输入中,以提供上下文语境和预测下一个词的信息。他们使用了二进制霍夫曼编码(binaryHuffmancoding)将句子ID和词映射到输入层中的激活模式(activationpattern),这能依据频率粗糙地对词进行组织。他们说带有固定上下文大小的前馈拓扑在句子序列的建模上比循环神经网络更加高效。他们没有使用百万计的输入(一个词一个输入),而是使用了来自已经学到的语义模型的个输入。其第一层有个节点,中间层有50个修正线性隐藏节点,而输出层有两个节点(危机/安宁)。

训练:他们的训练使用了在7-9年金融危机中在家银行上观察到的个危机事件。他们使用了71.6万个提及银行的句子,这些句子选自危机期间或之后路透社(Reuters)的万篇新闻文章。

结果:他们使用一种自定义的「有用性(Usefulness)」度量来评估他们的分类模型。评估通过交叉验证完成,并为每一个分类都分配了N家银行。他们将危机的数量聚集到了不同的时间序列,但却没有继续深入去考虑创造一种交易策略。

2.Fehrer和Feuerriegel()训练了一个基于新闻头条预测德国股票收益的模型。

架构:他们使用了一种递归自编码器,在每一个自编码器上都有一个用于估计概率的附加softmax层。他们执行了三类预测{-1,0,1}来预测下一天与新闻头条相关的股票的收益。

训练:他们使用高斯噪声(gaussiannoise)对权重进行了初始化,然后通过反向传播进行更新。他们使用了一个英语的ad-hoc新闻发布数据集,其覆盖了4-年之间关于德国市场的个头条新闻。

结果:他们的递归自编码器有56%的准确度,这比更传统的随机森林建模方法53%的准确度更好。他们没有开发交易策略,公开发布了一个他们的代码Java实施系统。

3.Ding等人()使用从新闻头条中提取出的结构化信息预测每天标准普尔指数的运动。他们使用OpenIE处理头条来获取结构化的时间表征(执行器、动作、对象、时间)。他们使用一个神经张量网络通过成倍地结合事件参数(eventargument)来学习它们的语义组合性(semantic







































北京哪家治疗白癜风的医院很好
北京有没有专业看白癜风的医院



转载请注明:http://www.beicanshijie.com/gjbz/232.html

  • 上一篇文章:
  •   
  • 下一篇文章: