融合多源数据的股指预测研究*
2022-09-13蒋雨芯魏先华
■ 蒋雨芯 魏先华
中国科学院大学经济与管理学院 北京 100190
0 引言
自股票市场成立以来,股价的价格和趋势变化始终是学者和投资者关注的重点。股价的预测方法也在不断的发展和丰富,主要包括基本面分析、技术分析和量化模型分析等方法。基本面分析法是通过分析影响证券的多种因素,侧重于分析股票的长期投资价值。随着信息技术的不断成熟,更多的研究专注于使用更多非结构化的数据用于股价的预测中,其中包括Tetlock[1]等研究的市场新闻的影响、Wang[2]总结的投资者情绪对股价的影响、Jiang[3]提出的天气因素等。通过加入这些非传统的数据,能够更充分地挖掘多源数据所蕴藏的信息,从而更好地进行股价预测。技术分析法是通过分析股价波动的形态和统计数据如技术指标等的变化来预测股价走势,形成的技术分析理论包括道氏理论、K线理论和趋势理论等,主要侧重于分析股票价格的波动规律。量化模型分析则是通过建立不同的数学模型,早期的研究通常建立在简单的线形模型上,包括简单自回归、滑动平均等模型。但是由于股票市场中金融数据包含众多噪音和不确定性,线性模型难以捕捉股市中复杂的非线性特征。随着计算机技术的发展,非线性模型开始逐渐应用到股价预测中,包括支持向量机、人工神经网络和深度学习等。早在20世纪80年代White[4]就使用人工神经网络预测股价。Huang[5]等通过建立支持向量机模型并优化参数从而对股票涨跌趋势进行预测。Yu 等[6]提出将BP 神经网络应用于股票市场的预测。任君等[7]使用LSTM 与SVM 结合的方法,预测沪深300 指数并构建投资策略。Hoseinzade[8]通过将股票的时序、技术指标数据整理为二维矩阵数据作为卷积神经网络的输入,预测了标普500 的价格趋势。相较于传统的线性回归,神经网络和深度学习的模型结构更加复杂,更加适用于解决大量数据中的非线性问题。
市场上常见的交易软件能够将股票的交易数据以及技术指标进行可视化地展示,投资者可以通过图片对股价走势进行分析,但投资者对股票的主观经验判断可能受到心理因素等的影响。过去的预测研究大多是将股价数据特征采用时间序列的形式作为模型的输入,很少有学者直接采用金融图像进行分析处理。同时在研究中存在无法准确地刻画市场总体情绪对股价的影响,以及使用单一的数据来源和形式导致预测效果不佳等问题,所以对于如何整合多源异构数据对股价进行预测仍需进一步深入的研究。本研究以沪深300指数作为研究对象,通过建立图像化融合多源异构数据的模型,将新闻情绪、投资者情绪、技术指标等数据共同编码形成图片,构建卷积神经网络对股指进行不同周期的走势预测。在所参与的基金项目:基于大数据融合的新一代商务智能系统构建研究中,作为其中智能投顾系统股价预测模块的研究成果,为股指趋势预测和研判提供了新的思路,从而能够更好地为投资决策进行服务。
1 图像数据选取
1.1 市场综合情绪指数图像
1.1.1 财经新闻情绪指数
研究表明新闻情绪是影响市场价格走势的重要因素之一,其原因是新闻是普通投资者获取资讯最直接、有效的方式,投资者会根据新闻传递出的情绪作出投资决策,从而影响市场的总体走势[9]。所以本研究通过优矿平台获取多家主流财经媒体的每日市场新闻的汇总报道,能够充分反应新闻媒体对市场整体的报道和情感走势。通过收集其中2013/1/1 至2020/12/31 期间每日的股票市场相关新闻,包括新闻ID、标题、摘要和时间等,最终整理得到共计620万条新闻数据。通过对交易日期的映射和匹配后,利用筛选高频词补充Bian 等[10]构建的CFSD 新闻情感词典的方式,对新闻的摘要进行情感打分。通过计算每条新闻的情绪得分,汇总构建每日市场总体新闻情绪指数,作为当日媒体新闻反映的市场总体的情感,其中posN表示新闻情绪为积极的新闻数量,negN表示新闻情绪为消极的新闻数量。其计算公式为:
1.1.2 市场其他情绪代理指标
由于市场整体的情绪不仅受到新闻媒体情绪的影响,还与投资者行为与市场交易数据等密切相关。所以在财经新闻情绪基础上,本研究参考Baker 和Wurglar[11]构建的BW 指标以及黄德龙等[12]其他学者构建复合情绪指标所使用的市场代理指标。根据数据的可得性和与指数收益率的相关性,本研究最终选取了HS300 指数的市场交易数据:交易量(Amount, Amt)、换手率(Turnover,TO),通过wind获取HS300个股异质投资者的交易数据,按照交易资金量的大小划分为机构投资者和散户投资者,汇总计算出机构净流入(Institution,Ins)及散户投资者净流入(Individual,Ind),分别代表机构投资者情绪和个人投资者情绪,以及反应市场每日涨跌情况的腾落指数(ADL)。最终的选取指标和数据来源如表1所示。
表1 市场情绪代理指标和数据来源
1.1.3 市场综合情绪图像
本研究构建的综合市场情绪指标是在新闻情绪指标的基础上,融入包括异质投资者资金走向,市场热度等其他市场情绪代理指标,共计6 个指标。在综合指标的构建中,本研究参照董孝伍[13]所使用的方法,对选取指标在t 时刻和t-1 时刻的数据进行主成分分析,得到包含12个情绪指标的综合指标,记为MS12。再通过MS12与12 个单独的情绪指标相关系数的大小来确定各指标的领先与滞后的情况。根据上述方法的处理,最终选取了6 个指标在t 时刻的当期值并通过主成分特征值加权平均计算出MS6市场综合情绪指标,其表达式为:
MS6=0.286*Ins+0.272*ADL+0.259*News-0.273*Ind-0.55*Amt-0.063*TO
Baker 和Wurglar[11]认为,当投资者情绪可以反映市场波动特征时,则认为该情绪指标是真实有效的。所以本研究分别对财经新闻情绪指数和融合多类数据构建的综合情绪指标与沪深300 收益率的相关性进行了分析。
图3 RSI指标图像
表2 表明本研究构建的综合市场情绪指数MS6 与沪深300指数对数收益率相关性相较于单独的财经新闻情绪的相关性更高,可以较好的反应市场情绪变化,能够作为整体市场情绪的代理变量。本研究采取将市场情绪指标用白色折线的形式进行呈现,通过折线的高低曲折变化来反映市场综合情绪的热度,如图1所示。
表2 指数收益率和情绪指标的相关性
图1 市场综合情绪指标图像
1.2 技术指标数据图像
股票技术指标是通过特定的算法对证券原始的交易数据计算得来的时间序列,可以用来推测股票价格的变动趋势。本研究按照wind 的指标分类选取常见的3类技术指标作为主要的研究内容,分别是趋向指标中的MACD 指标以及反向趋势指标中的RSI 指标以及压力支撑指标BOLL 布林带指标。MACD 指标,又称异同移动平均线,是一种判断金融资产买卖时点以及价格涨跌趋势的技术指标。其原理是运用短期指数移动平均线和长期指数移动平均线交叉和背离的信息进行平滑运算。RSI指标,又称相对强弱指标,是一种研究金融资产价格波动幅度的技术指标。其原理是计算一段时间内的涨跌幅的比值,从而反映多空双方的强弱程度。BOLL 布林带指标,是通过计算金融资产价格的标准差和置信区间,得到股票价格的上下波动范围和未来涨跌趋势。通常资产价格应该保持在上下轨道之间运行,一旦突破其波动范围的上下限,则代表资产价格处于较极端的情形,容易出现反转的趋势,可以作为判断未来涨跌的依据。
技术分析理论在图像方面的应用非常丰富,是良好的卷积神经网络的输入数据,所以本研究将技术指标绘制成黑底白线折线图形作为模型的输入,形成的不同技术指标图像如图2至图4所示:
图2 MACD指标图像
图4 布林带指标图像
1.3 股价数据图像
对于传统的指数交易数据,本研究参考Jiang[14]的文章将股价数据表示为OHLC 类型的图片。对比市场常见的股价K 线图和蜡烛图,股价的OHLC 图片能够通过更少的图像像素表示更多的股价数据信息,不仅包含股价的4 个价格数据,同时线段的垂直长度也能够反映每日的价格波动,并且通过同一种颜色即可以表示股价的涨跌信息。图片数据采用黑底白色线条组成,这样的图片编码方式可以将图片的数据直接转化为二维像素矩阵,而不用保留三维的RGB 颜色信息,能够在保留完整数据信息的同时减轻图片数据的存储需求,可以作为良好的CNN 输入数据源。最终形成的数据图像如图5所示。
图5 股价OHLC图像
1.4 融合图片数据图像
为了更好地对比图像输入形式对模型预测的影响,本研究采取将3类图片共同作为输入以及融合形成单张图片为输入的两种形式。其中单张融合图片需要涵盖市场情绪指数、股价数据和技术指标数据。本研究采取将市场情绪指标用白色折线的形式置于图片下方,技术指标则按照常见方式覆盖于股价数据之上进行显示,最终进行对比训练的融合数据图片数据如图6所示。
图6 融合3类数据的整合图像(以MACD指标为例)
2 股指预测模型的方法
2.1 多源数据融合方法
股价预测模型需要选取影响股价涨跌的多项因素,从不同的角度整合丰富的信息来描述股票的变化,并对此建立合适的预测模型。本研究期望利用卷积神经网络在图像识别和预测中的优势,将金融数据处理成图片数据,并与传统的数据形式预测进行比较,从而探究本研究融合数据的方法的有效性和结构的稳健性。通过采集财经新闻、市场情绪代理指标、股价数据和K 线技术指标等数据生成相应的图像,并采取构建融合图像的形式作为卷积神经网络输入的数据集对比,具体采用的融合方法如图7所示。
图7 多源数据图像融合方法
2.2 卷积神经网络模型
卷积神经网络是一种前馈人工神经网络,能够从大规模的数据中不断提取和学习从局部到整体的特征,并将结果向同类别数据泛化。在金融领域,股价图像的可视化在一定程度上有助于检测统计数据中存在的特征和模式。利用卷积神经网络自动训练和优化模型,不需要提前制定技术指标和图片特征,即可搜索最能预测未来回报的图像模式,所以股价图像数据可以作为卷积神经网络良好的数据输入进行研究。常见的卷积神经网络样本输入通常为具有RGB 这3 个通道的图像数据,本研究构建的每1类图像数据集都为单通道的图片。通过将多类图片共同作为模型的输入,分别采取3 张图片同时输入以及单张融合图片作为输入的形式进行模型的训练和预测。在多张图片同时作为输入时,通过将3 张图片进行纵向拼合,形成3 通道的图片数据。卷积神经网络在模型训练的过程中会自动更新不同通道的训练参数,从而实现在赋予不同类别图片不同的权重的同时也能够学习不同类图片中的特征。在单张融合图片作为输入时,则直接让模型学习融合图片的特征作为对比。本研究在考虑样本尺寸大小和数量的限制时,主要参考LeNet-5[15]网络结构进行相应的设计和修改,最终构建的卷积神经网络由两个卷积层,两个池化层以及3个全连接层构成,并命名为CNN_Stock。同时在模型中增加了Dropout 层和Batchnorm 层在一定程度上防止数据过拟合。以此构建的卷积神经网络的模型结构如图8所示。
图8 卷积神经网络模型结构
3 实验结果及分析
3.1 实验流程
实验流程图具体描述如图9所示。
图9 实验流程图
首先利用python绘制3类不同的数据图像以及融合图像作为模型的输入。其次通过对模型的训练进行股指趋势的预测,使用评价指标对预测结果进行分析。最后选取不同预测模型进行对比,包括线形预测模型逻辑回归、时序预测模型LSTM 和经典卷积神经网络AlexNet 模型,对输入数据的形式和融合方法的有效性进行检验。
3.2 实验数据
本研究使用的数据集时间区间为2013/1/1 至2020/12/30。图片种类分为两大类,分别是由市场情绪指数、技术指标和股价数据3 类数据指标单独绘制的3 层图片数据以及由3类图片数据融合形成的单层图片数据。本研究采用留出法的方式对总数据集按照9:1 的方式划分样本内外数据集。其中2013/1/1 至2020/3/31 的数据集作为训练集对模型进行训练,2020/4/1 至2020/12/31 作为样本外测试集对模型进行评估。为了减弱随机划分的影响,对训练集重复划分训练集和验证集,并对得到的多次结果取平均作为最后的结果。图片周期长度选取分为5 天、20 天、60 天(分别代表周、月和季度)的数据来进行预测未来的涨跌。图片拥有3类不同时间长度的标签,分别为1 天、5 天和20 天后的涨跌情况。以5 天为例,若该图片未来5 天后的价格上涨,即Closet+5>Closet时,label 标记为1,反之标记为0。通过对图片和3 类数据标签分别进行模型训练和评估,进而比较不同数据集使用模型预测的准确率。
3.3 模型的训练与评估
模型的评价指标通过召回率(Recall),特异性(Specify),准确度(Accuracy),马修斯相关系数(MCC)指标来进行评价。在预测分类问题中,通常将样本真实类别为正,最后预测结果也为正的记为TP(True positive);样本真实类别为负,最后预测结果为正的记为FP(False positive);样本真实类别为正,最后预测结果为负的记为FN(False negative);样本真是类别为负,最后预测结果也为负的记为(True negative)。四个评价指标的定义和公式如下:
Recall:召回率,表示在原始正样本中最后被正确预测为正的概率。
Specify:特异性,表示在原始样本中的负样本中被正确预测为负的概率。
图10 情绪指数、技术指标和股价数据3类数据融合形成的5、20和60天预测图像
图11 情绪指数、技术指标和股价数据3类数据分开表示的预测图像(以20天为例)
Accuracy:准确度,表示预测正确的样本数除以总样本数。
MCC:马修斯相关系数,描述实际分类与预测分类之间的相关系数。
3.4 实验结果分析
根据构建的卷积神经网络模型对不同技术指标形成的3 类图片及3 类图片的融合图像分别进行识别和预测,下表展示了该模型在预测未来1、5、20天涨跌情况的预测能力,模型评价结果如下表所示。
本研究构建的模型对于股指预测趋势具有一定的预测能力,同时模型预测效果会受到图像长度、未来预测天数、多源数据的加入以及不同技术指标选取的影响。对于不同技术指标加入的预测效果,选取其中表现最好的MACD指标实验结果为例进行展示。
单层仅含股价数据的预测准确率最低,如表1所示,其中使用60 天图像数据预测未来5 天的涨跌相对表现最好为53.1%。从表3 和表4 可以看出加入技术指标图像或者情绪指标图像后均能够有效提升大部分模型预测准确率。同时对于融合3 类数据的3 层图片预测模型优于融合3 类数据的单层图片数据模型,其中效果最佳的如表6所示,为使用MACD指标的的60天图像数据对于未来5 天后涨跌的预测结果,样本外准确度能够达到65.2%,相较于单一数据源预测能够提升12.1%。不同技术指标的加入对模型预测效果的提升略有差异,但大部分测试数据集都能够在单一股价数据预测模型的准确性上得到提升,其中MACD指标相较于其他两类指标表现更好,所以本研究主要对MACD指标的实验结果为例进行分析。同时模型对于未来不同时间窗口的预测存在一定差异。对大部分预测数据集,模型对于股指未来1天或者20天的预测能力不及未来5天趋势预测的准确性,其原因是因为股价未来1 天或者20 天的变化波动性相较于5 天可能更大,对于股指数据的预测仍需要尽可能的从多维度进行描述和分析。
表3 单层OHLC股价数据预测效果
表4 技术指标+股价数据双层数据预测效果(以MACD指标为例)
表5 情绪指标+股价数据双层数据预测效果
表6 情绪指标+技术指标+股价数据三层图片数据预测效果(以MACD指标为例)
表7 融合情绪指标+技术指标+股价数据单层图片数据预测效果(以MACD指标为例)
3.5 模型的对比模型检验
为了验证本研究构建的预测模型的有效性,选择了上文表现较好的采取MACD指标、市场情绪指数以及股价数据形成的3 层图片模型CNN_Stock 进行未来5 天股指涨跌预测,并选择逻辑回归模型、参考杨青[16]等人构建的LSTM 神经网络以及AlexNet 神经网络作为对比。其中逻辑回归属于广义线形模型,作为进行对比的传统预测模型。LSTM 为使用时间序列作为输入的神经网络模型,适用于处理和预测时间序列,作为不同数据输入形式的模型进行预测对比。AlexNet 模型为图片分类领域表现成熟的卷积神经网络模型,由于本研究数据量相较于原始数据集较小,将AlexNet 原模型进行了卷积核数目减半的处理,作为不同结构的卷积神经网络进行对比。对比实验结果如表9所示:
表9 股指预测模型对比实验结果
实验结果表明,不同图像长度的数据集对于预测准确率有一定影响,4 类模型使用60 天的图像数据集相较于5 天和20 天的数据集表现效果更优,这表明在融入更多丰富的数据信息后能够提升模型的预测效果。在不同模型间的对比中,预测效果最好的模型为本研究构建的卷积神经网络模型,通过60 天的图像预测未来5 天的股指趋势准确率能够达到65.2%,其次为模型结构更为复杂的AlexNet 模型,预测效果最佳可达55.6%,LSTM神经网络模型预测效果最佳为53.1%,逻辑回归模型作为预测效果最差仅为47.5%。
其原因是逻辑回归作为线形模型无法较好地拟合股价的趋势特征。LSTM 网络模型学习到的特征则是尽量将上一段时间的收盘价作为当前的预测输出,倾向于保留之前股价的趋势,股价预测存在滞后性。AlexNet模型结构更为复杂,训练过程中参数多、计算量大,容易出现过拟合的现象,导致在样本外预测效果相对较差,无法准确识别股价图像数据集的特征。这也表明神经网络的结构需要针对特定的数据格式和数量进行设计和训练才能达到较好的结果。
在数据输入形式的比较上,基于图像数据的两种卷积神经网络模型预测准确率均优于使用时间序列作为输入的LSTM 和逻辑回归模型。图像数据的优势在于图片在生成时就实现了数据的隐式缩放,能够将股价数据处理为同一维度,不需要提前对数据进行特征缩放和归一化。这表明本研究构建的图像化融合数据方法和预测模型在股指的趋势预测中具有一定优势。
3.6 交易策略设计与回测结果
3.6.1 交易策略构建
为更好的验证本研究构建模型的有效性,建立合理的量化交易策略可以对模型效果进行检验,选择上文表现最优的60 天图像预测未来5 天股指涨跌的模型来进行量化择时交易策略的信号预测。构建的交易策略如下:若预测未来5日股指会上涨,则交易信号设置为1。具体操作为:当前无持仓时则在下一天买入,有持仓时继续持有,第5 天卖出;若预测未来5日股指会下跌,则交易信号设置为0。具体操作为:当前有持仓时则第2天卖出,当前无持仓时保持空仓状态。第6 天读取新的交易信号。基准策略收益选取沪深300指数的收益来进行对比。
3.6.2 策略回测结果
本研究选取HS300 指数作为模拟的交易标的,根据本研究所制定的CNN 交易策略进行交易。回测使用的数据集区间为2020/4/1 到2020/12/31,同时由于本研究使用的数据为60天的图片数据,所以最终策略的回测周期为2020/7/1 到2020/12/31。回测结果如图12 所示,风险评价指标结果如表10所示:
图12 CNN策略交易回测结果
表10 CNN策略与基准策略的评价指标结果
根据回测结果可以观察到,在回测期间本研究构建的CNN 策略能够取得34.2%的超额收益,夏普比率可达2.4,同时相较于基准买入并持有策略能够降低波动率和最大回撤。表明了通过本研究构建的CNN 策略能够通过图片预测未来指数涨跌的趋势所产生的交易信号产生盈利,在投资决策中可以为投资者提供建议。
4 总结与展望
本研究针对股价预测中存在的数据来源不足、数据形式单一以及预测精度不高等问题,以沪深300 指数为研究对象,并以图像化的方式融合市场综合情绪、技术指标和股价数据作为卷积神经网络模型的输入,创新股价预测的输入形式。最终融合3 类数据的3 层图片预测模型使用60 天的数据对于未来5 天涨跌趋势预测准确度最高,相较于其他预测模型的精度有显著提升。通过对实验结果和交易回测的分析,可得出以下结论:
(1)使用传统的单一股价交易数据对于股价预测准确率效果有限。通过加入本研究构建的情绪指数或技术指标增加数据来源和多样性,能够在大部分数据集中有效提升预测准确率。
(2)本研究提出的基于图片数据的融合模型和预测方法,相较时序数据作为输入的两类对比模型预测效果更佳。图像数据相较于传统时序数据,能够直观地展示数据间的非线形变化,在图像生成时即可实现对数据的归一化。
(3)通过本研究构建的预测模型建立的投资策略,能够在交易回测中取得超额收益,验证了该模型和方法的有效性,可在一定程度上辅助投资者进行决策。
通过该模型和方法得到了一些研究结论,但仍存在一些不足需要解决:第一,本研究在多源数据的选择上仅限于新闻数据、市场交易数据和技术指标等,影响股价变化的还有其他众多变量,在未来的研究中可以考虑引入更丰富的数据源。第二,基于图像数据的卷积神经网络模型在股价预测中存在其优势,但对于模型结构和相应的参数还可以进一步设计和优化,更好地提升预测精度。第三,本研究构建的股指预测策略可为投资者提供参考,但在实际交易过程中存在交易的限制,仍需考量多方面影响因素才能更好地综合决策。