王璨 楊威 李浩
(浙江萬里學院商學院 浙江·寧波 315100)
現如今因為科技的迅速發展,信息也越來越透明化,越來越公開化,量化的技術越來越成熟,很多交易數據將在各類網站上可以查詢。因此,在現如今的國內股票市場里,多因子選股模型發揮越來越重要的作用。
傳統的多因子模型擁有很多缺點,因此通過算法優化和因子選取方法的改變,會使模型變得更加的完整,并且準確度提高。在發展過程中,多元回歸分析、行業輪動、支持向量回歸機、隨機森林和量子遺傳算法機器學習等理論體系,與多因子選股模型多次發生碰撞,又不斷革新,產生了一系列的多因子選股模型。
本文將通過數據分析,金融,數學知識等知識構建一套量化交易策略,運用到的大體模型有隨機森林、支持向量機兩大模型以及用于擇時的 MACD技術指標的運用。在股票止盈止損的方面,選擇通過T分布以及置信區間對大量漲跌幅數據進行數理統計,計算止盈止損值。回測表明該策略在各方面表現優秀。
本文選取滬深300的股票,所有的財務數據都來自同花順ifind(金融數據報告)。通過使用缺失值處理,最終選出224只股票。其中缺失值處理分為三步:
(1)采用箱型圖方法來判別異常值,把數據中大于95%、小于5%分位點數據用95%、5%分位點替換。
(2)第二步,本文采取刪除數據缺失過多的特征的股票,對于缺失值較少,采用數值插值的形式進行填補。
(3)通過標準化處理以達到數據規范化。
支持向量機(SVM)的主要思想可以歸納為兩點:利用高維的空間中構造出的線性判別函數來代表原空間中的非線性判別函數,保證了機器具有較好的泛化能力;采用最優分離超平面結構風險最小化原則,使風險的概率與整個樣本空間的期望滿足一定的上界,從而全局達到最優分類。隨機森林是一種對所選的對象進行分析預測的算法,它主要通過分出多棵決策樹,每個決策樹可以輸出類別不同的樹進行來進行預測。PCA主成分分析是把高維的數據利用線性變換投影到低維空間上去,盡量少的指標反映盡量多的有效信息。根據具體的需求和實際的需要,通過從中選取幾個較為綜合指標,來盡可能地反映原來指標的信息。
本文用到的K線技術指標有BOLL指標,又叫布林帶指標。它主要由三條線組成,上軌,中規以及下軌。這三條線主要由標準差計算而來。另外一個KDJ指標,又叫隨機指標,它是屬于超買超賣的指標,KDJ指標主要有K值,D值,J值,這三個值主要是根據股票價格的最高價,最低價以及收盤價進行計算得到的。
本文以股票選取作為研究對象,基于價值投資的視角。如圖2所示,該量化策略總體分為兩個部分,左框的選股策略通過MATLAB與python語言實現,右框的交易策略則在Mind-Go①平臺上完成。
首先,利用同花順iFind平臺進行數據的獲取,選取營運能力、成長能力、估值、償還能力和盈利能力這五大方面共63個因子,作為我們的初級因子池,進行數據預處理,然后利用相關系數檢驗因子的相關性,剔除高度相關的因子,然后利用隨機森林算法進行因子的二次篩選,運行了2016—2018年的因子的數據,得出了這些因子的特征值,及因子對于年化收益率的貢獻程度,選取三年出現特征值大于0.3,且三年都出現的因子,得到我們的二級因子池,見表1。

表1:最終選取的因子
針對上述16個因子,使用PAC分析計算各因子權重,得到5個公因子以及因子方程:

圖2:策略流程

利用MindGo平臺進行了alphalens檢驗,結果表明模擬收益高于基準收益,并且信息系數為正,因子有效。再按照因子方程計算股票因子得分,從高到低排序,選取分數最高的50支股票作為股票池。
得到股票池后,我們利用BOLL+KDJ兩個指標的結合制定交易策略:
(1)通過計算股票價格突破BOLL中軌,上軌開口方向向上,下軌方向向下,且K值大于D值,K線向上突破D線,買入;
(2)當股票價格偏離上軌,跌破中軌,且K值小于D值,K線向下突破D線,或者K值D值,大于65,賣出。
同時,在以上策略的基礎上,通過MindGo平臺運用到選股策略中,將有效因子進行因子打分,選擇出股票同時判斷該股票是否停牌或者是ST股,最后選擇出得分最高的股票形成股票池,股票池中的股票每月進行更換。
本策略運用支持向量機(SVM)技術對每只股票未來一周的模式進行判別,每月月末通過MACD指標對持倉股票進行調倉。為了控制風險,通過反復回測實驗,對大盤及個股分別設置了止盈止損點:當大盤過去5天下跌總數的8%,將所有股票全部賣出。同時個股止損,個股近三天下跌合計超過5%,個股平倉,以求降低風險,穩固收益。
我們對量化策略在同花順Mindgo平臺上進行回測檢驗,得出回測結果:策略年化收益率為11.41%,遠高于基準年化收益率為0.26%,且Alpha為0.11;Beta為0.54;Sharpe為0.57;最大回撤為12.69%。證明該策略有實施的價值。此外,我們主要選取的時間段為2018年3月至2019年4月,在這一段時間內,大盤指數在前半段一直呈現下降的趨勢,而且一直處于一個震蕩期,通過我們的策略可以發現,我們的收益雖然在前段時間并未有太大的收益,而且與大盤總體走勢相似,但是仍然擁有穩定的收益。
本文構建基于SVM算法的多因子選股模型,以滬深300成份股為股票池,通過分析2013年到2017年的年報中選取45個候選因子,數據進行預處理之后,再通過獨立性、相關性的檢驗,確保了留下來的因子是真實有效的,之后,再對留下來的因子通過隨機森林特征值的選取,每年都剔除小于0.03的因子,然后在對留下來的找到5年都出現的因子,再對這些因子進行單因子有效性的檢驗,通過支持向量分類的方法從中選取具有投資價值的股票構建投資組合,期望該組合在未來的一段時間能夠獲取穩健的超額收益,這既豐富了多因子模型構建方式,也為其他投資者提供一些借鑒。
注釋
① 同花順 MinDGo量化平臺http://quant.10jqka.com.cn/platform/html/home.html