徐凱,趙旋,王杰平,嚴(yán)芬芳,胡文芳
(1.貴州財(cái)經(jīng)大學(xué)信息學(xué)院,貴陽 550025;2.貴州財(cái)經(jīng)大學(xué)大數(shù)據(jù)應(yīng)用與經(jīng)濟(jì)學(xué)院,貴陽 550025)
國內(nèi)A股總市值成長迅速,從20世紀(jì)90年代僅僅24億元,8個(gè)公司上市,GDP占比0.13%,到2020年A股上市公司規(guī)模居世界第二,共計(jì)83.83萬億元,有4112家公司上市,GDP占比增長為66.41%[1]。全球資產(chǎn)和財(cái)富管理規(guī)模,預(yù)計(jì)將從2016年的84.9萬億美元增長到20251年的145.4萬億美元[2]。隨著國內(nèi)、外投資市場的發(fā)展,對投資策略的研究和需求迅速增加。
Fama等人[3]最早提出因子投資模型,通過實(shí)證研究影響美國股市回報(bào)率的因素,發(fā)現(xiàn)市盈率。市值以及市值比這三個(gè)因素會影響美國股票市場的回報(bào)率。大量的投資策略研究基于Fama等人的因子模型。Wendong等人[4]使用遺傳算法對因子特征進(jìn)行加權(quán),分別增大和減少影響較大和影響較小因子的權(quán)重,同時(shí)結(jié)合支持向量機(jī)模型,建立了GA-SVM多因子選股模型。該模型可以識別股價(jià)波動趨勢,通過對中國A股數(shù)據(jù)進(jìn)行模型驗(yàn)證,可以有效識別出股價(jià)的波動趨勢。相關(guān)研究表明,更多的因子有利于提升投資模型的表現(xiàn)。Fama等人[5]進(jìn)一步,采用五因子模型,整合了投資、盈利指標(biāo),研究發(fā)現(xiàn),運(yùn)營盈利能力較高且總資產(chǎn)增長率較低的公司具有高于平均水平的回報(bào)。Chen等人[6]結(jié)合深度信念網(wǎng)絡(luò)和卷積神經(jīng)網(wǎng)絡(luò)的優(yōu)點(diǎn),通過深度信念網(wǎng)絡(luò)構(gòu)建多個(gè)隱藏層,增強(qiáng)模型的學(xué)習(xí)能力,通過卷積神經(jīng)網(wǎng)絡(luò)提升數(shù)據(jù)的特征提取能力,將模型用于預(yù)測股指期貨價(jià)格變動,預(yù)測精度達(dá)到了60%以上。
相關(guān)研究已經(jīng)證明多因子投資模型的有效性,如何更好的選取因子值得進(jìn)一步研究。但多數(shù)的研究提出的因子分析模型往往較為復(fù)雜,可解釋性不夠明確。例如利用支持向量機(jī)或者深度神經(jīng)網(wǎng)絡(luò)進(jìn)行因子分析,往往無法直觀地看出因子對模型的影響。Chen[7]等人利用可解釋性更強(qiáng)的隨機(jī)森林模型,構(gòu)建了結(jié)合隨機(jī)森林模型,以及情感分析的投資模型RF-SA,獲得了比上證指數(shù)更高的收益率。梯度提升樹模型作為一種可解釋較強(qiáng)的機(jī)器學(xué)習(xí)模型,可以有效地對投資因子進(jìn)行分析。本文結(jié)合梯度提升樹和多因子分析模型的優(yōu)點(diǎn),用以解決投資決策問題。首先構(gòu)建出投資因子,然后通過信息增益對因子進(jìn)行排序,對投資因子進(jìn)行排序分析,最后通過梯度提升樹模型對投資標(biāo)的進(jìn)行分類。通過設(shè)計(jì)合理的交易策略,分析近一年半的A股數(shù)據(jù),對3101只股票進(jìn)行了投資分析。和上證指數(shù)的收益相比,本文提出的投資策略收益高出20%,能夠較好的提升投資收益。
信息熵定義如公式(1)所示,可以度量樣本集合純度。若樣本集合A的第i類樣本比例為P i(i=1,2,…,m),則A信息熵IE(A)定義為:
這里信息熵IE(A)值越小,則A純度越高,顯然IE(A)最小值和最大值分別為0和log2m。假設(shè)屬性集為C={a1,a2,…,a N},即對于屬性a,取值有N個(gè),屬性a有N個(gè)分支結(jié)點(diǎn),這些結(jié)點(diǎn)劃分了樣本集A。序號為c的分支結(jié)點(diǎn)定義為Ac。
屬性a的信息增益Gain(A,a)如公式(2)所示。其中分支結(jié)點(diǎn)的權(quán)重為
決策樹屬性劃分選擇通過信息增益評估,如公式(3)所示。通過計(jì)算出最大的信息增益選擇出對應(yīng)的屬性。
使用先驗(yàn)信息來初始化分類器,分類器初始為F0(x),如公式(4)所示,其中訓(xùn)練樣本中的y=1占比為P(Y=1|x)。
損失函數(shù)負(fù)梯度r m,i如公式(5)所示,m=1,2,3,…,M。
最佳擬合值c m,j如公式(6)所示。使用回歸樹擬合數(shù)據(jù)(x i,r m,i),其中i=1,2,3,…,N,第m棵的回歸樹下的葉子結(jié)點(diǎn)為R m,j,其中j=1,2,3,…,J m,J m為第m棵回歸樹葉子結(jié)點(diǎn)數(shù)量。
通過公式(7)計(jì)算出分類器F m(x):
通過公式(8)計(jì)算出最好的分類器F M(x):
分類模型最后的計(jì)算形式如公式(9)所示。
多因子投資模型通過使用多種指標(biāo),用來對投資標(biāo)的進(jìn)行評估,評估指標(biāo)也稱為評估因子。多因子模型假設(shè)投資的收益率,會受到因子指標(biāo)的影響。多因子模型需要先研究因子選取策略,根據(jù)選取的多個(gè)因子,通過設(shè)計(jì)因子分析模型,得到最終的投資標(biāo)的評估結(jié)果。多因子投資模型通過投資標(biāo)的共有的相關(guān)因子,可以建立有效評估模型,可以對眾多投資標(biāo)的按照評估模型的評級進(jìn)行排序,從而組合出最優(yōu)的投資策略。
對于多因子投資模型的建立,首先要選擇有效的因子,在備選的因子里,找到對投資優(yōu)化具有積極作用的因子。然后分析投資因子對投資收益的影響,通過量化投資因子影響,對多個(gè)因子進(jìn)行排序,因子的排序依據(jù)根據(jù)公式(2)的信息增益的計(jì)算方法,換算出對決策樹分裂的權(quán)重。最后通過模型對投資結(jié)果進(jìn)行綜合分析,綜合考慮交易成本,因子的選擇和排序,利用梯度提升樹算法,計(jì)算出投資標(biāo)的是否適合投資,最后確定投資標(biāo)的。
本文投資標(biāo)的以股票為例。首先加載股票數(shù)據(jù),根據(jù)每只股票的因子,結(jié)合梯度提升樹模型,輸入歷史股票價(jià)格來訓(xùn)練模型的參數(shù),評估收益率在10%以上、遠(yuǎn)期20天所有股票的概率。閾值我們定義為0.6,高于閾值則符合投資預(yù)期。如果不符合設(shè)置的條件,就放棄這只股票。
每天都進(jìn)行交易分析,其中持續(xù)持股最多不超過20天,每次買入20%的倉位。持股的止盈和止損點(diǎn)分別進(jìn)行設(shè)置,止盈點(diǎn)為15%,止損點(diǎn)為-5%。最后計(jì)算出所有符合交易條件的股票的概率,對概率大小的進(jìn)行排序,從大到小買入。
3.1.1 數(shù)據(jù)獲取
通過wind數(shù)據(jù)庫,獲取wind股票數(shù)據(jù)。數(shù)據(jù)涵蓋了近一年半的A股數(shù)據(jù),日期從2020年1月1日至2021年8月13日,總共有3101只股票入選股票池,模型訓(xùn)練數(shù)據(jù)從2020年1月1日至2021年4月30日,回測時(shí)間從2021年5月1日至2021年8月13日。股票數(shù)據(jù)主要包括:
(1)股票基礎(chǔ)信息。
(2)日線數(shù)據(jù),含股票的開盤價(jià)、收盤價(jià)、最高價(jià)、最低價(jià)、換手率等。
(3)所有股票的每日漲停跌停情況。
3.1.2 數(shù)據(jù)標(biāo)注
通過標(biāo)注每只股票,我們將投資的選股模型定義為分類問題。這里我們把20天平均最高收益在15%以上,同時(shí)把虧損在-5%以下的股票,標(biāo)注為True,其他的股票標(biāo)注為False。
3.2.1 因子重要性分析
對數(shù)據(jù)進(jìn)行訓(xùn)練后,對特征重要性進(jìn)行分析,圖1為投資因子的重要性排序結(jié)果圖。其中,換手率、個(gè)股成交量的歷史前1天和2天、當(dāng)日最高價(jià)個(gè)股收盤價(jià)歷史前1天、當(dāng)日最低價(jià)、成交量、漲跌停數(shù),重要度比較大。
圖1 投資因子重要度排序結(jié)果
3.2.2 投資收益分析
投資收益(Reurns)通過公式(10)進(jìn)行計(jì)算,其中Pstart和Pend分別是投資模型開始和結(jié)束時(shí)所持有的總價(jià)值。
我們設(shè)定投資的初始資金為10萬元人民幣。在一年半的A股數(shù)據(jù)中,對股票池中的3101只股票進(jìn)行投資分析,交易日期區(qū)間設(shè)置為2021年5月1日到2021年8月13日。
投資收益的情況部分統(tǒng)計(jì)結(jié)果如表1所示。從表1中可以看出,按照投資模型的分析結(jié)果,選擇符合投資條件的股票進(jìn)行持有和賣出,可以有效地篩選出正向收益的股票。同時(shí),由于股票市場具有高風(fēng)險(xiǎn)、高收益的屬性,對于股價(jià)下跌的股票,模型會根據(jù)預(yù)先設(shè)定的止損方案進(jìn)行及時(shí)止損,避免擴(kuò)大損失。
表1 投資收益部分示例表
對投資模型的收益進(jìn)行分析,這里對比的基線為上海證券交易所綜合股價(jià)指數(shù)收益。如圖2所示,投資策略的收益超過了上證指數(shù)。
圖2 投資策略的收益趨勢
從投資策略的收益趨勢圖可以看出,模型在開始的時(shí)候稍好于上證指數(shù)收益,在第10個(gè)交易日到第18個(gè)交易日之間,略低于上證指數(shù)。在第20個(gè)交易日后,和上證指數(shù)相比,策略收益高出接近20%,可以看出模型可以顯著提升投資收益。
本文首先通過信息增益,對投資因子進(jìn)行排序分析,然后根據(jù)預(yù)先設(shè)定的交易策略,結(jié)合梯度提升樹模型,對投資標(biāo)的進(jìn)行分析,篩選出符合交易策略投資標(biāo)的。通過分析近一年半的A股數(shù)據(jù),梯度提升樹多因子模型收益高于上證指數(shù)20%以上。提出的投資模型可以有效提升投資收益,同時(shí)模型可以有效對因子進(jìn)行分析。該模型可廣泛應(yīng)用在投資決策問題上,用于解決投資標(biāo)的選擇等問題。