设计应用

一种基于股票情感分析的股市趋势预测方法

0 引言

    随着互联网技术及应用的飞速发展,互联网用户人数在急剧增长。根据中国互联网络信息中心发布的第四十次统计报告表明[1]:到2017年6月份为止,中国的互联网网民已经达到了7.5亿。相比于2016年增加了近2 000万人。特别是随着Web2.0技术的发展和完善,微博、微信、论坛等新型社交媒体的出现,网民可以在这些媒体表达自己对某事件、人物和产品的观点、态度和看法等。互联网成为人类有史以来最大的“信息集散地”,也是人们发表观点最广泛的“思想自由地”。因此,分析和掌握这些网络评论中蕴含的丰富情感对预测分析具有重要的作用。例如,通过对在线商城上用户对产品的评论进行情感分析,可以让商家更好地了解商品的优缺点以及用户对商品的喜好情况,针对商品存在的缺陷和不足进行改进,提升产品质量和价值。

    我国股票市场经过了二十多年的飞速发展,股市的硬实力已经进入国际先进行列,但软实力还有待改进。例如,投资者不够重视或无法获取大盘整体预期走势以及公司主体的发展趋势,主要依靠各路小道消息,导致股票市场各类渠道的消息五花八门、真假难辨,对股票市场产生了一定的负面影响,而网民对股市或某只股票的网络评论观点在很大程度上反映了股市行情,也影响着股市涨跌。因此,如何快速高效地分析网民对股市态度和观点对股市预测具有很大指导意义。特别是随着最近几年人工智能技术的发展,学术界和投资行业已经高度重视采用网络股票评论的情感分析技术来为股市行情趋势预测提供信息支撑。

1 相关研究工作

    目前,网络文本情感分析方法主要分为两大途径,无监督情感分析方法和有监督情感分析方法[2]。在2002年PANG等学者首次采用电影评论数据建立了使用机器学习的有监督情感分类方法。他分别使用了支持向量机(SVM)、朴素贝叶斯(NB)、最大熵(ME)分类器,二情感分类特征主要采用情感词频[3]。实验表明基于机器学习的有监督分类结果准确率要高于基于传统的无监督方法。文献[4]也提出了一种结合SVM和NB分类器的新模型(NBSVM),这种新的模型在多个数据集都取得了很好的分类效果。有监督网络评论情感分类方法是基于标注训练集语料来进行评论分类的,而标注的语料具有领域依赖性,因此有监督网络评论情感分类效果的好坏与文本领域有直接的关系。在一个领域标注的训练集训练的分类器很可能在另一个领域分类效果并不好。所以,有监督情感分类方法需要在不同领域标注大量不同的训练集,才能取得比较好的分类效果。但是,在众多领域都标注大量训练集是一项十分困难的事情,需要消耗大量的人力物力,已经成为有监督情感分类的瓶颈。 

    为了解决不同领域都需要标注大量不同训练集的问题。基于规则方法的无监督网络情感分类越来越受到专家学者的重视。这类方法主要是采用正负情感词典作为种子词典,在情感词典中匹配情感词的极性,然后通过相关规则对网络评论进行分类。其中,HU M和LIU B在研究评论情感分类中利用种子情感词典来进行句子的情感分类。他们分别找到网络评论中正向情感词的个数和负向情感词的个数,然后用正向情感词个数减去负向情感词个数。通过比较情感词个数的多少来对评论文本进行情感分类[5]。文献[6]提出基于SentiWordNet情感词典,然后利用句子中的正向情感分数减去负向情感分数得到的总的分值作为情感分类的标准。KU L W、LIANG Y T等提出了一种基于“字袋”新的情感分类方法,该方法在进行情感极性判别的同时,还可以计算主观文本的情感强度[7]

    另外,最近几年也出现很多采用文本情感分析方法来预测股市趋势的研究成果。目前的大量研究成果表明:人的经济决策很大程度上受到感情因素的影响,通过对人的情感分析,能够预测近期的相关股票指数、价格波动[8]。例如,BOLLEN等人通过对大量的Twitter消息进行情感分析(例如积极、消极、冷静等),对股票指数进行预测。实验数据证明通过Twitter上的感情分析对Dow Jones Industrial Average指数进行预测,准确率达到了86.7%。Johan采用通过GPOMS的方法,将人的情绪分为冷静、警觉、自信、活力、友善、高兴等6个维度,通过比较不同维度的感情与股票价格间的格兰杰因果关联。在2014年,Gang和Tianyi等人进一步根据情感分析,给出了具体的投资策略。他们结合投资平台SeekingAlpha以及StackTwits,采用建立情感字典的情感极性分类方法,对相应的股票未来价格进行预测分析[9]。而且针对不同的投资需求,给出了相应的投资策略。通过8年的投资模拟,最终收入为108%,相比之下S&P 500指数在这八年间变为了47.8%。

