前言:想要写出一篇引人入胜的文章?我们特意为您整理了神经网络技术对标普500指数的波动率预测范文,希望能给你带来灵感和参考,敬请阅读。
[摘要]波动率是对特定证券或市场指数收益分散度的统计量度,可以通过使用证券或市场指数收益率之间的标准偏差或方差来衡量。通常,波动率越高,风险越高。文章运用神经网络模型对美国标普500指数2016年的波动率进行了预测,并得到了优于传统模型的预测结果。
波动率是对特定证券或市场指数的收益分散度的统计量度,可以通过使用证券或市场指数收益率之间的标准偏差或方差来衡量。通常,波动率越高,风险越高。用来计算波动率的传统方法包括Black-Scholes模型和GARCH族模型。这些传统方法难以捕捉金融市场时间序列数据等数据集的不连续性,非线性和高度复杂性。随着计算机科学的发展,人工神经网络等机器学习技术提供了足够的学习能力,更有可能捕捉到金融市场中复杂的非线性模型。该技术已经在金融预测研究中取得了一些成果。Baba和Kozaki(1992)开发了一个神经网络系统用于预测日本股市的价格,并将改进BP算法与随机优化方法相结合的混合算法用于神经网络参数的训练。
1建模
本文使用神经网络技术建立了一个可以预测标普500指数波动率的模型。考虑到较长时间的交易包含了更多的信息以及实证研究的需要,本文选取的样本范围从2005年1月到2016年12月。为了比较不同模型的预测精度,以均方误差(MSE)作为评价标准,即预测波动率与实际波动率之间的偏差平方的平均值。反向传播(BP)算法也称为误差反向传播算法,是人工神经网络中的监督学习算法。BP神经网络算法理论上可以近似于任何函数。其基本结构由非线性变元组成,具有较强的非线性映射能力。而且,网络层数、神经元数量、网络学习系数可根据具体情况进行设置,灵活性大。输入变量的选择是一个建模决策,可以大大影响网络性能。本文的变量选择思路如下:波动率有聚集现象,可以证明波动存在自相关,所以历史波动率可以作为输入变量来预测t+1的波动率。Boller-slev(2011)从几个宏观金融变量(市场波动率本身和市场的市盈率等)中发现了波动率风险溢价的显著影响。因此,市盈率将被用作预测t+1波动率的输入变量。Fama和French(1988)发现,股票价格的一个缓慢的均值回归的趋势往往会导致回报的负相关性。Darrat和Zhong(2003)根据顺序信息得到假设,发现了道琼斯指数中的股票交易量和波动率之间存在显著的关系。基于上述原因,2005年至2015年标普500指数的历史波动率(滞后项)、市盈率、30日均价、交易量和一些基本信息(包括日收益率和收盘价)被选择作为输入变量。从这些数据中学习训练之后,BP神经网络将用于预测2016年标普500指数的波动率。我们使用MATLAB来建立这个BP神经网络。将2736个样本随机分为3组:有70%的样本用于训练网络。这些样本在训练期间提交给网络。然后根据误差对神经网络进行调整以优化自身。有15%的样本用于验证并停止训练。有15%的样本用于测试,提供了训练期间和训练后的网络性能的独立测量。这种方法被称为交叉验证,这是一种模型验证技术,用于评估统计分析结果和模型的过拟合程度。对于网络的层数,很多学者做了理论研究。Lippmann(1987)提出具有两个隐层的神经网络可以解决任何形式的分类问题。之后,Hetcht-Nielsen(1989)从理论上证明,任何闭区间的连续函数都可以用一个带有隐含层的BP网络来逼近。该理论可以作为BP神经网络结构设计的基本原则。实际上,增加层数的目的是找到输入、输出变量之间的关系,以减少误差,提高学习的准确性;另外,层数增加使得网络结构更加复杂,从而增加了网络训练时间。因此,通常的做法是通过设置隐藏的神经元的数量来调整误差。隐藏层神经元的数量对解决问题有很大的影响。有些书籍和文章提供了选择神经网络结构的“经验法则”。例如,Blum(1992)提供的经验法则是隐藏层的大小应该在输入层和输出层之间。Berry和Linoff(1997)给出的另一个经验法则是,它不能超过输入层的两倍。王小川等人(2013)提出了以下公式来帮助选择隐藏神经元的数量:Nhid<Nin-1Nhid<Nin+N槡out+a(0<a<10)Nhid=log2Nin我们测试了具有不同数目隐藏层的神经网络,从3到10。样本内的测试结果表明,有4个神经元的神经网络具有最好的结果。而通过对样本外数据即2016年标普500指数波动率的验证可以发现,4神经元网络在MSE和R评估标准中优于其他模型,这进一步证实了本文的实验结果。
2预测结果分析
使用BP神经网络进行波动率预测得到的均方误差(MSE)为4.291E-5,远小于同期数据计算得到的隐含波动率和GARCH模型计算得到的波动率的均方误差。将其与已实现的波动率进行比较可以发现,即使市场出现一些突然的变化或冲击,神经网络的波动率仍然接近实现的波动率,这表明神经网络在t+1波动率预测方面具有优越性。但是,这项研究还有一些局限性可以进一步改进。首先,本研究的波动率预测是基于每日数据来预测t+1的波动率。神经网络模型在不同时期的波动率预测中是否存在优势还有待研究。其次,需要优化神经网络的输入变量。在这项研究中,选择市盈率、交易量、历史波动率、30天平均价格,收盘价格和每日收益率作为输入变量。事实上,还有很多其他的与市场波动有关的变量,比如投资者情绪,利率变化等,所以输入变量的优化可以提高神经网络的预测能力。最后,本研究的对象是2005年至2016年标普500指数的数据,因此,其他市场或其他时间的波动率还有待进一步研究。但可以预见,不同市场的情况会有很大的不同,甚至根本不同。如果标的资产流动性差或交易量过小,神经网络模型很难获得足够的数据进行训练。它的预测能力可能会被严重降低。
参考文献:
[1]Baba,N.andKozaki,M..Anintelligentforecastingsystemofstockpriceusingneuralnetworks[C].IEEE:InternationalJointConference,1992,1(6):371-377.
[2]Fama,E.F.andFrench,K.R..Permanentandtemporarycompo-nentsofstockprices[J].JournalofpoliticalEconomy,1998,96(2):246-273.
[3]王小川,史峰,郁磊,等.MATLAB神经网络43个案例分析[M].
作者:李健 单位:格拉斯哥大学