王衛(wèi)紅,卓鵬宇
(浙江工業(yè)大學(xué) 計算機(jī)科學(xué)與技術(shù)學(xué)院, 浙江 杭州 310023)
基于PCA-FOA-SVR的股票價格預(yù)測研究
王衛(wèi)紅,卓鵬宇
(浙江工業(yè)大學(xué) 計算機(jī)科學(xué)與技術(shù)學(xué)院, 浙江 杭州 310023)
摘要:研究股票價格預(yù)測問題,針對影響股票價格因素多存在數(shù)據(jù)冗余,傳統(tǒng)方法無法消除數(shù)據(jù)冗余,準(zhǔn)確穩(wěn)定預(yù)測股價非線性變化.為提高預(yù)測精度,在傳統(tǒng)的支持向量機(jī)回歸(Support vector regression, SVR)方法的基礎(chǔ)上引入主成分分析(Principal component analysis, PCA)和果蠅算法(Fruit fly optimization algorithm, FOA),提出了一種PCA-FOA-SVR的股票價格預(yù)測方法.首先利用PCA對影響股票價格的因素進(jìn)行分析降維,消除冗余信息,然后用果蠅算法優(yōu)化SVR的參數(shù),利用優(yōu)化后的SVR對非線性變化的股票價格建模預(yù)測.最后利用PCA-FOA-SVR模型對寧滬高速(600377)股票價格數(shù)據(jù)進(jìn)行仿真實(shí)驗(yàn).實(shí)驗(yàn)結(jié)果表明:與傳統(tǒng)的BP和SVR相比,PCA-FOA-SVR模型在股票價格預(yù)測中進(jìn)一步減小了預(yù)測誤差,有更高的預(yù)測精度,是一種有效可行的股票價格預(yù)測方法.
關(guān)鍵詞:主成分分析;支持向量回歸機(jī);果蠅優(yōu)化算法;股票價格預(yù)測
股票市場價格是反映經(jīng)濟(jì)動向的晴雨表,對股票價格的準(zhǔn)確預(yù)測可以引導(dǎo)市場平穩(wěn)運(yùn)行,降低風(fēng)險,也可以使投資者最大限度地規(guī)避風(fēng)險,做出正確的投資策略,獲得最大收益.由于受到政治、經(jīng)濟(jì)和社會等各種因素的綜合影響,股票價格波動大,變化異常復(fù)雜,因此準(zhǔn)確把握股票價格的運(yùn)行態(tài)勢一直是金融領(lǐng)域的研究重點(diǎn).
國內(nèi)外學(xué)者對股票價格預(yù)測進(jìn)行了深入的研究,提出了各種預(yù)測方法.時間序列分析是最先應(yīng)用于股票價格預(yù)測的方法,文獻(xiàn)[1]對股票開盤價格建立ARMA模型,對股票開盤價進(jìn)行短期預(yù)測.由于受到各種因素的影響,股票價格呈現(xiàn)出非線性變化,基于線性模型的時間序列分析法不能很好地反映股票非線性變化規(guī)律,預(yù)測精度低,應(yīng)用受限.隨著人工智能技術(shù)的興起,BP神經(jīng)網(wǎng)絡(luò)因?yàn)槠鋸?qiáng)大的非線性映射能力被廣泛應(yīng)用在股票價格預(yù)測中.文獻(xiàn)[2]提出一種基于BP神經(jīng)網(wǎng)絡(luò)的股票價格預(yù)測模型SPPM,對股票價格建立多個神經(jīng)網(wǎng)絡(luò)模型進(jìn)行預(yù)測.神經(jīng)網(wǎng)絡(luò)在非線性的股票預(yù)測中取得了良好的效果,但同時存在著學(xué)習(xí)記憶不穩(wěn)定,收斂速度慢,容易陷入局部最優(yōu)值的問題.支持向量機(jī)回歸(SVR)作為一種新型的機(jī)器學(xué)習(xí)算法[3],可以克服神經(jīng)網(wǎng)絡(luò)過擬合,小樣本,局部最小值等缺陷,被越來越多地運(yùn)用在股票價格預(yù)測中[4-5].由于SVR對參數(shù)選取敏感,合適回歸參數(shù)的選取對SVR模型預(yù)測精度有著決定性作用,但目前沒有有效的理論指導(dǎo)原則.文獻(xiàn)[6]用粒子群算法對支持向量機(jī)的參數(shù)進(jìn)行優(yōu)化,文獻(xiàn)[7]用遺傳算法優(yōu)化搜尋支持向量機(jī)的各項參數(shù),粒子群算法和遺傳算法為SVR參數(shù)的選取提供了一定的指導(dǎo),但容易陷入局部最優(yōu)值.筆者提出了一種利用果蠅算法優(yōu)化支持向量回歸機(jī)參數(shù)的股票價格預(yù)測方法(PCA-FOA-SVR).果蠅優(yōu)化算法[8]是Pan受果蠅覓食行為的啟發(fā)而推演出來的一種群體智能優(yōu)化算法.該算法參數(shù)設(shè)置簡單,適應(yīng)性強(qiáng),搜索效率高,相比其他智能算法全局尋優(yōu)能力強(qiáng),不容易陷入局部最優(yōu)值.這里,筆者采用果蠅算法來優(yōu)化SVR的參數(shù),同時利用主成分分析法對SVR的輸入維數(shù)進(jìn)行分析降維,提取主成分,消除輸入數(shù)據(jù)的冗余,以簡化網(wǎng)絡(luò)結(jié)構(gòu),提高預(yù)測精度.在傳統(tǒng)支持向量機(jī)回歸的基礎(chǔ)上通過引入主成分分析和果蠅算法,克服股票價格數(shù)據(jù)冗余,有效解決SVR參數(shù)難以選擇的問題,為股票價格預(yù)測提供了一個新的途徑.用PCA-FOA-SVR股票預(yù)測模型對股票價格進(jìn)行預(yù)測仿真,并與其他模型對比,驗(yàn)證模型的有效性.
1PCA-FOA-SVR模型
1.1建模基本思想
股票市場作為一個復(fù)雜的動態(tài)非線性系統(tǒng),對股票價格的預(yù)測一直是研究者關(guān)注的重點(diǎn).股票預(yù)測的基本思想一般是利用股票價格的歷史數(shù)據(jù)對股票未來的價格進(jìn)行預(yù)測判斷[9].但影響股票價格的因素很多,包括歷史數(shù)據(jù),技術(shù)指標(biāo),市場因素等,這些數(shù)據(jù)之間往往存在著高度冗余,選取影響股票未來價格的有效因素對股票預(yù)測至關(guān)重要,如果將所有數(shù)據(jù)都作為網(wǎng)絡(luò)的輸入,則會增加網(wǎng)絡(luò)復(fù)雜度,延長網(wǎng)絡(luò)訓(xùn)練時間.PCA可以消除數(shù)據(jù)之間冗余,有效選取影響股票價格的主成分,因此先利用PCA進(jìn)行數(shù)據(jù)分析,降低輸入維數(shù),提高訓(xùn)練樣本有效性.SVR作為后來發(fā)展起來的機(jī)器學(xué)習(xí)算法,可以克服神經(jīng)網(wǎng)路的缺陷,被越來越多地用在非線性時間序列領(lǐng)域,尤其是SVR良好的泛化能力在處理非線性股票價格的預(yù)測中有著較大的優(yōu)勢,因此利用SVR對PCA分析后的輸入變量進(jìn)行建模預(yù)測.然而,利用SVR的優(yōu)勢進(jìn)行股票價格預(yù)測的前提是選擇合適的回歸參數(shù),股票價格預(yù)測精度與回歸參數(shù)的選取有著緊密的聯(lián)系.SVR參數(shù)選取的過程實(shí)質(zhì)是一個搜索優(yōu)化的過程.果蠅算法作為一種全新的群體智能優(yōu)化算法,考慮到其算法簡單,搜索效率高,收斂速度快,在參數(shù)尋優(yōu)方面有著獨(dú)特的優(yōu)勢,因此這里采用果蠅算法對SVR的參數(shù)進(jìn)行尋優(yōu)處理,用優(yōu)化好后的SVR模型對股票價格進(jìn)行建模預(yù)測.算法流程圖如圖1所示.
圖1 PCA-FOA-SVR算法流程圖Fig.1 Flow chart of PCA-FOA-SVR algorithm
1.2主成分分析
主成分分析[10](PCA)是一種利用原始變量之間的相關(guān)性,通過原來變量的少數(shù)幾個線性組合解釋原始變量來實(shí)現(xiàn)降維的多元統(tǒng)計方法.在股票價格預(yù)測問題的研究中,影響股票價格的因素很多,有些對結(jié)果的影響大,有些對結(jié)果的影響小.主成分分析法就是把影響股票價格的幾個因素集中到某幾個綜合指標(biāo)(也就是主成分)上,原始變量通過線性組合來反應(yīng)每一個主成分,主成分之間互為正交,用幾個主成分盡可能多地反映原有變量所包含的信息,繼而可以縮短多變量時間序列的維數(shù),去除冗余信息,減少隱含在多變量時間序列中的部分噪聲,使問題大大簡化[11].主成分的求解步驟如下:
1) 確定分析變量,搜集數(shù)據(jù)資料.
假設(shè)有一樣本,含有n個樣本、p個變量,用自變量矩陣X(n×p)表示樣本集.
2) 對原始數(shù)據(jù)進(jìn)行標(biāo)準(zhǔn)化變換.
原始數(shù)據(jù)標(biāo)準(zhǔn)化是為了消除由于量綱的不同可能帶來的一些不合理影響.
標(biāo)準(zhǔn)化后的自變量為
(1)
3) 計算原始觀測變量樣本數(shù)據(jù)矩陣X經(jīng)標(biāo)準(zhǔn)化變換后的協(xié)方差矩陣R,計算式為
(2)
4) 計算協(xié)方差矩陣R的特征值矩陣L和特征向量矩陣A,計算式為
RA=AL
(3)
5) 根據(jù)特征值矩陣L和特征向量矩陣A分別計算變量的主成分貢獻(xiàn)率及累計貢獻(xiàn)率.由累計貢獻(xiàn)率的大小來判定主成分的個數(shù),一般要求累計貢獻(xiàn)率不小于85%.貢獻(xiàn)率和累計貢獻(xiàn)率的計算式分別為
(4)
(5)
6) 根據(jù)確定的主成分替代原始數(shù)據(jù).
1.3支持向量機(jī)回歸
支持向量機(jī)回歸問題可以解釋為:根據(jù)輸入-輸出數(shù)據(jù)集(xi,yi)(i=1,…,M),來求取輸入和輸出之間的關(guān)系.其中,xi是第i個m維輸入向量,yi是第i個輸出標(biāo)量,M是訓(xùn)練樣本數(shù).
在支持向量回歸中,首先將輸入向量通過一個非線性映射φ(x)映射到一個高維特征空間,然后在高維特征空間中構(gòu)造優(yōu)化超平面,進(jìn)行線性回歸,線性回歸函數(shù)表現(xiàn)形式為
f(x)=〈w,φ(x)〉+b
(6)
式中:w為超平面的權(quán)值向量;b為偏置量.SVR實(shí)質(zhì)上是一個優(yōu)化問題,可以通過最小化目標(biāo)函數(shù),目標(biāo)函數(shù)式[12]為
s.t.
yi-f(xi)≤ξi+ε,i=1,…,k
(7)
這是一個二次優(yōu)化問題,引入拉格朗日函數(shù),將二次優(yōu)化問題轉(zhuǎn)化為其對偶形式為
s.t.
(8)
解二次優(yōu)化的對偶形式,可以得到a的值,其中ω的表達(dá)式為
(9)
因此回歸函數(shù)的表達(dá)式為
(10)
計算b的值,按照Kuhn-Tucker定理,根據(jù)不同的約束條件,可由不同的表達(dá)式計算得出,即
(11)
1.4基于果蠅算法的SVR參數(shù)優(yōu)化
SVR模型參數(shù)的選取對模型的預(yù)測精度和推廣能力有著決定性影響.SVR的參數(shù)一般有不敏感系數(shù)ε,懲罰因子c,核函數(shù)參數(shù)g等[13].不敏感系數(shù)控制函數(shù)擬合誤差大小,與支持向量機(jī)的數(shù)目有著密切關(guān)系:ε過大,會使支持向量機(jī)數(shù)目變少,進(jìn)而會降低模型預(yù)測精度;ε過小,支持向量機(jī)數(shù)目多,導(dǎo)致模型復(fù)雜,推廣能力差.懲罰因子c影響著模型的復(fù)雜度和穩(wěn)定性:c取值大,學(xué)習(xí)精度高,泛化能力差;c取值小,對經(jīng)驗(yàn)誤差的懲罰小,訓(xùn)練誤差變大.核函數(shù)參數(shù)影響著學(xué)習(xí)樣本在空間分布的復(fù)雜程度:g取值大,模型的預(yù)測精度得不到保證;g取值小,模型復(fù)雜,推廣能力受限.因此如果選取的參數(shù)合適,就可以得到穩(wěn)定準(zhǔn)確的回歸模型.
果蠅優(yōu)化算法是根據(jù)果蠅獨(dú)特的覓食行為而推演出來的一種全新群體智能優(yōu)化算法.果蠅有著優(yōu)于其他物種的嗅覺和視覺,在尋找食物過程中,首先根據(jù)空氣中食物的氣味來搜尋食物的來源,當(dāng)飛近食物后再利用其敏銳的視覺來定位食物和種群其他果蠅的位置,并往該方向飛去.
利用FOA對SVR的參數(shù)進(jìn)行優(yōu)化,首先建立關(guān)于參數(shù)(c,g)的目標(biāo)函數(shù),通過迭代算法尋找一組最優(yōu)的參數(shù)(c,g)使目標(biāo)函數(shù)的值最小.FOA算法主要步驟[14]為
1) 隨機(jī)初始化果蠅位置:(Xaxis,Yaxis).
2) 賦予果蠅隨機(jī)方向和距離:
Xi=Xaxis+RandomValue
Yi=Yaxis+RandomValue
(12)
3) 計算味道濃度判定值S.由于食物的具體位置開始無法確定,因此先估計果蠅與原點(diǎn)間的距離Dist,再根據(jù)Dist計算味道濃度判定值S:
(13)
Si=1/Disti
(14)
4) 求果蠅味道濃度Smell.為求出每個果蠅個體位置的味道濃度Smelli,引入味道濃度判定函數(shù)(Fitness function),將味道濃度判定值Si帶入該函數(shù)中:
Smelli=Function(Si)
(15)
5) 在果蠅群體中找出味道濃度最高的果蠅(最優(yōu)個體):
[bestSmell,bestIndex]=max(Smelli)
(16)
6) 對味道濃度值最佳的果蠅,保留其X,Y的坐標(biāo)值,果蠅群體其他果蠅利用視覺飛往該位置:
Smellbest=bestSmell
(17)
Xaxis=X(bestindex)
Yaxis=Y(bestindex)
(18)
7) 進(jìn)入迭代優(yōu)化階段.重復(fù)步驟2)到步驟6)判斷果蠅的味道濃度是否優(yōu)于上一代的味道濃度,若是則用新一代最佳濃度果蠅坐標(biāo)值替換上一代的坐標(biāo)值,依次直到找出最佳濃度果蠅坐標(biāo)值.
2PCA-FOA-SVR模型股票價格預(yù)測
利用PCA-FOA-SVR模型對股票價格預(yù)測的流程如圖2所示,具體步驟如下:
1) 選取模型訓(xùn)練樣本,確定影響股票價格的幾個因素,對樣本數(shù)據(jù)進(jìn)行歸一化處理.
2) 對影響股票價格的因素進(jìn)行主成分分析,消除冗余信息,選擇主成分個數(shù),得出主成分.確定SVR的輸入、輸出變量.
3) 建立目標(biāo)函數(shù),其表達(dá)式為
(19)
4) 初始化模型參數(shù).選取SVR的核函數(shù)和參數(shù);確定目標(biāo)函數(shù)式(19)為果蠅味道濃度判定函數(shù)(Fitness function).確定果蠅優(yōu)化算法的迭代次數(shù)maxgen,群體規(guī)模sizepop,算法終止的bestSmell等參數(shù).
5) 利用果蠅優(yōu)化算法對SVR的參數(shù)(c,g)迭代尋優(yōu).根據(jù)式(13,14)計算果蠅味道濃度判定值Si,將Si帶入式(19)中計算果蠅味道濃度Smelli,迭代循環(huán),尋找使目標(biāo)函數(shù)最小的最優(yōu)果蠅味道濃度值bestSmell.
6) 當(dāng)bestSmell小于指定值或者gen=maxgen時,算法終止,取得使味道濃度值最佳的(c,g).
7) 利用最優(yōu)的(c,g)建立SVR預(yù)測模型.對股票未來幾天的價格進(jìn)行預(yù)測.
圖2 PCA-FOA-SVR模型股票價格預(yù)測流程圖Fig.2 The flow chart of PCA-FOA-SVR model for stock prediction
3實(shí)驗(yàn)仿真
3.1股票預(yù)測指標(biāo)體系
選取股票寧滬高速(600377)2013年6月24日到2014年3月5日之間的交易數(shù)據(jù)為實(shí)驗(yàn)對象.數(shù)據(jù)分為兩部分,2013年6月24日到2014年2月18日的交易數(shù)據(jù)作為訓(xùn)練集來構(gòu)建模型,2014年2月19日到2014年3月5日的交易數(shù)據(jù)作為測試集,驗(yàn)證模型的有效性.選取股票的開盤價、收盤價、最高價、最低價、成交額和成交量等為影響股票價格的幾個因素,作為股票價格預(yù)測模型的輸入變量.股票交易數(shù)據(jù)見表1.
表1 寧滬高速股票成交信息表
為了避免原始輸入變量由于量綱與數(shù)量級的不同對結(jié)果造成影響,對原始數(shù)據(jù)進(jìn)行無量綱化處理,標(biāo)準(zhǔn)化公式為
(20)
3.2預(yù)測因子的PCA處理
利用SPSS軟件對股票的開盤價、最高價、最低價、收盤價、成交額和成交量等6個技術(shù)指標(biāo)作主成分分析,分析結(jié)果見表2.由表2可以發(fā)現(xiàn)前兩項成分的方差累計貢獻(xiàn)率就達(dá)到了99.056%,即保留前兩個主成分即可概括原始數(shù)據(jù)的絕大部分信息.因此將主成分一和主成分二作為支持向量機(jī)的輸入變量,第二天的收盤價作為輸出變量.用主成分一和主成分二預(yù)測第二天的收盤價.
表2 主成分分析結(jié)果
3.3利用果蠅算法優(yōu)化SVR參數(shù)
利用果蠅算法對SVR參數(shù)(c,g)進(jìn)行迭代尋優(yōu),設(shè)置果蠅優(yōu)化算法的最大迭代次數(shù)maxgen=100,設(shè)置群體規(guī)模sizepop=10.圖3為優(yōu)化過程中目標(biāo)函數(shù)值隨迭代次數(shù)變化情況.
圖3 目標(biāo)函數(shù)值隨迭代次數(shù)變化情況Fig.3 Results of objective function value changes with the number of iterations
從圖3中可以看到:果蠅算法在迭代初期,目標(biāo)函數(shù)值就迅速下降,隨著迭代次數(shù)的增加目標(biāo)函數(shù)值逐漸趨向于一個穩(wěn)定值,當(dāng)?shù)降谑舜鷷r目標(biāo)函數(shù)值已逼近算法最優(yōu)值.這表明果蠅算法有著較快的收斂速度和全局尋優(yōu)能力.
3.4利用SVR對股票價格進(jìn)行預(yù)測
將果蠅優(yōu)化算法得到的最優(yōu)c和g值帶入到SVR中,重新建立SVR模型對股票價格進(jìn)行預(yù)測.圖4為PCA-FOA-SVR模型的預(yù)測結(jié)果.
圖4 PCA-FOA-SVR模型的預(yù)測結(jié)果Fig.4 Prediction results of PCA-FOA-SVR model
從圖4中可以看到:PCA-FOA-SVR模型預(yù)測值的總體趨勢與實(shí)際股票價格走勢基本一致,模型預(yù)測值與真實(shí)值誤差較小,預(yù)測效果較好.
3.5模型預(yù)測性能對比分析
為了驗(yàn)證模型的有效性,選取BP模型、SVR模型作為對比模型.BP神經(jīng)網(wǎng)絡(luò)的參數(shù)設(shè)置為:三層神經(jīng)網(wǎng)絡(luò),訓(xùn)練次數(shù)為3 000,誤差為0.001,學(xué)習(xí)率為0.005;SVR模型采用交叉驗(yàn)證選取最佳參數(shù)c和g.用前160個數(shù)據(jù)作為訓(xùn)練樣本,后10個數(shù)據(jù)作為測試樣本.
用誤差均方根RMSE(Rootmeansquareerror)和相對誤差絕對值平均MAPE(Meanabsolutepercentageerror)作為評價指標(biāo)來評價模型的有效性和魯棒性.RMSE和MAPE的定義分別為
(21)
(22)
各個模型的預(yù)測結(jié)果如表3所示.
表3 各個模型預(yù)測結(jié)果
各個模型的預(yù)測誤差值如表4所示.
表4 模型的預(yù)測誤差
分析各個模型預(yù)測結(jié)果,由表3可知:PCA-FOA-SVR模型的預(yù)測值更接近于真實(shí)值,圖5中PCA-FOA-SVR模型的走勢更接近于真實(shí)曲線,與原始數(shù)據(jù)的擬合度最高.RMSE和MAPE作為衡量模型優(yōu)劣的重要指標(biāo),從表4可以看出:SVR模型的預(yù)測誤差低于BP模型的預(yù)測誤差,PCA-FOA-SVR模型的預(yù)測誤差低于SVR的預(yù)測誤差,相比BP和SVR模型,PCA-FOA-SVR模型有更高的預(yù)測精度.
圖5 各模型預(yù)測值對比Fig.5 Comparison results of different models
4結(jié)論
利用股票寧滬高速(600377)2013年6月24日到2014年3月5日之間的交易數(shù)據(jù)建立PCA-FOA-SVR模型,通過對影響股票價格數(shù)據(jù)進(jìn)行PCA分析,將原始的6 個輸入變量用兩個主成分替代,消除了數(shù)據(jù)冗余,簡化了網(wǎng)絡(luò)結(jié)構(gòu),同時在SVR訓(xùn)練過程中加入果蠅算法,利用果蠅良好的尋優(yōu)能力,解決SVR了參數(shù)難以確定的問題.實(shí)驗(yàn)結(jié)果表明:PCA-FOA-SVR模型相比其他模型有著更好的預(yù)測精度和泛化能力,該模型較好地反應(yīng)股票價格漲跌趨勢,可以為投資者提供合理有效的參考.
參考文獻(xiàn):
[1]馮盼,曹顯兵.基于ARMA模型的股價分析與預(yù)測的實(shí)證研究[J].數(shù)學(xué)的實(shí)踐與認(rèn)識,2011,22:84-90.
[2]陳嶷瑛,張澤星,李文斌.基于神經(jīng)網(wǎng)絡(luò)的股票價格預(yù)測模型[J].計算機(jī)應(yīng)用與軟件,2014(5):89-92.
[3]鄭莉莉,黃鮮萍,梁榮華.基于支持向量機(jī)的人體姿態(tài)識別[J].浙江工業(yè)大學(xué)學(xué)報,2012,40(6):670-675.
[4]陳海英.基于支持向量機(jī)的上證指數(shù)預(yù)測和分析[J].計算機(jī)仿真,2013(1):297-300.
[5]張世軍,程國勝,蔡吉花,等.基于網(wǎng)絡(luò)輿情支持向量機(jī)的股票價格預(yù)測研究[J].數(shù)學(xué)的實(shí)踐與認(rèn)識,2013,24:33-40.
[6]蘭秀菊,張麗霞,魯建廈,等.基于小波分析和PSO-SVM的控制圖混合模式識別[J].浙江工業(yè)大學(xué)學(xué)報,2012,40(5):532-536.
[7]吳景龍,楊淑霞,劉承水.基于遺傳算法優(yōu)化參數(shù)的支持向量機(jī)短期負(fù)荷預(yù)測方法[J].中南大學(xué)學(xué)報(自然科學(xué)版),2009(1):180-184.
[8]PANWT.Anewfruitflyoptimizationalgorithm:takingthefinancialdistressmodelasanexample[J].Knowledge-basedsystems,2012,26(2):69-74.
[9]蔡紅,陳榮耀.基于PCA-BP神經(jīng)網(wǎng)絡(luò)的股票價格預(yù)測研究[J].計算機(jī)仿真,2011(3):365-368.
[10]李靜萍.多元統(tǒng)計分析:原理與基于SPSS的應(yīng)用[M].2版.北京:中國人民大學(xué)出版社,2015.
[11]馬銀曉,柳虹.因子分析法在城鎮(zhèn)居民消費(fèi)結(jié)構(gòu)分析中的研究[J].浙江工業(yè)大學(xué)學(xué)報,2012,40(3):336-339.
[12]楊杰,占君,張繼傳.Matlab神經(jīng)網(wǎng)絡(luò)30例[M].北京:電子工業(yè)出版社,2014.
[13]任洪娥,霍滿冬.基于PSO優(yōu)化的SVM預(yù)測應(yīng)用研究[J].計算機(jī)應(yīng)用研究,2009(3):867-869.
[14]潘文超.果蠅最佳化演算法[M].臺北:滄海書局,2011.
(責(zé)任編輯:陳石平)
Research on stock price prediction based on PCA-FOA-SVR
WANG Weihong, ZHUO Pengyu
(College of Computer Science and Technology, Zhejiang University of Technology, Hangzhou 310023, China)
Abstract:Stock price prediction has been regarded as an intractable task due to the intrinsic nonlinearity and instability of stock market. In this paper, based on the traditional SVR approach, a forecasting model that integrates principal component analysis ( PCA) and fruit fly optimization algorithm (FOA) for predicting stock price was proposed. In the algorithm, in order to eliminate the redundant information, the factors which influence stock price were analyzed by PCA firstly. Second, the parameters of SVR were optimized by the fruit fly optimization algorithm. Then, with the best parameters, the SVR model was used to establish a prediction model for the nonlinearity stock price. Real data sets of stock 600377 was used for simulation experiments base on the model of PCA-FOA-SVR. Experimental results indicate that the PCA-FOA-SVR model can improve the accuracy of prediction and reduce errors. The PCA-FOA-SVR model was proved to be an effective and feasible method.
Keywords:principal component analysis; support vector regression; fruit fly optimization algorithm; stock price prediction
收稿日期:2016-01-15
基金項目:國家自然科學(xué)專項基金項目(61340058);浙江省自然科學(xué)基金重點(diǎn)項目(LZ14F020001)
作者簡介:王衛(wèi)紅(1969—),男,浙江臨海人,教授,研究方向?yàn)檫b感信息提取、空間信息服務(wù)等,E-mail: wwh@zjut.edu.cn.
中圖分類號:TP391
文獻(xiàn)標(biāo)志碼:A
文章編號:1006-4303(2016)04-0399-06