馬靜++李星野++徐榮



摘要選用2008~2015共8年數據,首先基于高斯核的支持向量機在滬市A股上構建周期性的投資組合,并通過誤差圖和評價指標與BP神經網絡、廣義回歸神經網絡進行比較,結果表明了支持向量機在股票預測上更具有優勢.再將改進遺傳算法運用于上證股票市場構建最優投資組合,以上證指數作為基準進行比較,得出混合遺傳算法優化組合的模型相比單一模型更為有效.
關鍵詞機器學習;高斯核支持向量機;遺傳算法;投資組合
中圖分類號F064.1 文獻標識碼A
1引言
機器學習研究計算機怎樣模擬或實現人類的學習行為,以獲得新的知識或技能,重新組織已有的知識結構使之不斷改善自身的性能.機器學習在實際分類問題中廣泛應用與眾多領域,如通信技術[1],網絡流量分析[2],醫學成像[3],時間序列分析[4]等.相比于ARMA或者ARCH這些傳統的技術和定量分析方法模型,機器學習從大量數據中發現隱含的模式,構建更為復雜的模型來實現對未來的預測更能體現模型的優越性與實用性.研究表明,采用機器學習的方法對金融市場進行預測,將特征屬性作為輸入來發現其與隱藏模式之間的聯系,能夠預測未來價格趨勢或預測趨勢信心的百分比.尤其在證券交易中,運用支持向量機,神經網絡等混合模型進行學習能夠得到更為有前景的結果[5].
目前,金融預測是機器學習在資本市場對數據進行挖掘的最重要的應用,機器學習的技術包括神經網絡,支持向量機,遺傳計算等.已經有很多學者在這方面進行了研究,盧和吳[6]采用了人工神經網絡對標普500指數的未來走勢方向進行了預測,并且將結果與傳統的ARIMA模型進行比較,結果表明人工神經網絡的優越性.McDonald, Coleman等[7]調查了一些機器學習的方法并將其組合進行研究,結果表明混合模型,包括線性和非線性的算法能夠在金融序列的未來發展方向上表現出更多的價值. Chen和Shih[8] 采用了BP神經網絡與SVM對6個亞洲指數進行預測,獲得SVM相比于神經網絡更高的準確度.Tay和Cao[9]證明了5種金融時間序列數據可以用支持向量機進行預測,并指出其效果優于人工神經網絡.Chang[10]應用遺傳算法(GA)、禁忌算法(TS)和模擬退火算法(SA)求解復雜約束下的投資組合問題,并通過實證得出用遺傳算法和模擬退火求解投資組合問題,明顯優于禁忌算法.
對于投資者如何從數千中資產中選擇構建投資組合的方法,也有很多學者進行研究.Markowitz提出了“均值-方差(MV)”模型為投資者構建投資組合提供了理論基礎.許多學者在此基礎上對投資組合理論進行了延伸[11-15].Jagannathan等[16]在M-V模型中簡化各資產的權重限制為非負,即不允許組合中出現賣空資產,指出此限制可以減小最優資產組合估計的誤差,且在此限制條件下,通過樣本協方差陣估計和因子模型估計及收縮估計得到的最優組合表現結果一直.Van der Hart等[17]通過分析32個新興市場在1985~1999年間的市盈率、市值、價格等數據信息,發現相對于交易量,流動性和均值回復,基于價值,動量與盈利預測調整的策略具有更顯著的超額收益.Fan等[18]運用支持向量機發掘公司財務和股價信息來選擇資產.Rachev等[19]在Rewardrisk準則下用動量策略來選股.
縱觀國內外相關研究,學者在研究機器學習在資本市場的應用更多考慮模型方法的有效性與準確性,本文在前人的基礎上運用支持向量機模型對股票進行分類預測,構建周期性的投資組合模型,進而在MV模型基礎上采用改進遺傳算法求解具有投資限制的最優資產組合.這樣做的好處是:第一,循環周期訓練模型,能夠不斷根據最新數據進行調整模型,在一定程度上適應了數據更新的需求,也消除過度使用歷史數據的影響;第二,將數據輸入改進的模型中可以得到更優的資產組合與權重分配,具有很強的使用價值;第三,改進的遺傳算法能使資產組合具有良好的風險收益特征.通過研究,表明基于支持向量機和遺傳算法在解決資產方向預測和優化資產組合問題上都有效可行,相信通過改進和完善會有更好的應用前景.
2模型理論
2.1支持向量機
支持向量機(SVM)是由Vapnik等提出來的,它是基于統計學習理論的VC維理論和結構風險最小化理論的機器學習理論.SVM是用于數據分類的一種監督學習算法[20] .
假設訓練樣本集{(x1,y1),…,(xn,yn)},xi,yi∈R則SVM回歸模型的線性回歸函數方程是:
f(x)=w·x+b. (1)
為保證線性方程的平坦,需尋找一個最小的w,因此采用最小化歐幾里得空間的范數.假設所有的訓練數據可以在精度ε下用線性函數擬合,那么尋找最小w的問題可以表示為一個凸優化問題:
本文采用高斯核函數,如公式(7)所示.其適用于低維、高維、小樣本、大樣本等多種情況,具有較寬的收斂域,是較為理想的分類依據,將樣本在經過映射后的特征空間中線性分開的能力及效果更好,再加上還具有較好的差值能力,能夠很好的提取樣本的局部性質.在確定參數時,一般選取誤差差懲罰因子c,取值范圍一般為(0,100],用于調節學習置信范圍和經驗風險的比例,以增強其推廣能力.本文采用網格搜索法對最優參數進行搜素,最優懲罰參數c為0.5,最優核函數參數g為1.41.最佳的n能夠使得模型學習有較高的預測和分類精度,有重大意義.
2.2改進的遺傳算法
遺傳算法(GA)是由美國密歇根大學的John Holland教授與1975年首先提出的一類仿生型優化算法[21],是近年來產生和發展的一種模擬生物進化過程的自適應啟發式全局優化的搜索算法.通過對將要解決的問題模擬成一個生物進化的過程,通過復制、交叉、突變等操作產生下一代的解,并逐步淘汰適應度函數值低的解,增加適應度函數高的解,進而優化出適應度函數值很高的個體.
遺傳算法的具體算法如下:
1)編碼
采用整數編碼,每個染色體含n個基因位(代表n只股票),基因的數值代表該股票在投資組合中的資金分配.
2)適應度函數
適應度函數為eU,e是自然對數,U是目標函數式.由于Markowitz的投資組合模型是一個二次規劃問題,本文考慮我國股市實際交易中不能賣空,需要交易費用,需要有最小交易量(100股)的情況,采用改進的投資組合作為適應度函數.具體公式為:
3實證研究
3.1數據準備與評價標準
本文選取上證A股股票作為測試數據,數據區間在2008.01.02~2015.12.31,剔除無效數據.用當天的開盤價、收盤價、最高價、最低價、成交量和成交金額作為自變量特征,預測后一天的發展趨勢.本文實證研究部分所有數據源于Wind資訊金融終端.具體輸入屬性包括簡單移動平均(SMA),指數移動平均(EMA),威廉指標(WR),成交量變異率(VR),相對強弱指標(RSI),平均真實波幅(ATR),真實強弱指標(TSI).
在訓練數據之前,對數據進行預處理,刪除指標缺失超過一半的數據,少于一般用該指標該段時間的均值代替.對其進行歸一化處理,本測試采用MATLAB自帶的和歸一化函數mapminmax,將所有數據歸一化到[-1,1].
本文選擇數據反歸一化之前的均方根的評價誤差作為訓練集的評價標準.為了和Libsvm工具箱中評價標準保持一致,選擇均方誤差和相關系數作為測試集的評價標準.均方誤差越小越好,相關系數則越大越好.預測性能還可以通過以下統計指標來衡量:正則均方誤差和平均絕對誤差[9].它們是真實值與預測值之間的偏差度量,其值越小表示預測性能越好.
3.2基于支持向量機的投資組合構建
3.2.1組合構建
由于Barbosa [22]指出訓練分類器不必要在意較低的準確度,若能夠使得根據預測或得正的交易,則在長期情況下,交易收益完全能夠克服交易損失.從實際角度來考慮,這由于在現實生活交易中個人不可能贏得所有交易,只有不斷提高交易盈利交易才可以繼續進行,也能獲得一個更高的累計收益.同時如果訓練集過長,包含了太多的歷史數據,不進行及時更新,將會增加模型的不穩定和波動性.因此,仍需要對數據進行及時的更新訓練以保證模型的狀態新鮮.
由上述,本文設定訓練集的數據長度為1年,更新數據在增加最新數據的同時刪減前面歷史數據,以保證數據長度的一致性.持有期和滾動周期均為15個交易日,即每隔15個交易日結束上一周期股票池的持有,并將上一周期的數據加入訓練模型重新進行訓練,構建新的模型指導下一周期的組合構建.投資組合選定為50只.
為便于直觀對比出本節模型的優越性,采用支持向量機與神經網路算法比較.BP神經網絡(BPNN)是一種多層前饋網絡模型,由于具有高度的非線性映射能力,是目前神經網絡研究與應用中最基本的網絡模型之一.廣義回歸神經網絡(GRNN)是徑向基網絡的一個分支,其結構與徑向基網絡接近,非常適合函數逼近[23].因此BPNN和GRNN夠被選作為SVM的參照對象,BPNN和GRNN的輸入節點數均為10,輸出節點數為1,鑒于多隱含層除了增加計算量和復雜度外,預測性并沒有明顯得到提升,所以BPNN和GRNN均選用單隱含層,該層節點數和輸入點數相同.徑向基選用高斯函數.
本文通過正則均方誤差(NMSE)、平均絕對誤差(MAE)和SVM自帶的均方誤差(MSE)、相關系數(R2)來衡量預測效果.表2顯示了SVM和BPNN,GRNN的訓練集,測試集的性能評價結果.
由圖1更能直觀顯示出SVM模型的優越性,相對于GRNN,BRNN,SVM的誤差能夠控制在更小的范圍內.基于以上分析與驗證得到SVM,BP,GRNN三者的性能優劣程度.本文采用SVM進行預測構建投資組合,訓練集特征為滬市2008一年的股票開盤價、收盤價、最高價、最低價、成交量、對沖后收益(本文采用上證指數對沖)以及上述7個特征屬性共13個,對后一天的發展趨勢進行預測,一次測試15天,根據排名選取靠前的50只股票作為投資組合買入,本文設定依據股票市場規則不能做空.此后每一周期訓練一次,滾動進行2009~2015年的交易,得到對沖后收益最優的股票.收益見圖2.
圖2顯示了基于SVM預測滾動選取投資組合獲得的收益與上證指數的漲幅對比圖,可以看到在滬市上選取的股票,雖然在某些時點上產生震蕩,收益率有所下浮,但總體都是能夠獲得較大盈利的,7年的年化收益率達到了9%左右.
3.3基于改進遺傳算法的優化組合
證券投資組合的關鍵是投資者的偏好,對收益和風險加以權衡,確定各種證券在組合中的比例,從而得到較好的投資組合.本文研究符合我國現實投資環境的投資組合模型,首先建立具有賣空限制、交易費用限制和最小交易單位限制的投資組合模型,具體見公式(10);其次,由于模型已經是一個非線性正數規劃,本文設計了一種改進遺傳算法用于求解該問題,具體見公式(13)和(15).實證說明所采用的算法是有效的.
交易費用包括傭金、稅金和過戶費.相關參數為選擇的股票個數為50,進化代數為3 000,計算結果即持有單位數見表3所示.
顯示了基于SVM預測滾動選取投資組合獲得的收益及GA優化投資組合收益與上證指數的漲幅對比圖,可以看到在滬市上選取的股票,雖然在某些時點上產生震蕩,收益率會下浮,但采用GA算法總體都能對投資組合起到優化作用,使組合收益更大,7年的年化收益率達到了15%左右,在實踐中也具有重要意義和理論推廣.
資產選擇與最優組合權重的設置是構建投資組合的兩個關鍵點.由圖2和圖3可以看出采用混合遺傳算法的優化組合,其收益率相比單一使用支持向量機的表現更好.在短期也許交易差別并不大,但長期看來,由于模型的不斷優化混合模型會表現出更大的優勢.
4結論
支持向量機理論作為一種基于統計學習理論的新的機器學習算法,較好的解決了維數災難和過學習的問題.支持向量機因其廣泛的適應能力和學習能力在非線性系統預測方面有著廣泛的應用前景.股票市場又是一個極其復雜的動力學系統,具有高噪聲、非線性等特性.隨著近年來計算機技術和機器學習的迅猛發展,使得對股票市場的構建與預測產生了新的思路與解決途徑.本文闡述了基于高斯核的支持向量機(SVM),根據股票市場和股票指數的特點,將支持向量機從原來只處理分類問題擴展到回歸部分,同時盡可能最優的預測非線性且噪聲較多的序列.再采用支持向量機和遺傳算法進行預測,并構建投資組合,期望獲得更高收益及更低風險,取得了令人滿意的結果.
支持向量機(SVM)算法之所以性能優異,是因為其算法是建立在結構風險最小化和線性二次規劃理論之上的,具有泛化能力強、全局最優等優點.而遺傳算法(GA)通過模仿自然界的選擇和遺傳的機理來尋找最優解,突破了一般容易陷入局部極小出現“死循環”現在的迭代方法,實現了全局最優,且具有快速搜索、更高擴展性,易與其他方法結合等優點.
不過在參數,核函數,訓練集,周期等的選取方面可能會因其變動而產生較大的差異,未來可以繼續再這一方面進行優化.基于短周期和長周期的運動趨勢不同的情況,還可以將周期繼續細分.鑒于核函數對SVM性能的決定性影響,未來的工作將致力于構造SVM的新型核函數,以更好的捕獲股票的序列的非線性特征,從而進一步其預測性能.
參考文獻
[1]Di M, A survey of machine learning in wireless sensor networks from networking and application perspectives[J]. International Conference on Information. Communications & Signal Processing,2007,6(10):1-5.
[2]Nguyen T, Armitage G. A survey of techniques for internet traffic classification using machine learning[J]. IEEE Communications Surveys & Tutorials,2008,10 (4):56-76.
[3]Wernick M,Yang Y, Brankov J, et al. Machine learning in medical imaging[J]. IEEE Signal Processing Magazine, 2010,27(4):25-38.
[4]Qi M,Zhang G P.Trend timeseries modeling and forecasting with neural networks[J]. IEEE Transactions on Neural Networks, 2008,19 (5):808-816.
[5]Cai X G,Hu S,Lin X L. Feature extraction using restricted Boltzmann machine for stock price prediction[J]. IEEE International Conference on Computer Science and Automation Engineering, 2012,5(10):80-83.
[6]Lu C,Wu C H. Support vector machine combined with GARCH models for call option price prediction[J]. International Conference on Artificial Intelligence and Computational Intelligence,2009,11(10):35-40.
[7]Mcdonald S, Coleman S, Mcginnity TM,et al.Belatreche A. A comparison of forecasting approaches for capital markets[J]. Conference on Computational Intelligence for Financial Engineering & Economics,2014,3(10):32-39.
[8]Chen W H,Shi J Y.Wu S. Comparison of supportvector machines and back propagation neural networks in forecasting the six major Asian stock markets[J]. International Journal of Electronic Finance,2006,1(1):49-67.
[9]Mukhejee S, Osuna E, Girosi F. Nonlinear prediction of chaotic time series using support vector machines[J]. Neural Networks for Signal Proceeding,1997,9(10):511-520.
[10]Chang T J, Meade N,Beasley J E,et al.Heuristics for cardinality constrained portfolio optimization[J]. Computers and Operations Research, 2000,,27(13):1271-1302.
[11]Briec W, Kerstens K, Jokung O. Meanvarianceskewness portfolio performance gauging: A general shortage function and dual approach[J]. Management Science, 2007, 53(1): 153-149.
[12]Calafiore G C. Multiperiod portfolio optimization with linear control policies[J]. Automatica, 2008, 44(10): 2463-2473.
[13]Yu M,Takahashi S, Inoue H,et al. Dynamic portfolio optimization with risk control for absolute deviation model[J]. European Journal of Operational Research, 2010, 201(2): 349-364.
[14]Harris R D F, Mazibas M. Dynamic hedge fund portfolio construction:a semiparametric approach[J]. Journal of Banking & Finance, 2013, 37(1): 139-149
[15]張衛國,張永,徐維軍,等. 基于線性學習函數的泛證券投資組合策略[J]. 系統工程理論與實踐,2012,32(8):1647-1654.
[16]Jagannathan R,Ma T,.Risk reduction in large portfolios: Why imposing the wrong constraints helps[J]. Journal of Finance,2003,58(4):1651-1684.
[17]Palaniswami M,Fan A.Stock selection using support vector machines[C]. Neural Networks,2001,3(10):1793-1798.
[18] Hart JVD,Slagter E,Dijk DV. Stock selection strategies in emerging markets[J]. Journal of Empirical Finance, 2001,10(1/2):105-132.
[19]Rachev S, Jasic T, Stoyanov S,et al. Momentum strategies based on rewardrisk stock selection criteria[J]. Journal of Banking and Finance, 2007, 31(8): 2325-2346
[20]Cortes C,Vapnik V.Supportvector networks[J].Machine Learning,1995,20(3):273-274.
[21]Holland J H,Adaptation in natural and artificial system:an introduction analysis with application to biology, control, and artificial intelligence[M]Michigan:The University of Michigan Press, 1975.
[22]Barbosa R P, Belo O.Autonomous forex trading agents[M]//Advances in Data Mining:Medical Applications,ECommerce,Marketing and Theoretical Aspects,SpringerVerlag Berlin and Heidelberg GmbH & Co. K, 2008.
[23]Hsu C W,Lin C J. A comparsion of methods for multiclass support vector machines[J]. IEEE Transactions on Neural Network,2002,13(2):415-425.