赛尔原创 | 基于事件的金融市场预测研究
作者: 哈工大SCIR博士生 段俊文
1 前言
金融市场的预测研究可以追溯到 1937 年前后约翰 • 梅纳德 • 凯恩斯( John Maynard Keynes)[1]在研究不确定性问题时提出的选美理论,即在金融市场投资问题上,不要去买自己认为能够赚钱的金融品种,而是要买大家普遍认为能够赚钱的品种,哪怕那个品种根本不值钱,也就是说投机行为就是建立在对大众心理的猜测上。基于事件的预测则是从较为客观的事实角度出发进行预测。新闻媒体中报道的一些事件会对人们的决策产生影响,而人们的决策又会影响到他们的交易行为,这种交易行为最终会导致金融市场的波动。例如: Facebook 公司 2014 年第三季度业绩超出预期水平,股价数小时内大涨 10%。重要事件都会导致股票市场的剧烈震动,如果能够及时准确地获取这些重要事件势必会对金融市场波动的预测起到重要帮助作用。
2 相关工作
1965 年尤金 • 法玛( Eugene F. Fama)提出了有效市场假说( Efficient Market Hypothesis)[2],他认为金融产品的价格可以充分反映出关于该资产可获得的所有信息,即“信息有效”,而每个人都一定程度上可以获得这些相关信息。这一假说可以作为基于事件抽取的股市预测的理论基础,因为企业发生的事件是与其最相关的信息,而且也是大众普遍可以获取到的信息。金融市场的预测研究可以分成两个不同的研究方向,一是时间序列交易数据驱动的金融市场预测,二是文本驱动的金融市场预测。
时间序列交易数据是最早用于建立预测模型的一类数据,主要包括股票历史价格数据、历史交易量数据、历史涨跌数据等。传统的金融市场预测研究中,金融领域学者多从计量经济学的角度出发进行时间序列分析,进而预测市场的波动情况。近年来,随着计算机领域学者尤其是自然语言处理领域学者对该研究课题持续地关注,更加丰富的信息被挖掘和利用。新闻报道以及社会媒体中的文本内容被证明会直接或间接地影响金融市场波动。文本驱动的金融市场预测主要是挖掘新闻报道和社会媒体中报道的客观事实以及大众的情感波动。前人的很多研究工作表明金融领域新闻会一定程度上影响股票价格的波动。大卫 • 卡特勒( David M Cutler, 1988)[3]是最早研究新闻报道文本与股票价格之间关系的学者之一,自此以后自然语言处理技术逐渐被引入到金融市场预测中来。而早期被应用在文本表示的技术主要是基于词袋模型( Bag-of-words)。但是,舒马赫( Schumaker)和陈( Chen)[4],以及谢( Xie)[5] 等人在后续的研究中指出,基于词袋模型的文本表示方法并不是最优方案。舒马赫(Schumaker)和陈( chen)尝试抽取文本中的命名实体和名词短语来扩展词袋模型。谢( Xie)等人提出基于语义框架挖掘出更加丰富的文本特征。
另外一方面,除了从文本中挖掘客观事实外,有些学者还尝试对文本内容进行情感分析。博伦( Bollen)[6]等人是较早利用社会媒体上大众的情绪波动来预测股市波动的学者。另外, Si 等人[7]通过对文本内容表现出来的积极情感和消极情感对股市波动进行预测。基于情感分析的金融市场预测主要是从主观情感角度出发进行预测,而基于事件的金融市场预测则是从客观事实角度出发进行预测,二者可以相结合,优势互补,取得更加精准的预测结果。
3 基于事件的股票预测
以往工作存在一个共性的问题,没有捕捉到文本中的结构化信息,而这一信息对于股票涨跌预测非常重要。例如,“甲骨文公司诉讼苹果公司侵权”,如果用词袋模型进行表示,则可以这样表示“甲骨文”,“诉讼”,“苹果”,“侵权”,……。由于没有结构化信息,因此,我们不清楚是甲骨文公司诉讼谷歌公司,还是谷歌公司诉讼甲骨文公司,因此,也就很难判断出哪个公司的股价会上涨,哪个公司的股价会下跌。我们提出利用结构化的事件去预测股票涨跌,上面的例子,如果用结构化的事件来表示,这可以表示成这样 (施事:“甲骨文” ), (行为,“诉讼” ), (受事:“谷歌” )。由此,我们就能够清晰地知道是甲骨文公司诉讼谷歌公司,因此,谷歌公司的股价有可能受影响而下跌,而甲骨文公司有可能会上涨。
3.1 事件表示学习
由于传统的 One-hot 高维特征表示方式会使得事件特征异常稀疏,从而不利于后续的研究和应用,因此,我们提出了三种全新的事件表示方式。第一种离散模型是基于语义词典对事件元素,进行泛化,进而缓解事件的稀疏性。第二种连续向量空间模型则为每一个事件学习一个低维、稠密、实数值的向量进行表示,从而使得相似的事件具有相似的向量表示,在向量空间中相邻。第三种模型在连续向量空间模型的基础上引入外部知识,进一步增强了事件向量的表示能力。
3.1.1 基于离散模型的事件表示学习方法
由于历史上发生的事件大多数都很难以再次发生,因此会导致事件具有严重的稀疏性,离散模型的目标是对同一事件的不同表达进行归一和泛化。例如,“微软以 72 亿美元价格吞并诺基亚移动手机业务”和“微软出资 72 亿美元收购诺基亚移动手机业务”表达的是同一事件。为了完成这一目的,我们[8]利用两个广泛应用的语义词典 WordNet 和 VerbNet 对事件元素进行泛化。具体而言,泛化过程包含两个步骤。首先,本文从 WordNet 中找到事件的施事者和受事者中名词的上位词将其泛化。例如,本文利用“微软”的上位词是“IT 公司”将其替换掉。随后,本文找到事件元素中的动词,并用 VerbNet 中该动词所属类别的名词替换掉改动词,从而对其进行泛化。例如,“增加”在 VerbNet 中所属的动词类别名称为 multiply。下面给出一个事件泛化的完整例子,给定句子“Instant view: Private sector adds 114,000 jobs in July.”,可以抽取出事件( Private sector, adds, 114,000 jobs)将其泛化后的结果是( sector, multiply class, 114,000 job)。类似方法也曾被 Radinsky[126] 提出用来做因果事件预测任务上。
3.1.2 基于连续向量空间模型的事件表示学习方法
离散模型方法简单且有效,但是也存在着两个重要的局限性:其一,WordNet, VerbNet 等语义词典词覆盖有限,很多词难以在语义词典中找到相应记录。其二,对于词语的泛化具体到哪一级不明确,对于不同应用可能会有不同要求,很难统一。此外,即使对事件进行了泛化还是无法解决One-hot 的特征表示带来的维度灾难( curse of dimensionality)问题。由此带来的特征稀疏问题,会导致后续的应用难以取得较好结果。并且超高维度的特征空间也会消耗大量的实验时间和空间存储,增加了计算成本。
基于以上的分析,我们[9]设计了一个全新的张量神经网络来学习事件的结构化向量表示,事件的每一个元素及其所扮演的角色都会被显式地建模学习。如图4-5所示,两个张量
Figure 1: 基于张量神经网络的事件表示学习
3.2 融入背景知识的事件表示学习方法
事件的向量表示能够学习到事件中包含的语义信息,缓解离散事件的稀疏性,但是也存在一定的局限性。一方面,对于句法或语义上相似的事件,如果它们不包含相似的词向量,那么事件的向量表示可能无法捕获它们时间的相似关系;另一方面,如果两个事件包含相似的词向量,例如“ Steve Jobs quits Apple”和“ John leaves Starbucks”,可能具有相似的向量表示即使它们毫无关联。其中一个重要原因是,在训练事件表示时缺少背景知识。如果我们知道“ Steve Jobs”是“ Apple”的 CEO,而“ John”可能是“ Starbucks”的一位顾客,那么模型就能学到完全不同的向量表示。
基于以上分析,我们[10]提出了一种融入外部知识的事件表示学习方法。如图 2所示,对于事件三元组
Figure 2: 融入背景知识的事件表示学习模型框架
3.3 预测模型
我们将股市涨跌预测看成二元分类问题,即判断股价未来走势是上涨,还是下跌。具体而言,预测模型的输入是上一节中抽取到的具有结构化信息的事件,输出是预测当天股市的收盘价相对于开盘价是上涨还是下跌。
3.3.1 基于深度神经网络模型的股市涨跌预测方法
在股市预测任务上,大多数前人工作均采用线性分类器。直观上来讲,现实世界中发生的事件与股票涨跌之间的关系应该是复杂的隐含的非线性关系。因此我们提出了基于深度神经网络的预测模型。其结构如图 3所示,所有的隐含层均使用sigmoid激活函数
Figure 3: 深度神经网络预测模型
3.3.2 基于卷积神经网络模型的股市涨跌预测方法
值得注意的是对于历史事件而言,尽管其影响力有所衰减,但还是对股价的波动有一定的影响作用。然而,前人工作很少会定量分析长期历史事件对股市波动的影响,尤其少见将长期事件和短期事件结合起来预测股市波动的工作。为了填补这一空白,我们将长期历史事件看成是一个事件序列,利用卷积神经网络( convolutional neural network, CNN)将输入的事件序列进行语义合成,然而利用网络中的 Pooling 层抽取出信息含量最丰富的事件作为特征,网络中的隐含层用来学习股市波动和事件之间的复杂关系。
模型的输入是连续的事件向量序列,事件按照报道时间先后顺序排列。每一天的事件序列作为一个单独的输入单元(U)。模型的输出是一个二元分类,其中输出的类别+1代表预测当天股市的收盘价相对于开盘价是上涨,类别-1代表预测当天股市的收盘价相对于开盘价是下跌。如图4所示,对于长期事件(左侧)和中期事件(中间)将使用卷积操作,最相邻的
Figure 4: 基于卷积神经网络的预测模型
4 总结
本文将结构化事件三元组应用到股票涨跌预测任务中来,提出了基于离散模型,基于张量神经网络以及融入外部知识三种事件表示方法,有效克服了传统bag-of-words 方法中的事件稀疏和语义组合的问题。在此特征基础上,我们进一步提出基于卷积神经网络和深度神经网络构建预测模型。作为社会计算、自然语言处理与金融学等多学科交叉的一个重要研究方向,目前的研究才刚刚起步,还有很多值得深入开展的工作。
注:本文部分内容节选自《基于社会媒体的预测技术》, 刘挺,丁效,赵森栋,段俊文,中国计算机学会通讯 2015 年第 3 期专题。
References
[1] John Maynard Keynes. The general theory of employment. The quarterly journal of economics,pages 209–223, 1937.
[2] Eugene F Fama. The behavior of stock-market prices. The journal of Business, 38(1):34–105,1965.
[3] David M Cutler, James M Poterba, and Lawrence H Summers. What moves stock prices?,1988.
[4] Robert P Schumaker and Hsinchun Chen. Textual analysis of stock market prediction using breaking financial news: The azfin text system. ACM Transactions on Information Systems(TOIS), 27(2):12, 2009.
[5] Boyi Xie, Rebecca J Passonneau, Leon Wu, and Germán G Creamer. Semantic frames to predict stock price movement. In Proceedings of the 51st annual meeting of the association for computational linguistics, pages 873–883, 2013.
[6] Johan Bollen, Huina Mao, and Xiaojun Zeng. Twitter mood predicts the stock market. Journal of Computational Science, 2(1):1–8, 2011.
[7] Jianfeng Si, Arjun Mukherjee, Bing Liu, Qing Li, Huayi Li, and Xiaotie Deng. Exploiting topic based twitter sentiment for stock prediction. ACL (2), 2013:24–29, 2013.
[8] Xiao Ding, Yue Zhang, Ting Liu, and Junwen Duan. Using structured events to predict stock price movement: An empirical investigation. In EMNLP, pages 1415–1425, 2014.
[9] Xiao Ding, Yue Zhang, Ting Liu, and Junwen Duan. Deep learning for event-driven stock prediction. In International Conference on Artificial Intelligence, 2015.
[10] Xiao Ding, Yue Zhang, Ting Liu, and Junwen Duan. Knowledge-driven event embedding for stock prediction.
本期责任编辑:张伟男
本期编辑: 施晓明
“哈工大SCIR”公众号
主编:车万翔
副主编: 张伟男,丁效
责任编辑: 张伟男,丁效,郭江,赵森栋
编辑: 李家琦,施晓明,张文博,赵得志
长按下图并点击 “识别图中二维码”,即可关注哈尔滨工业大学社会计算与信息检索研究中心微信公共号:”哈工大SCIR” 。