文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.190031
中文引用格式: 肖亭,林玲,,黃永峰. 一種基于股票情感分析的股市趨勢預測方法[J].電子技術應用,,2019,45(3):13-17.
英文引用格式: Xiao Ting,,Lin Ling,,Huang Yongfeng. A stock market trend forecasting method based on stock sentiment analysis[J]. Application of Electronic Technique,2019,,45(3):13-17.
0 引言
隨著互聯(lián)網(wǎng)技術及應用的飛速發(fā)展,互聯(lián)網(wǎng)用戶人數(shù)在急劇增長,。根據(jù)中國互聯(lián)網(wǎng)絡信息中心發(fā)布的第四十次統(tǒng)計報告表明[1]:到2017年6月份為止,,中國的互聯(lián)網(wǎng)網(wǎng)民已經(jīng)達到了7.5億。相比于2016年增加了近2 000萬人,。特別是隨著Web2.0技術的發(fā)展和完善,微博,、微信,、論壇等新型社交媒體的出現(xiàn),網(wǎng)民可以在這些媒體表達自己對某事件,、人物和產(chǎn)品的觀點,、態(tài)度和看法等?;ヂ?lián)網(wǎng)成為人類有史以來最大的“信息集散地”,,也是人們發(fā)表觀點最廣泛的“思想自由地”,。因此,分析和掌握這些網(wǎng)絡評論中蘊含的豐富情感對預測分析具有重要的作用,。例如,,通過對在線商城上用戶對產(chǎn)品的評論進行情感分析,可以讓商家更好地了解商品的優(yōu)缺點以及用戶對商品的喜好情況,,針對商品存在的缺陷和不足進行改進,,提升產(chǎn)品質(zhì)量和價值。
我國股票市場經(jīng)過了二十多年的飛速發(fā)展,,股市的硬實力已經(jīng)進入國際先進行列,,但軟實力還有待改進。例如,,投資者不夠重視或無法獲取大盤整體預期走勢以及公司主體的發(fā)展趨勢,,主要依靠各路小道消息,導致股票市場各類渠道的消息五花八門,、真假難辨,,對股票市場產(chǎn)生了一定的負面影響,而網(wǎng)民對股市或某只股票的網(wǎng)絡評論觀點在很大程度上反映了股市行情,,也影響著股市漲跌,。因此,如何快速高效地分析網(wǎng)民對股市態(tài)度和觀點對股市預測具有很大指導意義,。特別是隨著最近幾年人工智能技術的發(fā)展,,學術界和投資行業(yè)已經(jīng)高度重視采用網(wǎng)絡股票評論的情感分析技術來為股市行情趨勢預測提供信息支撐。
1 相關研究工作
目前,,網(wǎng)絡文本情感分析方法主要分為兩大途徑,,無監(jiān)督情感分析方法和有監(jiān)督情感分析方法[2]。在2002年PANG等學者首次采用電影評論數(shù)據(jù)建立了使用機器學習的有監(jiān)督情感分類方法,。他分別使用了支持向量機(SVM),、樸素貝葉斯(NB)、最大熵(ME)分類器,,二情感分類特征主要采用情感詞頻[3],。實驗表明基于機器學習的有監(jiān)督分類結(jié)果準確率要高于基于傳統(tǒng)的無監(jiān)督方法。文獻[4]也提出了一種結(jié)合SVM和NB分類器的新模型(NBSVM),,這種新的模型在多個數(shù)據(jù)集都取得了很好的分類效果,。有監(jiān)督網(wǎng)絡評論情感分類方法是基于標注訓練集語料來進行評論分類的,而標注的語料具有領域依賴性,,因此有監(jiān)督網(wǎng)絡評論情感分類效果的好壞與文本領域有直接的關系,。在一個領域標注的訓練集訓練的分類器很可能在另一個領域分類效果并不好。所以,有監(jiān)督情感分類方法需要在不同領域標注大量不同的訓練集,,才能取得比較好的分類效果,。但是,在眾多領域都標注大量訓練集是一項十分困難的事情,,需要消耗大量的人力物力,,已經(jīng)成為有監(jiān)督情感分類的瓶頸。
為了解決不同領域都需要標注大量不同訓練集的問題,?;谝?guī)則方法的無監(jiān)督網(wǎng)絡情感分類越來越受到專家學者的重視。這類方法主要是采用正負情感詞典作為種子詞典,,在情感詞典中匹配情感詞的極性,,然后通過相關規(guī)則對網(wǎng)絡評論進行分類。其中,,HU M和LIU B在研究評論情感分類中利用種子情感詞典來進行句子的情感分類,。他們分別找到網(wǎng)絡評論中正向情感詞的個數(shù)和負向情感詞的個數(shù),然后用正向情感詞個數(shù)減去負向情感詞個數(shù),。通過比較情感詞個數(shù)的多少來對評論文本進行情感分類[5],。文獻[6]提出基于SentiWordNet情感詞典,然后利用句子中的正向情感分數(shù)減去負向情感分數(shù)得到的總的分值作為情感分類的標準,。KU L W,、LIANG Y T等提出了一種基于“字袋”新的情感分類方法,該方法在進行情感極性判別的同時,,還可以計算主觀文本的情感強度[7],。
另外,最近幾年也出現(xiàn)很多采用文本情感分析方法來預測股市趨勢的研究成果,。目前的大量研究成果表明:人的經(jīng)濟決策很大程度上受到感情因素的影響,,通過對人的情感分析,能夠預測近期的相關股票指數(shù),、價格波動[8],。例如,BOLLEN等人通過對大量的Twitter消息進行情感分析(例如積極,、消極,、冷靜等),對股票指數(shù)進行預測,。實驗數(shù)據(jù)證明通過Twitter上的感情分析對Dow Jones Industrial Average指數(shù)進行預測,,準確率達到了86.7%。Johan采用通過GPOMS的方法,,將人的情緒分為冷靜,、警覺、自信,、活力,、友善、高興等6個維度,,通過比較不同維度的感情與股票價格間的格蘭杰因果關聯(lián),。在2014年,Gang和Tianyi等人進一步根據(jù)情感分析,,給出了具體的投資策略,。他們結(jié)合投資平臺SeekingAlpha以及StackTwits,采用建立情感字典的情感極性分類方法,,對相應的股票未來價格進行預測分析[9],。而且針對不同的投資需求,給出了相應的投資策略,。通過8年的投資模擬,,最終收入為108%,相比之下S&P 500指數(shù)在這八年間變?yōu)榱?7.8%,。
2 股市評論情感分析系統(tǒng)的架構(gòu)設計
2.1 架構(gòu)設計
目前,,互聯(lián)網(wǎng)集聚了不同層次用戶對某些股票或股市的評價和趨勢預測的文本,這些文本包含了用戶的觀點和態(tài)度,。因此,,通過分析這些股評文本,對某只股評或整個股市漲落趨勢研判具有一定的指導意義,。為此,,論文設計了一種基于股市評論無監(jiān)督文本情感分類方法來預測股市趨勢的分析系統(tǒng)框架,如圖1所示,。股市預測系統(tǒng)整體框架分為5個部分:(1)股評數(shù)據(jù)的采集,;(2)股評文本數(shù)據(jù)的清洗與預處理;(3)股評文本的情感極性檢測,;(4)股市趨勢預測模型,;(5)預測結(jié)果分析。
其中,,股評文本數(shù)據(jù)采集分為兩部分,,股評主觀文本數(shù)據(jù)采集和股票歷史價格數(shù)據(jù)的采集。其中,,股評文本非結(jié)構(gòu)數(shù)據(jù)的采集主要是通過網(wǎng)絡主題爬蟲來采集,;而股票的歷史價格等結(jié)構(gòu)化數(shù)據(jù)主要是通過調(diào)用Yahoo!Finance API下載。Yahoo!Finance API 提供了一個獲取股票數(shù)據(jù)價格的接口,,通過設置股票名稱,,查詢?nèi)掌诘膮?shù)即可獲得相應時間內(nèi)的所有股票交易數(shù)據(jù),。
數(shù)據(jù)清洗和與預處理主要是針對股評文本的非結(jié)構(gòu)數(shù)據(jù)。清洗主要是對噪聲大的股評文本數(shù)據(jù)進行過濾,,同時,,重點選取股票專業(yè)人士對股市的觀點文本數(shù)據(jù)。預處理主要是對清洗后的股評文本進行信息抽取,,主要提出文章id,,作者,標題,,發(fā)表日期,,涉及股票,文章內(nèi)容,,以及文章的網(wǎng)址信息,。
通過對股評數(shù)據(jù)采集、清洗和預處理后,,分別保存在文件系統(tǒng)(非結(jié)構(gòu)的文本數(shù)據(jù))和關系數(shù)據(jù)庫(結(jié)構(gòu)化數(shù)據(jù))中,。然后,對歷史數(shù)據(jù)的每篇股評文章進行情感極性判別,,將股評的情感極性判別結(jié)果輸入到股市預測模型中,,計算在指定的時間窗口中某只股票或整個股市的上漲或下降趨勢。最后,,結(jié)合股票在一段時間后的實際價格波動趨勢對預測的準確率進行評測,。通過股評的預測準確率統(tǒng)計,對每個作者的預測準確性進行計算,。根據(jù)歷史數(shù)據(jù)的預測準確性,,篩選預測較準的作者所撰寫的股票評論,形成閉路分析系統(tǒng),,通過優(yōu)化股票文本采集和清洗環(huán)節(jié)的算法,,進一步提高系統(tǒng)股市預測的準確性。
2.2 股評文本情感極性分析方法
從上述股票趨勢分析系統(tǒng)框架結(jié)果設計可以看出,,系統(tǒng)最重要的模塊之一就是對股票文本數(shù)據(jù)的情感極性分析,。論文提出了基于股市領域情感詞典的無監(jiān)督文本極性分析方法。該方法采用句法規(guī)則和情感詞頻統(tǒng)計相結(jié)合的情感極性判別算法,。具體算法過程如圖2所示,。
在上述股票文本的情感極性分析方法中,需要區(qū)分股評是針對整個股市的趨勢預測還是針對某只具體股票趨勢的預測,。因此,,在前面的預處理過程中,會根據(jù)股評文本標題中的include,,about標簽內(nèi)容,,獲取股評文本涉及的股票名稱,,然后,通過識別的股票名稱對股票文本進行段落劃分,。劃分方法是將文本中先后出現(xiàn)不同股票名稱之間的文本作為一個具體股票評論的段落,,段落股票標簽以前一支股票名稱為準。按此方法,,可以將一篇涉及多個股票的股評劃分為多個對應單一股票的股票段落。預處理后的整篇文章被劃分為多個段落,,每個段落只對應一支具體股票,,從而支撐論文對單只股票的分析與預測。 在股評段落劃分之后,,進入相應的股票文本極性分析階段,。具體算法如下:
(1)統(tǒng)計正負向詞匯、詞組,、句子頻率
論文對股票文本段落逐句進行正負項詞匯的詞頻統(tǒng)計,。同時,針對常見股市領域詞組,,統(tǒng)計特定詞組搭配,。通過手工標定,將詞組前后兩個詞分別定義正負向極性,。通過負負為正的規(guī)則,,最后得出詞組感情極性。例如,,其中具體加入詞組如下:
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′]
然后,,按照句子中的正負向詞匯數(shù)量以及正負向詞組數(shù)量的數(shù)量關系,,判斷整句話的情感極性。對于文章整體,,通過將詞匯,、詞組以及句子的正負傾向數(shù)相加,根據(jù)式(1)計算出情感分數(shù),。
其中,,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)判斷文章是否有結(jié)論性總結(jié)段落
通過大量實驗數(shù)據(jù)分析發(fā)現(xiàn),,許多股評文本在對股票進行分析時,,往往使用先抑后揚的寫作方式,或者先揚后抑的寫法,。此類評論文本的情感極性一般與最后總結(jié)性段落持有相反極性,。因此,論文在分析股評文本時需要重點分析總結(jié)性段落,。這些總結(jié)性段落有簡單明了的特點,,觀點也很直接、鮮明,。所以,,論文在對股評極性分析時,還需要判斷股評文章是否有結(jié)尾段,,如果有結(jié)尾段,,就加大權重來計算結(jié)尾段的情感極性分數(shù),把該總結(jié)性段落的情感分數(shù)加權計算到最后的股評情感極性分數(shù)中,。實驗表明,,這樣能有效提高最后的情感分析準確率。
2.3 股票趨勢的分析模型
在獲得股評文本情感極性之后,,如何進一步預測某些股票在今后的上漲或下跌趨勢,?這需要依靠股票趨勢的分析模型,,如圖3所示。股票趨勢可能受許多因素的影響,。在本文中,,重點考慮兩方面因素:一是股票專業(yè)人士的觀點,二是預測時的時間窗口選擇問題,。
因為不同股評專業(yè)人士對股市知識儲備,、對股市信息理解和對股市判別能力的不同,可能造成他們對股票的預測能力也有差異,。因此,,論文提出的股票趨勢分析模型引入不同的權重來區(qū)別不同股票作者的預測能力差異。通過歷史股評與歷史股票價格的對比,,計算股票作者對未來股價變化趨勢預測的準確率,。篩選預測準確率大于50%的股評作者。另外,,通過比較股評情感傾向時間序列與股價序列間的皮爾遜因果系數(shù),,獲取預測準確度最高的預測時間窗口。將時間窗口t天后的股票價格與股評當日的股評價格進行比較,,判斷股票價格上升或者下降情況,,并與股評情感傾向分析進行比對。若股評情感傾向性為積極(消極),,且股票價格上升(下降)則計預測正確一次,,否則計預測錯誤一次。如果股評發(fā)表日期不為交易日,,則使用過去最近的股票價格為計時價格,。若最近的股票價格距離當前時間超過三日,或者t至t+3日內(nèi)也不存在股票交易數(shù)據(jù),,則舍棄該次預測,。
股票預測模型基本思想是:比較情感分析時間序列以及股票價格時間序列間的皮爾遜相關系數(shù),以及直接比較預測未來股票變化趨勢與實際變化是否相同,。此處只考慮股票趨勢的變化,,不考慮價格變化幅度,并且和股評發(fā)表日期的一小段時間后的股票價格波動進行對比,。這里只考慮價格上升或者下降的趨勢預測準確率,,對股票價格的具體波動大小暫且不考慮。另一方面,,對于股票價格數(shù)據(jù)進行篩選后,,同樣對股評進行情感分析。并且由該情感傾向,預測一段時間后的股票上升或者下降趨勢,。系統(tǒng)通過使用歷史的股票價格數(shù)據(jù)和股票情感極性分析結(jié)果來學習最佳預測時間窗口和不同專業(yè)股評人士的權重,。通過學習到根據(jù)不同專業(yè)人士的股評情感分析結(jié)果,采用預測精度分析函數(shù)F(x)就可以確定某股票在指定的時間窗口下的上漲或下降趨勢,。
其中,,xi代表專家發(fā)表的股評情感極性(1表示支持漲,-1表示支持跌),,wi表示專家股評的權重,。
3 實驗結(jié)果與分析
3.1 實驗數(shù)據(jù)集
論文采用的股評數(shù)據(jù)來源選擇Seeking Alpha 網(wǎng)站,Seeking Alpha網(wǎng)站創(chuàng)建于2004年,,是一個以大眾為基礎,,為金融市場提供服務的網(wǎng)站平臺。股票文章內(nèi)容覆蓋了股票,、投資基金,、投資策略等,內(nèi)容全面廣泛,。股票作者主要是一些投資或者企業(yè)專家,,且規(guī)模較大;同時,,Seeking Alpha上專業(yè)投資人的分析預測也更加權威,,歷史上曾多次預測或者推動了股市趨勢,。因此,,論文選擇從Seeking Alpha網(wǎng)站平臺上2005年至2015年的所有股評數(shù)據(jù)。2005至2014年的股評數(shù)據(jù),,在實驗中作為歷史數(shù)據(jù)處理,,2015年的股評數(shù)據(jù),在實驗中作為未來預測數(shù)據(jù)處理,。獲取完股評文章后,,對數(shù)據(jù)進行預處理,提取文章id,、作者,、標題、發(fā)表日期,、涉及股票,、文章內(nèi)容以及文章的網(wǎng)址信息。
3.2 實驗結(jié)果分析
論文通過人為標定的方法判斷情感分析的準確率,,標定結(jié)果樣例如表1所示,。標定過程共邀請文本3名情感分析研究方向研究生對隨機抽取的60篇股評文章,240支股票進行情感分析。最終,,比對人為標定結(jié)果與情感分類結(jié)果,,情感分析預測準確率為81.4%。文獻[8]同樣對股評數(shù)據(jù)進行了情感分析,,它的分析準確率最高為84.8%,。因此,在情感分析預測方面,,預測的準確率已基本達到要求,。
(1)股票上漲與下跌趨勢預測精度分析
根據(jù)股票行業(yè),選取了8個行業(yè)板塊的股票,,每類選取了15支股票,,進行預測,選取代表股票如表2所示,。每支股票用其縮寫表示,,此縮寫與Yahoo!Finance上每支股票的標識一致。
通過采用股票歷史價格數(shù)據(jù)與基于股票情感極性分析的預測結(jié)果進行比較分析,,計算出股票預測分析精準度等指標,。論文選擇了3個指標,作為實驗結(jié)果的評判標準,。這3類指標分別是預測結(jié)果的準確率P,,評判分類結(jié)果的召回率R以及綜合考量精確率和召回率的F1。實驗結(jié)果如表3所示,。從實驗結(jié)果可以看出,,預測性能與股票類別差異不是很大。
(2)預測結(jié)果與預測時間窗口的關系分析
根據(jù)網(wǎng)絡文本情感分析結(jié)果,,預測一段時間后的股價變化,。通過歷史數(shù)據(jù)的情感分析時間序列以及股票價格變化序列,在假定選取時間窗口為t后,,計算兩者間的皮爾遜關聯(lián)系數(shù),。論文分別嘗試了時間窗口t=3,7,,15,,30等多種窗口長度,分別計算出相應的皮爾遜系數(shù),,以及預測準確率,,如圖4所示:圖4(a)為皮爾遜系數(shù),圖4(b)為預測準確率,??梢钥闯觯斶x取時間窗口t=15時,股評的情緒傾向性與股票價格的變化趨勢關聯(lián)最大,,且預測準確率最高,。
4 結(jié)論
論文研究通過分析不同網(wǎng)民發(fā)布股評的情感極性來預測股票上漲與下跌趨勢。針對情感字典分析對領域依賴性問題,,提出了一致綜合金融詞組詞典和結(jié)尾段加權的情感分析方法,,能有效提高情感分析準確度。另外,,論文還提出了一種加窗的股票預測方法,,該方法根據(jù)分析得到的情感分析時間序列,通過比較分析某些股票的歷史價格數(shù)據(jù),,計算出預測事件窗口的最佳值,。實驗結(jié)果表明,預測時間窗口為15天左右,,股票價格趨勢變化與股評的情感傾向關聯(lián)性強,。針對特定股票的股票情感分析結(jié)果較于整體股市的評價預測效果更好些。未來工作可以將股票的金融特點與情感分析的股票預測性質(zhì)相結(jié)合,,發(fā)現(xiàn)更好的預測方法,。
參考文獻
[1] 中國互聯(lián)網(wǎng)絡信息中心(CNNIC),第40次中國互聯(lián)網(wǎng)絡發(fā)展狀況統(tǒng)計報告[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.廣東外語外貿(mào)大學 金融學院,,廣東 廣州510006)