○蘇 匡 羅 元 方楚賢 (武漢理工大學(xué) 湖北 武漢 430070)
本文的理論基礎(chǔ)是股市技術(shù)分析中道氏理論中的三大假設(shè):其一,市場行為涵蓋一切信息;其二,價格沿趨勢移動;其三,歷史會重演。根據(jù)道氏三大假設(shè),股市是可以預(yù)測的,至少是短期可預(yù)測的。所謂股票的技術(shù)分析法是相對于基本面分析法而言的。技術(shù)分析法是通過圖表或者技術(shù)指標(biāo)的記錄,研究市場過去以及現(xiàn)在的行為反映,以推測未來的價格變動趨勢。其依據(jù)的技術(shù)指標(biāo)的主要內(nèi)容是由股票價格、成交量和指數(shù)的漲跌等數(shù)據(jù)計算所得。在此就本文中所使用的指標(biāo)進(jìn)行簡單的介紹。
均線指標(biāo):實(shí)際上是移動平均線指標(biāo)的簡稱。由于該指標(biāo)是反映價格運(yùn)行趨勢的重要指標(biāo),其運(yùn)行趨勢一旦形成,將在一段時間內(nèi)繼續(xù)保持,趨勢運(yùn)行所形成的高點(diǎn)或低點(diǎn)又分別具有阻擋或支撐作用,因此均線指標(biāo)所在的點(diǎn)位往往是十分重要的支撐或阻力位,這就為我們提供了買進(jìn)或賣出的有利時機(jī),均線系統(tǒng)的價值也正在于此。
KDJ指標(biāo):隨機(jī)指標(biāo)KDJ一般是根據(jù)統(tǒng)計學(xué)的原理,以最高價、最低價及收盤價為基本數(shù)據(jù)進(jìn)行計算,得出的K值、D值和J值分別在指標(biāo)的坐標(biāo)上形成的一個點(diǎn),連接無數(shù)個這樣的點(diǎn)位,就形成一個完整的、能反映價格波動趨勢的KDJ指標(biāo)。它主要是利用價格波動的真實(shí)波幅來反映價格走勢的強(qiáng)弱和超買超賣現(xiàn)象,在價格尚未上升或下降之前發(fā)出買賣信號的一種技術(shù)工具。它在設(shè)計過程中主要是研究最高價、最低價和收盤價之間的關(guān)系,同時也融合了動量觀念、強(qiáng)弱指標(biāo)和移動平均線的一些優(yōu)點(diǎn),因此,能夠比較迅速、快捷、直觀地研判行情。隨機(jī)指標(biāo)KDJ最早是以KD指標(biāo)的形式出現(xiàn),而KD指標(biāo)是在威廉指標(biāo)的基礎(chǔ)上發(fā)展起來的。不過威廉指標(biāo)只判斷股票的超買超賣現(xiàn)象,在KDJ指標(biāo)中則融合了移動平均線速度上的觀念,形成比較準(zhǔn)確的買賣信號依據(jù)。在實(shí)踐中,K線與D線配合J線組成KDJ指標(biāo)來使用。由于KDJ線本質(zhì)上是一個隨機(jī)波動的觀念,故其對于掌握中短期行情走勢比較準(zhǔn)確。。
MACD指標(biāo):MACD稱為指數(shù)平滑異同移動平均線(Moving Average Convergence and Divergence)。是從雙移動平均線發(fā)展而來的,由快的移動平均線減去慢的移動平均線,MACD的意義和雙移動平均線基本相同,但閱讀起來更方便。當(dāng)MACD從負(fù)數(shù)轉(zhuǎn)向正數(shù),是買的信號。當(dāng)MACD從正數(shù)轉(zhuǎn)向負(fù)數(shù),是賣的信號。當(dāng)MACD以大角度變化,表示快的移動平均線和慢的移動平均線的差距非常迅速的拉開,代表了一個市場大趨勢的轉(zhuǎn)變。MACD是一項(xiàng)利用短期移動平均線與長期移動平均線之間的聚合與分離狀況,對買進(jìn)、賣出時機(jī)作出研判的技術(shù)指標(biāo)。
神經(jīng)元是神經(jīng)網(wǎng)絡(luò)中的基本處理單位,圖1是一種典型的神經(jīng)元模型,它是模擬生物神經(jīng)元的細(xì)胞體、樹突、軸突、突觸等主要部分而構(gòu)成。
圖1
其中 u1,u2,…un為輸入,k1,k2,…kn為權(quán)值,y 為凈輸出,神經(jīng)元的輸出可表示為:yi=f(Σjwij+θ)。
1、BP算法的基本思想。學(xué)習(xí)過程由信號的正向傳播與誤差的反向傳播兩個過程組成。正向傳播:輸入樣本->輸入層->各隱層(處理)->輸出層(若輸出層實(shí)際輸出與期望輸出不符,則誤差反向傳播過程)。誤差反向傳播:輸出誤差(某種形式)->隱層(逐層)->輸入層。其主要目的是通過將輸出誤差反傳,將誤差分?jǐn)偨o各層所有單元,從而獲得各層單元的誤差信號,進(jìn)而修正各單元的權(quán)值(其本質(zhì),是一個權(quán)值調(diào)整的過程)。權(quán)值調(diào)整的過程,也就是網(wǎng)絡(luò)的學(xué)習(xí)訓(xùn)練過程(學(xué)習(xí)也就是這么的由來,即是權(quán)值調(diào)整)。
2、BP算法實(shí)現(xiàn)步驟。初始化;輸入訓(xùn)練樣本對,計算各層輸出;計算網(wǎng)絡(luò)輸出誤差;計算各層誤差信號;調(diào)整各層權(quán)值;檢查網(wǎng)絡(luò)總誤差是否達(dá)到精度要求。滿足,則訓(xùn)練結(jié)束;不滿足,則返回步驟2。
3、多層感知器(基于BP算法)的主要能力。第一,非線性映射:足夠多樣本學(xué)習(xí)訓(xùn)練能學(xué)習(xí)和存儲大量輸入-輸出模式映射關(guān)系。只要能提供足夠多的樣本模式對供BP網(wǎng)絡(luò)進(jìn)行學(xué)習(xí)訓(xùn)練,它便能完成由n維輸入空間到m維輸出空間的非線性映射。第二,泛化:輸入新樣本->完成正確的輸入、輸出映射。第三,容錯:個別樣本誤差不能左右對權(quán)矩陣的調(diào)整
4、標(biāo)準(zhǔn)BP算法的缺陷。第一,易形成局部極?。ň植孔顑?yōu))而得不到全局最優(yōu)。第二,訓(xùn)練次數(shù)多使得學(xué)習(xí)效率低下,收斂速度慢(需做大量運(yùn)算)。第三,隱節(jié)點(diǎn)的選取缺乏理論支持。第四,訓(xùn)練時學(xué)習(xí)新樣本有遺忘舊樣本趨勢。
人工神經(jīng)網(wǎng)絡(luò)是由大量神經(jīng)元的信息處理單元構(gòu)成,其主要原理是模擬生物神經(jīng)元之間的激勵過程,通過這一復(fù)雜的過程來完成一系列的相關(guān)任務(wù),神經(jīng)網(wǎng)絡(luò)具有以下較為突出特點(diǎn):第一,具有自適應(yīng)性,有強(qiáng)大的自主學(xué)習(xí)能力,可以通過訓(xùn)練樣本根據(jù)樣本信息及周圍環(huán)境變化改變自身的網(wǎng)絡(luò)結(jié)構(gòu),從而使自身能夠以最有效的形式來模擬訓(xùn)練樣本所隱含的環(huán)境。第二,能從訓(xùn)練樣本中獲取知識,并具有很好的記憶特征,可以用于處理一些環(huán)境復(fù)雜,推理并不明確的問題。第三,在非線性時間序列預(yù)測中,人工神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)了非線性關(guān)系的隱式表達(dá),不需要建立復(fù)雜系統(tǒng)的顯示關(guān)系式。第四,神經(jīng)網(wǎng)絡(luò)的容錯性強(qiáng),可以處理信息不完全的預(yù)測問題。第五,由于神經(jīng)網(wǎng)絡(luò)具有一致逼近的能力,訓(xùn)練后的神經(jīng)網(wǎng)絡(luò)在樣本點(diǎn)上輸出期望值(誤差在允許范圍內(nèi)),在非樣本點(diǎn)上表現(xiàn)出神經(jīng)網(wǎng)絡(luò)的聯(lián)想記憶功能。
股票市場是一個混沌的市場,具有很強(qiáng)的非線性特征:第一,對影響股市波動相同的因素來說,根據(jù)其對股市造成影響的時間不同,每次該項(xiàng)因素對股市影響的程度也不同,這與線性系統(tǒng)的特征是不相符的,這也就說明了股票市場的非線性性。第二,股票市場波動的突發(fā)性和劇烈程度,足以說明股票市場的非線性性。
通過以上可以看出由于股票市場存在非線性的特征,利用一般的線性分析工具來研究股票市場對研究結(jié)果將會造成很大的偏差,但神經(jīng)網(wǎng)絡(luò)理論,以其自身的特點(diǎn),可以很好地將其運(yùn)用于解決此類問題。
首先,模型設(shè)計的實(shí)驗(yàn)原理是基于具有3層結(jié)構(gòu)的BP神經(jīng)網(wǎng)絡(luò)可以任意地去逼近任何函數(shù),就其本身來說就相當(dāng)于是一個“黑箱子”,只要你給定其相關(guān)的輸入和輸出,通過訓(xùn)練它就能一定模擬出一個復(fù)雜的函數(shù)來擬合你的這組輸入和輸出,從而得到滿意的訓(xùn)練結(jié)果。
本文的數(shù)據(jù)選取的是中國銀行的一些技術(shù)分析指標(biāo),它來源于大智慧軟件的數(shù)據(jù)庫,根據(jù)技術(shù)分析指標(biāo)的分類結(jié)合聚類的思想,在每一類指標(biāo)中選取具有代表性的一種來代表這一類指標(biāo),所以在這個模型中我選取了BIAS,KDJ,MACD,威廉指標(biāo)和成交量,這幾個指標(biāo)中有的雖有些相同的性質(zhì),但由于它們都是一些常用指標(biāo),有一定的實(shí)用價值,也不失可作為輸入數(shù)據(jù)。
本文的數(shù)據(jù)輸出是每日收盤價的五日以用平均值。之所以選取均值作為輸出主要是因?yàn)榫底鳛檩敵鲋迪鄬碚f較為平滑,這樣無論是對訓(xùn)練還是預(yù)測都會得到比較理想的結(jié)果。接下來,就是模型的設(shè)計。根據(jù)問題,在輸入層有5個輸入所以需要有5個神經(jīng)元,而輸出層只需要一個神經(jīng)元,根據(jù)經(jīng)驗(yàn)公式隱含層神經(jīng)元的個數(shù)為2n+1,其中n為輸入層神經(jīng)元的個數(shù),所以隱含層的神經(jīng)元個數(shù)為11個,這樣一來,模型的基本框架就已經(jīng)構(gòu)成,其大致結(jié)構(gòu)如圖2。
圖2
以下是根據(jù)該模型用Matlab編的程序的主要部分:
net=new ff(m inmax(P),[11 1],{'tansig','purelin'});
net.trainParam.epochs=1000;
net.trainParam.goal=0.0001;
[net,tr]=train(net,P_train,T_train);
下面對整個程序做一個簡單的介紹:首先,本文選取100組數(shù)據(jù)作為訓(xùn)練樣本,對它們進(jìn)行歸一化處理,接著對它們進(jìn)行訓(xùn)練,反歸一化處理得出訓(xùn)練結(jié)果,分析結(jié)果再選取三組數(shù)據(jù)進(jìn)行泛化性分析。其訓(xùn)練結(jié)果如下圖3所示。然后分別用三組數(shù)據(jù)來測試訓(xùn)練結(jié)果,看其泛化性能是否好,期預(yù)測誤差的結(jié)果如表1所示。
圖3
表1
由訓(xùn)練結(jié)果我們可以看出該訓(xùn)練效果較好,由預(yù)測的誤差結(jié)果可知它的泛化性能也相對較好,所以我們可以得出以下結(jié)論。
從整個實(shí)證分析的過程可以看出技術(shù)分析在我國股票市場還具有一定的有效性,說明技術(shù)分析的一些指標(biāo)還可以指導(dǎo)投資者進(jìn)行證券投資。但從中我們也應(yīng)該看到其中的一些不足:第一,由于該實(shí)驗(yàn)選取的是對單一股票的技術(shù)指標(biāo)的檢測,雖然中國銀行屬于大盤股,不易被莊家所控制,但它作為個股仍不能代表整個市場,所以至于技術(shù)分析是否對整個中國股市有效仍具有不確定性。第二,由于BP算法自身的一些缺陷也可能給實(shí)驗(yàn)帶來一些誤差影響。所以,投資者在投資前首先要認(rèn)清大勢,因?yàn)槲覈墒惺且粋€政策市,它受政府相關(guān)政策影響的程度極大,所以投資者在投資前首先要進(jìn)行基本面的分析,基本面的分析與技術(shù)分析的結(jié)合使用才是進(jìn)行證券投資的首選方案。
(注:本文為武漢理工大學(xué)自主創(chuàng)新研究基金《基于神經(jīng)網(wǎng)絡(luò)系統(tǒng)分析我國股票市場的有效性》課題的系列研究成果之一,項(xiàng)目編號2010-VA-007JJ。)
[1]Zvi Bodie:投資學(xué)[M].機(jī)械工業(yè)出版社,2006.
[2]曹鳳歧、劉力、姚長輝:證券投資學(xué)[M].北京大學(xué)出版社,2000.
[3]高雋:人工神經(jīng)網(wǎng)絡(luò)原理及仿真實(shí)例[M].機(jī)械工業(yè)出版社,2007.
[4]苑迪:基于動態(tài)神經(jīng)網(wǎng)絡(luò)的股價預(yù)測模型研究[D].湖南大學(xué),2009.
[5]Duane Hanselman:精通Matlab7[M].清華大學(xué)出版社,2006.