2 股市评论情感分析系统的架构设计

2.1 架构设计

    目前,互联网集聚了不同层次用户对某些股票或股市的评价和趋势预测的文本,这些文本包含了用户的观点和态度。因此,通过分析这些股评文本,对某只股评或整个股市涨落趋势研判具有一定的指导意义。为此,论文设计了一种基于股市评论无监督文本情感分类方法来预测股市趋势的分析系统框架,如图1所示。股市预测系统整体框架分为5个部分:(1)股评数据的采集;(2)股评文本数据的清洗与预处理;(3)股评文本的情感极性检测;(4)股市趋势预测模型;(5)预测结果分析。

rgzn1-t1.gif

    其中,股评文本数据采集分为两部分,股评主观文本数据采集和股票历史价格数据的采集。其中,股评文本非结构数据的采集主要是通过网络主题爬虫来采集;而股票的历史价格等结构化数据主要是通过调用Yahoo!Finance API下载。Yahoo!Finance API 提供了一个获取股票数据价格的接口,通过设置股票名称,查询日期的参数即可获得相应时间内的所有股票交易数据。

    数据清洗和与预处理主要是针对股评文本的非结构数据。清洗主要是对噪声大的股评文本数据进行过滤,同时,重点选取股票专业人士对股市的观点文本数据。预处理主要是对清洗后的股评文本进行信息抽取,主要提出文章id,作者,标题,发表日期,涉及股票,文章内容,以及文章的网址信息。

    通过对股评数据采集、清洗和预处理后,分别保存在文件系统(非结构的文本数据)和关系数据库(结构化数据)中。然后,对历史数据的每篇股评文章进行情感极性判别,将股评的情感极性判别结果输入到股市预测模型中,计算在指定的时间窗口中某只股票或整个股市的上涨或下降趋势。最后,结合股票在一段时间后的实际价格波动趋势对预测的准确率进行评测。通过股评的预测准确率统计,对每个作者的预测准确性进行计算。根据历史数据的预测准确性,筛选预测较准的作者所撰写的股票评论,形成闭路分析系统,通过优化股票文本采集和清洗环节的算法,进一步提高系统股市预测的准确性。

2.2 股评文本情感极性分析方法

    从上述股票趋势分析系统框架结果设计可以看出,系统最重要的模块之一就是对股票文本数据的情感极性分析。论文提出了基于股市领域情感词典的无监督文本极性分析方法。该方法采用句法规则和情感词频统计相结合的情感极性判别算法。具体算法过程如图2所示。

rgzn1-t2.gif

    在上述股票文本的情感极性分析方法中,需要区分股评是针对整个股市的趋势预测还是针对某只具体股票趋势的预测。因此,在前面的预处理过程中,会根据股评文本标题中的include,about标签内容,获取股评文本涉及的股票名称,然后,通过识别的股票名称对股票文本进行段落划分。划分方法是将文本中先后出现不同股票名称之间的文本作为一个具体股票评论的段落,段落股票标签以前一支股票名称为准。按此方法,可以将一篇涉及多个股票的股评划分为多个对应单一股票的股票段落。预处理后的整篇文章被划分为多个段落,每个段落只对应一支具体股票,从而支撑论文对单只股票的分析与预测。 在股评段落划分之后,进入相应的股票文本极性分析阶段。具体算法如下:

    (1)统计正负向词汇、词组、句子频率 

    论文对股票文本段落逐句进行正负项词汇的词频统计。同时,针对常见股市领域词组,统计特定词组搭配。通过手工标定,将词组前后两个词分别定义正负向极性。通过负负为正的规则,最后得出词组感情极性。例如,其中具体加入词组如下:

    NegativeWords=[′cost′,′expens′,′risk′,′consum′,′loss′,′debt′,′problem′,′concern′,′competitor′,′mortgag′,′liabil′]

    PositiveWords=[′liquid′,′profit′,′capit′,′valu′,′revenu′,′potenti′,′fund′,′earn′,′advantag′,′income′,′dividend′,′aseet′,′interest′,′improve′,′opportun′,′qualiti′,′cap′,′benefit′,′progress′,′yield′,′return′,′margin′,′boost′,′attract′]

    然后,按照句子中的正负向词汇数量以及正负向词组数量的数量关系,判断整句话的情感极性。对于文章整体,通过将词汇、词组以及句子的正负倾向数相加,根据式(1)计算出情感分数。

    rgzn1-gs1.gif

