馬輝
【摘要】證券市場的不穩(wěn)定性和隨機性的特征讓僅僅預測明天的股票價格也是一種挑戰(zhàn)。通過出色的、良好構(gòu)造的特征集能夠更好地估計股票市場的趨勢。再者,當我們建立了正確的模型來獲得不斷變化的趨勢的不易觀察的屬性時,我們的預測能力將會獲得提高。在這篇論文中,本文提出了一個二元事件模型。在這個模型的基礎(chǔ)上建立特征集來更好地預測股票市場的未來趨勢。本文運用了貝葉斯和支持向量機來證明本文的方法在預測準確性和速度方面的優(yōu)勢。本文的實驗說明在一天的預測中預測準確率在70%~80%。另外,本文的回歸測試證明交易的累計回報率在30%~100%。
通過實驗結(jié)果表明,本文運用的模型在真實的市場中在預測準確性和累計回報方面獲得了很好地表現(xiàn)。
【關(guān)鍵詞】股票預測 回歸測試 特征集
一、簡介
市場上有很多的工具和統(tǒng)計值來分析股票的趨勢,這些工具和統(tǒng)計指標能夠讓我們在每天變化的股票價格中找到潛在的價值和模式。舉個例子,有很多的技術(shù)指標描述市場趨勢,像簡單移動平均等。與此同時,我們?nèi)鄙偈褂酶鞣N不同的工具和統(tǒng)計值的知識。盡管我們對使用其中的一些技術(shù)指標有一定的了解,但是每個技術(shù)指標都會有自己的局限性,不能夠?qū)⑺杏绊懝善眱r格的因素都考慮在內(nèi)。人們目前在找到一個最優(yōu)的各種指標的結(jié)合來做出買入、持有、賣出的策略時有很大的難度。
從有效市場理論的角度看,股票預測幾乎是不可能的。股票價格已經(jīng)反應(yīng)了到目前為止市場上的大量公共信息。為了讓這個問題看上去能夠解決,本篇論文會將問題局限在二元分類。盡管要預測出精確的上漲、下跌的比例和交易量是困難的,只是預測股票價格是上升還是下降看上去是合理的。
由此本文提出二元股票事件模型。具體做法如下:首先、本文的工作將從市場上收集數(shù)據(jù)開始,在收集了部分股票一定時間段內(nèi)的股票數(shù)據(jù)之后。根據(jù)常用的技術(shù)指標,從原始數(shù)據(jù)中算出他們的值。其次,基于這些技術(shù)指標的結(jié)合設(shè)計出二元事件模型。這是一個二元值向量代表在一個特定的時刻一個預先設(shè)計的股票事件是否發(fā)生。舉個例子,假設(shè)一個二元股票事件,定義為事件s,發(fā)生在2013年的12月14號,這個BSEM模型(事件s,20131214)的值是1。同樣的方式、向量的每一個值應(yīng)該是1或0,根據(jù)在特定時刻它是否發(fā)生。最后,獲得一系列的二元股票事件包括n天m個特征來描述m個二元股票事件的發(fā)生。其次、設(shè)計出每個二元股票事件的類標簽。最后、根據(jù)數(shù)據(jù)挖掘中常用的數(shù)據(jù)分類算法對模型進行分類。
二、產(chǎn)生數(shù)據(jù)集和特征集
(一)產(chǎn)生數(shù)據(jù)集
總共20家A股上市公司從2013年1月1號到2015年8月31號,共12723條交易記錄。數(shù)據(jù)來源是國泰安CSMAR數(shù)據(jù)庫。
(二)產(chǎn)生類標簽
在原始特征集產(chǎn)生之前,先討論訓練集的類標簽的產(chǎn)生。從基本上來說,預測股票趨勢就是預測從現(xiàn)在開始k天內(nèi)的股票趨勢。因此,我們需要計算一個目標類標簽y,用來表示今天的價格和在k天之后的價格的差別。本文中,定義的目標類標簽,它是當天的收盤價和k天之后的開盤價和最高價之間的平均值。本文中選擇在未來某一天的開盤價和最高價之間的平均值作為類標簽的理由是基于通常的市場交易策略。舉個例子,如果我們產(chǎn)生了一個向上的趨勢的預測信號,它意味著明天的價格會漲。從交易的視角來看,我們會基于預測信號在當天的收盤價上購買一只股票。然后我們會在盡可能高的價位上賣掉股票。所以,本文認為可能的賣出價格區(qū)間會由當天的開盤價和當天的最高價決定。如果價格低于當天的開盤價,交易員會馬上賣掉股票。
簡單起見,本論文只考慮二元分類問題就像上升和下降。為了做到這一點,將上升和下降的比率轉(zhuǎn)化為1或者0,并且將每天的用這種標簽注釋。
(三)產(chǎn)生原始數(shù)據(jù)特征集
為了追蹤股票價格的變動趨勢,很多股票分析家會運用移動平均線法。移動平均線簡稱均線,它是將某一段時間的收盤價之和除以該周期。最流行的移動平均是簡單移動平均(SMA)和指數(shù)移動平均(EMA)。SMA和EMA是從上文的原始數(shù)據(jù)中根據(jù)給定的時間段k,計算出給定時間段內(nèi)的平均值。舉個例子,SMA(5)是通過計算最后五天的價格的平均值得到的,同時EMA(5)是在考慮到隨著時間的推移價格權(quán)重呈指數(shù)級降低計算出的。
根據(jù)上文中的基于原始數(shù)據(jù)的技術(shù)指標集,從大智慧軟件中得到這些股票對應(yīng)指標集的數(shù)據(jù)值。
三、建立二元股票事件模型
(一)定義股票事件模型
在真實的股票投資中,股票分析員不會使用技術(shù)指標的數(shù)值來做出投資決策。他們會更關(guān)注于一些特定的預先設(shè)定的事件的發(fā)生。舉個例子,當5天移動平均線突破了10天移動平均線,這叫做黃金交叉或者令人興奮的突破,它是一個很強的購買一只股票的信號。再舉一個例子,如果一只股票價格的上升伴隨著顯著增大的交易量,它也是一個強烈的購買信號。這樣的角度看的話,一個特定股票事件的出現(xiàn)比一些枯燥的數(shù)值的變化在預測未來股票的趨勢中更有意義。
(二)產(chǎn)生基于二元股票事件模型的特征集
二元股票事件模型代表了一個輸入事件的發(fā)生。舉個例子,如果一個輸入事件是一個5天的簡單移動平均線上升超過一個10天的簡單移動平均線,那么這個事件就被記錄為1,否則它就是0。
基于上述的股票事件集和上文中得到基于原始數(shù)據(jù)的指標集,得到二元股票事件模型。
四、基于貝葉斯學習模型的預測
(一)預測準確性
本論文基于特征集的二元股票事件模型的評測標準是預測的準確度。本文用到的數(shù)據(jù)集從源頭上來說是一個臨時的數(shù)據(jù)集,它是不斷隨著接下來股票市場每天的報價而變動的。然而,一個二元股票事件模型的特征集只是集中于昨天和今天的差別;使用五重交叉驗證是沒有問題的。換句話來說,在數(shù)據(jù)集中的每一行是由離散值組成的,所以劃分它是容易的。
在實驗中,預測結(jié)果是一個二元分類。因此,預測準確度是這樣計算的:正確的上升趨勢預測和正確的下降趨勢預測與所有的預測結(jié)果的數(shù)量的商。
本文所有的測試運行環(huán)境如下:
處理器:Intel(R)Core(TM)2 Duo CPU T5870 @ 2.00GHz
安裝內(nèi)存(RAM):3.00GB。
本文選用這20只股票的2013-2014年的二元股票事件模型作為訓練集,2015年01-08月份的二元股票事件模型作為測試集。使用貝葉斯分類器運算結(jié)果是75.4%。
(二)回歸測試結(jié)果
本文的原始數(shù)據(jù)集是由股票市場20只股票2013、2014、2015-01到2015-08的每天的交易報價組成的,因此我們將它劃分成五塊來做回歸測試。我們用五層交叉驗證來學習我們的模型。為了精確定位回歸測試,本文評估使用的數(shù)據(jù)不是來自于訓練數(shù)據(jù)使用的部分,都來自于測試數(shù)據(jù)使用的部分。
圖1 回歸測試的交易策略
由程序計算浦發(fā)銀行(600000)在2015年一月份到八月份之間的回報率為50.8%。
五、總結(jié)和展望
本文的研究從找到各種不同技術(shù)指標之間的最佳的結(jié)合開始的。為了解決這個問題,本文提出了建立二元股票事件模型的方法?;谠脊善睌?shù)據(jù),計算不同股票的各個技術(shù)指標數(shù)值。再通過各個技術(shù)指標數(shù)值構(gòu)建二元股票事件集,從而構(gòu)建二元股票事件模型。由此,基于這個模型,本文產(chǎn)生了一個二元股票事件模型的特征集作為訓練數(shù)據(jù)。接下來,本文通過貝葉斯分類器成功地獲得了很高的預測精度。
參考文獻
[1]鄧乃揚,田英杰.數(shù)據(jù)挖掘中的新方法——支持向量機[M].北京:科學出版社,2004.
[2]王莎.BP神經(jīng)網(wǎng)絡(luò)在股票預測中的應(yīng)用研究[D].中南大學 2008.
[3]史書真.股價時間序列的分析與預測研究[D].應(yīng)用數(shù)學學報, 2006,29(4):619-632.