龍 文,田嘉祺,毛元豐
中國科學院大學 經(jīng)濟與管理學院,北京 100190
隨著國民經(jīng)濟的發(fā)展和金融市場的完善,越來越多的人開始進行金融投資,其中股票成為重要投資工具。如何根據(jù)已有信息判斷股價趨勢并進行相應(yīng)的交易操作是獲得超額收益的關(guān)鍵。按來源,信息可以分為內(nèi)幕信息和公開信息,利用內(nèi)幕信息從事證券交易活動違反法律法規(guī),假設(shè)市場中不存在內(nèi)幕交易,那么信息的重要來源之一就是公開的財經(jīng)新聞。
學術(shù)界關(guān)于新聞對股價影響的研究已有50年歷史,很多研究都證實了新聞對股票價格和股票收益存在影響[1-6]。新聞可以被劃分為多個層級,如公司新聞、行業(yè)新聞和市場新聞[7],其中市場新聞和行業(yè)新聞屬于共性信息,公司新聞屬于特性信息。研究由早期對市場新聞和行業(yè)新聞的關(guān)注,逐漸轉(zhuǎn)向?qū)€股新聞的關(guān)注,Durnev等[8-9]認為,股價變動與市場平均變動存在的較大差異主要是由個股信息導致的,Li等[10]認為,媒體對某一公司基本信息的報道會顯著增加投資者的交易量;汝毅等[11]認為,違規(guī)公司的事前新聞報道存在不對稱性的雙向聲譽溢出效應(yīng)。近年來,國外學者開始關(guān)注多個層面的財經(jīng)新聞,Shynkevich等[12]使用個股新聞、行業(yè)新聞等五種類別的新聞進行了系統(tǒng)性研究,發(fā)現(xiàn)基于五類新聞的預測在預測精度和交易回報率上表現(xiàn)最優(yōu)。但國內(nèi)學者很少對新聞層次進行區(qū)分,研究集中于個股新聞[13-14],或者按時間段或關(guān)鍵詞[15-17]爬取全部新聞。雖然有研究劃分了個股新聞與行業(yè)新聞,如徐偉等[18]對比個股新聞和行業(yè)新聞對股價的影響,發(fā)現(xiàn)個股新聞的影響更大,但研究對象仍是單層級的新聞,缺少多層級新聞的綜合利用。
從研究方法上看,股價預測的研究起步較早,計量預測模型[19-21]被廣泛應(yīng)用。近年來,文本挖掘和機器學習在股價預測研究中的應(yīng)用增多,隨著一些技術(shù)難題不斷被解決,得出的結(jié)論相對更準確,預測質(zhì)量得到明顯提升,其中支持向量機(support vector machine,SVM)被廣泛使用,其在克服維數(shù)過大和過度擬合學習方面具有優(yōu)勢。Kim[22]基于技術(shù)指標利用支持向量機進行股價預測。黃進等[23]用結(jié)合了依存句法支持向量機預測金融領(lǐng)域的的輿情。戴德寶等[24]構(gòu)建上證投資者情緒綜合指數(shù),使用支持向量機預測股指走勢。SVM有多種核函數(shù),針對如何充分利用各種核函數(shù)的特點以提高學習效果這一問題,多核學習模型產(chǎn)生并成為核方法研究的熱點。與SVM相比,多核學習(multi-kernel learning,MKL)模型的靈活性更強,理論和實證研究已經(jīng)證明其在決策函數(shù)的可解釋性、核函數(shù)的選擇、預測精度的提升等方面具有優(yōu)勢[25-26]。Shynkevich等[12]以及Nam等[27]基于MKL模型訓練新聞文本,對股價做出有效預測。
根據(jù)以上文獻,新聞對股價存在影響,且被認為是一項很重要的信息源并用于股價預測。而新聞具有多個層級,但國內(nèi)學者很少對其關(guān)注。基于此,本文從新聞層級性入手,研究多層級新聞體系對股價趨勢的預測作用,并以此建立交易策略進行模擬交易判斷其對市場交易行為是否具有實際價值。同一經(jīng)濟體下同一行業(yè)的公司面臨的法律環(huán)境和市場供需環(huán)境相同,信息一致,且經(jīng)營情況具有強相關(guān)性[28]。因此,本文在個股新聞的基礎(chǔ)上加入子行業(yè)新聞和行業(yè)新聞構(gòu)建多層級新聞集。在方法方面,選擇MKL模型以更好地利用各層級新聞包含的信息。
本文可能的貢獻有兩個方面:一是多層級新聞體系的構(gòu)建,本文用個股新聞、子行業(yè)新聞和行業(yè)新聞構(gòu)成一個完整的立體新聞系統(tǒng),補充了該領(lǐng)域的國內(nèi)研究;二是結(jié)合了新聞信息集、模型兩個維度,通過實驗發(fā)現(xiàn)引入多層級新聞的MKL模型預測準確率最高,且其在實際投資活動中具有重要價值。
本文選擇醫(yī)療行業(yè)為樣本行業(yè),主要原因如下:一是該行業(yè)較為典型,是當前也是未來的熱點行業(yè)之一;二是該行業(yè)有規(guī)范的行業(yè)及子行業(yè)劃分標準,便于構(gòu)建多層級新聞體系;三是該行業(yè)新聞報道數(shù)量較為充足,能夠滿足研究的需要。本文以全球行業(yè)分類標準(GICS)為基礎(chǔ),參考證監(jiān)會行業(yè)分類標準,將醫(yī)療行業(yè)劃分為醫(yī)療保健用品、保健護理服務(wù)、生物科技、制藥這四個子行業(yè)。
本文從醫(yī)療行業(yè)中選取15支新聞數(shù)量最多且覆蓋全部子行業(yè)的股票作為研究樣本,樣本股票情況見表1。
表1 樣本股票Table 1 Sample stocks
數(shù)據(jù)包括股價數(shù)據(jù)和新聞數(shù)據(jù),研究期間為2013年8月至2017年3月。股價數(shù)據(jù)包括樣本股的開盤價與收盤價,用以判斷股價趨勢,數(shù)據(jù)來源為wind。新聞數(shù)據(jù)是利用爬蟲程序在新浪財經(jīng)網(wǎng)站爬取的樣本股的個股新聞及當天對應(yīng)的子行業(yè)新聞及行業(yè)新聞,爬取內(nèi)容包括新聞的標題、日期、正文等,共獲得18 000余條個股新聞、近10 000條子行業(yè)新聞和34 000余條行業(yè)新聞。由于我國股市在交易日的15點停盤,因此本文認為15點之后的新聞對當天的股價不產(chǎn)生影響,將本交易日15點之后的新聞歸入下一個交易日的新聞文本之中。周末、節(jié)假日等休市日的新聞,使用同樣的方法進行處理。
本文使用Python中文分詞工具“Jieba”對爬取的新聞文本進行分詞處理分詞,提取文本對應(yīng)的特征詞條。分詞后導入停用詞詞典,篩掉停用詞,降低噪音影響。之后,運用TF-IDF方法提取特征向量并計算權(quán)重,該方法常用于文本挖掘。TF為詞頻,用于計算該詞描述文檔內(nèi)容的能力;IDF為逆文檔頻率,用于計算該詞區(qū)分文檔的能力,兩者的表達式如下:
其中ni,j是詞ti在文件dj中的出現(xiàn)次數(shù),∑knk,j是文件dj中所有詞匯出現(xiàn)次數(shù)的總和。
其中,|D|是語料庫中的文件總數(shù),|{j:ti∈dj}|表示包含詞語ti的文件數(shù)目,為防止分母為0,通常使用(1 +| {j:ti∈dj}|)。
IF-IDF為TF與IDF的乘積,某文件內(nèi)的高詞語頻率和該詞語在整個文件集中的低文件頻率可產(chǎn)生高TF-IDF值,即某個詞對文章的重要性越高,它的TF-IDF值就越大。
在提取每篇新聞的特征詞頻并計算權(quán)重后,以當日股價變化作為分類標簽,對每支股票同一天的新聞集合進行訓練,訓練模型為多核學習(MKL)模型。
1.3.1 支持向量機
SVM是90年代中期發(fā)展起來的基于統(tǒng)計學理論的一種二類分類器,它與傳統(tǒng)統(tǒng)計方法的不同在于它以最小化結(jié)構(gòu)風險為原則,在不增加經(jīng)驗風險的前提下,將置信區(qū)間的范圍最大限度地縮小,同時保證樣本預測誤差最小。
SVM的具體原理是在n維空間中找到一個分類超平面,從而將空間上的點分類,分類依據(jù)是最大化預測點距超平面的距離,如果遇到線性不可分的情況,可以利用核函數(shù)將數(shù)據(jù)從低維映射到高維特征空間,將低維特征空間的非線性問題轉(zhuǎn)換成高維特征空間的最優(yōu)線性問題,特征空間由核函數(shù)來定義。另外,核函數(shù)可以在低維空間進行運算,避免了在高維空間中的復雜計算。根據(jù)泛函的有關(guān)理論,只要一種核函數(shù)K(xi,xj)滿足Mercer條件,它就對應(yīng)某一變換空間中的內(nèi)積,即可用核函數(shù)替代內(nèi)積,構(gòu)造優(yōu)化問題如下:
核函數(shù)的選取與構(gòu)造是運用SVM解決實際問題的關(guān)鍵,目前研究中廣泛使用三種形式的核函數(shù),分別是線性核函數(shù)(line)、多項式核函數(shù)(poly)和高斯核函數(shù)(又稱徑向基核函數(shù),簡稱rbf),表達式如下:
其中,Xi、Xj是低維特征向量,γ、r和d是人工設(shè)置的參數(shù),d是一個正整數(shù),γ是正實數(shù),r是非負實數(shù)。
1.3.2 多核學習模型
多核學習模型是由核函數(shù)通過“積運算”或者“線性組合”的方式構(gòu)造而成的。單核函數(shù)有局部性核函數(shù)和全局性核函數(shù)兩類,其中局部性核函數(shù)學習能力強,泛化性能較弱,而全局性核函數(shù)泛化能力強,學習能力較弱,高斯核函數(shù)屬于前者,多項式核函數(shù)屬于后者。本文把這兩類核函數(shù)結(jié)合起來,使用線性核、多項式核和高斯核的線性組合對樣本進行訓練,對每一個核也指定多組參數(shù),將最優(yōu)線性組合結(jié)果作為最終使用的模型。另外,與SVM不同,MKL模型加入學習權(quán)重這個變量,該變量也會影響訓練精度,因此運用核函數(shù)可將特征空間中的數(shù)據(jù)表達問題轉(zhuǎn)換成核權(quán)重的選取問題。三個基核函數(shù)表達式同式(5)~(7),多核學習模型見式(8):
其中,wj表示各基核函數(shù)的權(quán)重。
本文根據(jù)股價漲跌為新聞打標簽:如果價格上漲,那么當天的新聞被打上正標簽,否則就打上負標簽。將每支股票同一天的所有新聞作為輸入,當日股價的漲跌作為標簽,一同進入模型進行訓練,其中80%的樣本為訓練集,剩余20%為測試集。
本文選擇預測準確率作為評估分類器性能的標準,預測準確率用正確預測的樣本占所有樣本的比重表示,計算公式如下:
其中,TP表示標簽為正樣本,預測也為正樣本的數(shù)目;TN表示標簽為負樣本,預測也為負樣本的數(shù)目;FP表示標簽為負樣本,但預測為正樣本的數(shù)目;FN表示標簽為正樣本,但預測為負樣本的數(shù)目。
首先考察個股新聞的預測能力,運用SVM對個股新聞進行訓練,預測準確率見表2,其中線性核函數(shù)的預測準確率為0.594,多項式核函數(shù)的預測準確率為0.608,高斯核函數(shù)的預測準確率為0.602,均大于0.5。由此可見,個股新聞對股價趨勢的預測有一定的作用。
表2 基于不同新聞集各核函數(shù)的預測準確率Table 2 Prediction accuracies of kernel functions based on different news sets
2.2.1 基于SVM模型的訓練
在對個股新聞進行訓練的基礎(chǔ)上,逐步加入子行業(yè)新聞和行業(yè)新聞進行訓練,其預測準確率見表2。
由表2,對于同一新聞集,線性核的預測精度最差,多項式核最好,高斯核居中;逐步增加子行業(yè)新聞和行業(yè)新聞能提高預測精度,其中增加行業(yè)新聞對預測準確率的提升作用較大,增加子行業(yè)新聞對預測準確率的提升作用相對較小。
2.2.2 基于MKL模型的訓練
考慮到各層級的新聞具有不同的內(nèi)容和特征,本文分別運用不同的核函數(shù)訓練多層級新聞集中每一層級的新聞,以考察使用多種核函數(shù)是否能提升預測準確率,預測準確率如圖1所示,圖中大立方體中的每一個小立方體代表新聞和核函數(shù)的組合,共有33=27組預測結(jié)果。圖中包含27個立方體,代表了在多層級新聞集中利用三種核函數(shù)訓練三個層級新聞,其顏色深淺代表預測準確率的高低,顏色越深表明該組合的預測準確率越高。
圖1 基于多層級新聞的各核函數(shù)的預測準確率Fig.1 Prediction accuracies of kernel functions based on multi-level news set
由圖1,從樣本總體來看,三個層級的新聞均使用多項式核函數(shù)訓練的預測準確率最高。雖然這個結(jié)果沒有體現(xiàn)出采用不同核函數(shù)的優(yōu)勢,但進一步對具體股票進行分析發(fā)現(xiàn),在15支樣本股中,有9支股票(片仔癀、上海萊士、天目藥業(yè)、愛爾眼科、中源協(xié)和、沃森生物、白云山、云南白藥、中國醫(yī)藥)使用不同的核函數(shù)訓練三層級新聞,比使用同一種核函數(shù)訓練的準確度有明顯提升。這在一定程度上映證了不同層級的新聞確實具有不同的特征,利用不同的核函數(shù)有區(qū)分地進行訓練有機會提高預測準確性。
為更好地利用不同層級的新聞,本文進一步在各層級新聞內(nèi)部使用MKL模型。由表2,在三種函數(shù)中,線性核函數(shù)表現(xiàn)最差,而線性核函數(shù)被證明是高斯核函數(shù)的特殊形式[29],因此此處使用的多核學習模型中只考慮高斯核函數(shù)和多項式核函數(shù)。以1%為步長逐漸調(diào)整不同層級新聞的比重以及不同層級新聞中兩種核函數(shù)的比重,最優(yōu)模型的預測準確率達到70.35%,該模型中各層級新聞和各核函數(shù)所占比例如表3所示。
表3 多核學習模型中各層級新聞、各核函數(shù)的比重Table 3 Ratios of news and kernel functions in multi-kernel learning model 單位:%
由表3進一步看到,在新聞層級方面,個股新聞和行業(yè)新聞所占權(quán)重相對較大,合計超過80%,子行業(yè)新聞的權(quán)重相對較小;在核函數(shù)類型方面,多項式核函數(shù)的比重略大于高斯核函數(shù)。
將以上實驗的預測準確率由小到大排序,如圖2所示。不加*表示只使用個股新聞,加*表示使用個股新聞、子行業(yè)新聞和行業(yè)新聞構(gòu)成的多層級新聞體系。無論使用何種核函數(shù),相比個股新聞,使用多層級新聞集都能提升預測準確率,其中使用MKL模型可以使預測準確率得到最大程度的提升,這映證了MKL模型在實際應(yīng)用的優(yōu)勢。
圖2 所有實驗的預測準確率Fig.2 Prediction accuracies of each experiments
為檢驗多層級新聞集預測的穩(wěn)定性,在15支樣本股票中隨機抽取兩個子集,每個子集均包含10支股票:子集1包括同仁堂、片仔癀、上海萊士、中源協(xié)和、沃森生物、中恒集團、云南白藥、仁福藥業(yè)、康美藥業(yè)和中國醫(yī)藥;子集2包括片仔癀、天目藥業(yè)、中源協(xié)和、沃森生物、白云山、中恒集團、云南白藥、復星藥業(yè)、康美藥業(yè)和海普銳,然后使用MKL模型對兩個子集進行訓練。
兩個子集的最高預測準確率分別為71.12%和70.01%,表現(xiàn)較為穩(wěn)定,其各層級新聞和各核函數(shù)比例如表3所示,總體來看,核函數(shù)和各層新聞的比例結(jié)構(gòu)相似:多項式核函數(shù)比重略大于高斯核函數(shù);個股新聞和行業(yè)新聞比重較大,各占40%左右,子行業(yè)新聞的比重較小,占20%左右。這一結(jié)果與2.2節(jié)對樣本總體進行訓練得到的結(jié)果基本一致。
表4對比了兩個抽樣子集與總體的預測準確率,在多層級新聞體系下,雖然三個集合在核函數(shù)分配比例存在一定差異,但預測準確率基本穩(wěn)定在70%,相比表現(xiàn)最好的核函數(shù)——多項式核函數(shù),MKL模型的預測準確率有明顯提升。
表4 各樣本下基于多層級新聞的預測準確率Table 4 Prediction accuracies based on multi-level news under each sample
根據(jù)以上實證結(jié)果,各層級新聞都能在股價預測中發(fā)揮作用,用MKL模型訓練多層級新聞體系的預測準確度最高。因此,本章將基于該提升作用,利用上述模型構(gòu)建交易策略,并通過模擬交易,檢驗其在實際應(yīng)用中的有效性。
本節(jié)首先考察新聞對未來股價趨勢的預測能力隨時間的變化情況,以便進一步建立交易策略??紤]到新聞對股價的影響時效相對較短,故本文只對比了當日新聞對當日股價趨勢、后一日股價趨勢及后兩日股價趨勢的預測準確率。針對多層級新聞體系,分別采用SVM模型和MKL模型進行訓練,結(jié)果如表5所示。需說明的是,根據(jù)表5,三個基核中,多項式核函數(shù)的預測效果最好,故本節(jié)使用的SVM模型基于多項式核。
表5 當期新聞對多時期股價趨勢的預測準確率Table 5 Prediction accuracies of current news on multi-period stock price trend
由表5,MKL模型的預測準確率優(yōu)于基于多項式核函數(shù)的SVM模型。滯后期股價趨勢的預測準確率均大于50%,與當期相比,滯后期股價趨勢的預測準確率有一定程度的下降,滯后一期的準確率下降相對較小,不到4%,滯后兩期下降較為明顯。因此本節(jié)選用多核學習模型基于當天新聞預測滯后一天的股價趨勢,并根據(jù)預測的股價趨勢進行交易。若預測得出后一日股價上升,則在當日收盤時買入并在第二日收盤時賣出;若預測后一日股價下降,則不進行操作。因為該模型為理論模型,所以暫不考慮交易費用的問題。
為了更好地展示基于多層級新聞的MKL模型的優(yōu)越性,每支股票都顯示三種日均收益情況,分別是一直持有該股票的日均收益率,使用SVM(多項式核函數(shù))模型訓練個股新聞并按照預測結(jié)果操作的日均收益率,使用MKL模型訓練多層級新聞體系并按預測結(jié)果操作的日均收益率,如圖3所示。
圖3 樣本內(nèi)股票交易策略收益率Fig.3 Return rates of stock trading strategy in sample
由圖3,在不考慮交易費用的前提下,對樣本內(nèi)全部股票,使用基于個股新聞的多項式SVM模型和基于多層級新聞的MKL模型都能提升股票收益率。較買入并一直持有的策略,前者將日均收益率平均提升0.04個百分點,最高提升了0.17個百分點;后者將日均收益率平均提升近0.07個百分點,最高提升了0.18個百分點,即后者的提升能力高于前者,這表明在市場交易中,使用MKL模型訓練多層級新聞預測股價趨勢對獲得較高收益有實際價值。
為進一步檢驗模型的有效性,在樣本外本文選取四支同行業(yè)的股票(東阿阿膠000423.SZ、長春高新000661.SZ、福瑞股份300049.SZ、貴州百靈002424.SZ),將它們基于上述MKL模型進行預測,并根據(jù)預測的股價漲跌情況,運用3.1節(jié)的交易策略進行模擬操作。
四支樣本外股票的收益率情況如圖4所示,對于樣本外股票,基于個股新聞的多項式SVM模型和基于多層級新聞的MKL模型的交易操作同樣對收益率有提升作用,其中前者平均將日均收益率提升近0.04個百分點,最高提升了0.11個百分點;后者平均將日均收益率提升0.07個百分點,最高提升了0.12個百分點,與樣本內(nèi)股票相同,后者對收益率的提升程度更高。對比圖3和圖4發(fā)現(xiàn),樣本內(nèi)與樣本外股票日均收益率的提升程度非常接近,其中針對多層級新聞的MKL模型對收益率的提升程度更大,這說明在行業(yè)內(nèi)MKL模型具有普適性,能夠使樣本實現(xiàn)最優(yōu)預測的模型同樣可以提升同行業(yè)樣本外股票的收益率,這進一步說明了引入多層級新聞的MKL模型對交易策略構(gòu)建的有效性。
圖4 樣本外股票交易策略收益率Fig.4 Return rates of stock trading strategy outside sample
本文重點關(guān)注多層級財經(jīng)新聞對股價趨勢的預測作用,為充分地利用各層級新聞的特征,運用MKL模型展開實證研究,最終通過構(gòu)建交易策略檢驗其在市場交易中的有效性。
本文發(fā)現(xiàn)不僅個股新聞能在股價趨勢預測中發(fā)揮作用,對應(yīng)的子行業(yè)新聞和行業(yè)新聞也能在股價趨勢預測中發(fā)揮作用;不管是針對個股新聞中還是多層級新聞體系,對各核函數(shù)的比例進行分配,即形成MKL模型,都可以更好地學習和利用文本中的信息;使用多層級新聞體系和MKL模型可以最大化地提升預測準確率,相比只考慮個股新聞的SVM模型,引入多層級新聞的MKL模型將預測準確率提升了10%。此外,較買入并一直持有的交易策略和基于個股新聞的SVM的交易策略,基于多層級新聞的MKL模型的交易策略獲得的收益最高,從而驗證了該方法具有重要的實踐價值。
以上研究結(jié)論對該領(lǐng)域的研究及投資決策具有重要意義,該領(lǐng)域研究中,要注重新聞的層級,全面地掌握各層級新聞,有區(qū)分地處理不同層級的新聞;投資者在進行投資決策時,有必要重視多個層級的新聞,并不只是局限于對目標企業(yè)新聞的搜索與關(guān)注。本研究還有以下不足之處:樣本數(shù)量有限、所選行業(yè)有限等,希望未來得到進一步的完善。