其中,Pi和Ni分别代表正负词频。S的正负值分别代表文本的情感极性,S>0表示情感极性为正,否则为负。

    (2)检查否定词

    如果通过句法分析,检测到句子中含有以下否定词的部分,则需要将句子中所有情感极性取反。论文定义的反向词如下所示:

    NegationWords=[′avoid′,′fail′,′omit′,′neglect′,′unlike′,′unlikely′,′hardly′,′barely′,′no′,′not′,′unless′,′never′,′none′,′nothing′,′havent′,′hasnt′,′hadnt′,′cant′,′couldnt′,′shouldnt′,′wont′,′wouldnt′,′dont′,′doesnt′,′didnt′,′isnt′,′arent′,′aint'] 

    (3)判断文章是否有结论性总结段落

    通过大量实验数据分析发现,许多股评文本在对股票进行分析时,往往使用先抑后扬的写作方式,或者先扬后抑的写法。此类评论文本的情感极性一般与最后总结性段落持有相反极性。因此,论文在分析股评文本时需要重点分析总结性段落。这些总结性段落有简单明了的特点,观点也很直接、鲜明。所以,论文在对股评极性分析时,还需要判断股评文章是否有结尾段,如果有结尾段,就加大权重来计算结尾段的情感极性分数,把该总结性段落的情感分数加权计算到最后的股评情感极性分数中。实验表明,这样能有效提高最后的情感分析准确率。

2.3 股票趋势的分析模型

    在获得股评文本情感极性之后,如何进一步预测某些股票在今后的上涨或下跌趋势?这需要依靠股票趋势的分析模型,如图3所示。股票趋势可能受许多因素的影响。在本文中,重点考虑两方面因素:一是股票专业人士的观点,二是预测时的时间窗口选择问题。

rgzn1-t3.gif

    因为不同股评专业人士对股市知识储备、对股市信息理解和对股市判别能力的不同,可能造成他们对股票的预测能力也有差异。因此,论文提出的股票趋势分析模型引入不同的权重来区别不同股票作者的预测能力差异。通过历史股评与历史股票价格的对比,计算股票作者对未来股价变化趋势预测的准确率。筛选预测准确率大于50%的股评作者。另外,通过比较股评情感倾向时间序列与股价序列间的皮尔逊因果系数,获取预测准确度最高的预测时间窗口。将时间窗口t天后的股票价格与股评当日的股评价格进行比较,判断股票价格上升或者下降情况,并与股评情感倾向分析进行比对。若股评情感倾向性为积极(消极),且股票价格上升(下降)则计预测正确一次,否则计预测错误一次。如果股评发表日期不为交易日,则使用过去最近的股票价格为计时价格。若最近的股票价格距离当前时间超过三日,或者t至t+3日内也不存在股票交易数据,则舍弃该次预测。

    股票预测模型基本思想是:比较情感分析时间序列以及股票价格时间序列间的皮尔逊相关系数,以及直接比较预测未来股票变化趋势与实际变化是否相同。此处只考虑股票趋势的变化,不考虑价格变化幅度,并且和股评发表日期的一小段时间后的股票价格波动进行对比。这里只考虑价格上升或者下降的趋势预测准确率,对股票价格的具体波动大小暂且不考虑。另一方面,对于股票价格数据进行筛选后,同样对股评进行情感分析。并且由该情感倾向,预测一段时间后的股票上升或者下降趋势。系统通过使用历史的股票价格数据和股票情感极性分析结果来学习最佳预测时间窗口和不同专业股评人士的权重。通过学习到根据不同专业人士的股评情感分析结果,采用预测精度分析函数F(x)就可以确定某股票在指定的时间窗口下的上涨或下降趋势。

    rgzn1-gs2.gif

    其中,xi代表专家发表的股评情感极性(1表示支持涨,-1表示支持跌),wi表示专家股评的权重。

3 实验结果与分析

3.1 实验数据集

    论文采用的股评数据来源选择Seeking Alpha 网站,Seeking Alpha网站创建于2004年,是一个以大众为基础,为金融市场提供服务的网站平台。股票文章内容覆盖了股票、投资基金、投资策略等,内容全面广泛。股票作者主要是一些投资或者企业专家,且规模较大;同时,Seeking Alpha上专业投资人的分析预测也更加权威,历史上曾多次预测或者推动了股市趋势。因此,论文选择从Seeking Alpha网站平台上2005年至2015年的所有股评数据。2005至2014年的股评数据,在实验中作为历史数据处理,2015年的股评数据,在实验中作为未来预测数据处理。获取完股评文章后,对数据进行预处理,提取文章id、作者、标题、发表日期、涉及股票、文章内容以及文章的网址信息。

3.2 实验结果分析

    论文通过人为标定的方法判断情感分析的准确率,标定结果样例如表1所示。标定过程共邀请文本3名情感分析研究方向研究生对随机抽取的60篇股评文章,240支股票进行情感分析。最终,比对人为标定结果与情感分类结果,情感分析预测准确率为81.4%。文献[8]同样对股评数据进行了情感分析,它的分析准确率最高为84.8%。因此,在情感分析预测方面,预测的准确率已基本达到要求。

rgzn1-b1.gif

    (1)股票上涨与下跌趋势预测精度分析

    根据股票行业,选取了8个行业板块的股票,每类选取了15支股票,进行预测,选取代表股票如表2所示。每支股票用其缩写表示,此缩写与Yahoo!Finance上每支股票的标识一致。

rgzn1-b2.gif

    通过采用股票历史价格数据与基于股票情感极性分析的预测结果进行比较分析,计算出股票预测分析精准度等指标。论文选择了3个指标,作为实验结果的评判标准。这3类指标分别是预测结果的准确率P,评判分类结果的召回率R以及综合考量精确率和召回率的F1。实验结果如表3所示。从实验结果可以看出,预测性能与股票类别差异不是很大。

rgzn1-b3.gif

    (2)预测结果与预测时间窗口的关系分析

    根据网络文本情感分析结果,预测一段时间后的股价变化。通过历史数据的情感分析时间序列以及股票价格变化序列,在假定选取时间窗口为t后,计算两者间的皮尔逊关联系数。论文分别尝试了时间窗口t=3,7,15,30等多种窗口长度,分别计算出相应的皮尔逊系数,以及预测准确率,如图4所示:图4(a)为皮尔逊系数,图4(b)为预测准确率。可以看出,当选取时间窗口t=15时,股评的情绪倾向性与股票价格的变化趋势关联最大,且预测准确率最高。

rgzn1-t4.gif

4 结论

    论文研究通过分析不同网民发布股评的情感极性来预测股票上涨与下跌趋势。针对情感字典分析对领域依赖性问题,提出了一致综合金融词组词典和结尾段加权的情感分析方法,能有效提高情感分析准确度。另外,论文还提出了一种加窗的股票预测方法,该方法根据分析得到的情感分析时间序列,通过比较分析某些股票的历史价格数据,计算出预测事件窗口的最佳值。实验结果表明,预测时间窗口为15天左右,股票价格趋势变化与股评的情感倾向关联性强。针对特定股票的股票情感分析结果较于整体股市的评价预测效果更好些。未来工作可以将股票的金融特点与情感分析的股票预测性质相结合,发现更好的预测方法。

参考文献

[1] 中国互联网络信息中心(CNNIC),第40次中国互联网络发展状况统计报告[R].2017.

[2] 王丙坤,黄永峰.基于多粒度计算和多准则融合的情感分类[J].清华大学学报,2015,55(2):497-502.

[3] LIU B.Sentiment analysis and opinion mining.Synthesis Lectures on Human Language Technologies,2012,5(1).

[4] PANG B,LEE L,VAITHYANATHAN S.Thumbs up?: sentiment classification using machine learning techniques[C].Proceedings of the ACL-02 conference on Empirical methods in natural language processing-Volume 10.Association for Computational Linguistics,2002:79-86.

[5] HU M,LIU B.Mining and summarizing ccustomer reviews[C].Proceedings of the Tenth ACM SIGKDD International Conference on Konwledge Discovery and Data Mining,2004:168-177.

[6] OHANA B,TIERNEY B.Sentiment classification of reviews using sentiwordnet[C].Proceedings of the Ninth IT&T Conference,2009.

[7] KU L W,LIANG Y T,CHEN H H.Opinion extraction,summarization and tracking in news and blog corpora[C].AAAI spring symposium: Computational approaches to analyzing weblogs.2010,100107.

[8] SCHUMAKER R P,CHEN H.Textual analysis of stock market prediction using breaking financial news:the AZF in text system[J].ACM Trans. Inf. Syst.,2009,27:1-19.

[9] GILBERT E,KARAHALIOS K.Widespread worry and the stock market[C].Fourth International AAAI Conference on Weblogs and Social Media,2010.



作者信息:

肖  亭1,林  玲2,黄永峰1

(1.清华大学 电子系,北京100084;2.广东外语外贸大学 金融学院,广东 广州510006)

情感分析 股评 预测模型 情感词典