[發明專利]一種基于改進的支持向量機股票收益率預測方法在審
| 申請號: | 201910298961.8 | 申請日: | 2019-04-15 |
| 公開(公告)號: | CN110163412A | 公開(公告)日: | 2019-08-23 |
| 發明(設計)人: | 方昕;陳玲玲 | 申請(專利權)人: | 杭州電子科技大學 |
| 主分類號: | G06Q10/04 | 分類號: | G06Q10/04;G06Q40/04;G06N3/00;G06N20/10 |
| 代理公司: | 杭州君度專利代理事務所(特殊普通合伙) 33240 | 代理人: | 朱月芬 |
| 地址: | 310018 浙*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 支持向量機 股票 趨勢預測 特征屬性 分類 預測 粒子群算法 粒子群優化 改進 參數選擇 困難問題 輸入變量 輸入技術 輸入特征 特征選擇 預測性能 減小 維度 算法 搜索 重復 優化 | ||
1.一種基于改進的支持向量機股票收益率預測方法,其特征在于,具體包括以下步驟:
S1,數據采集:
使用python程序從網站下載股票日交易數據;
S2:特征提取:
計算技術指標,用股票技術分析中的技術指標作為支持向量機的輸入特征;
S3:粒子群種群初始化:
將技術指標作為粒子群算法中的粒子,隨機初始化粒子的速度與位置,皆用二進制碼表示;假設粒子的種群規模為F,粒子群搜索空間維度為d,d也為特征數量;粒子在空間的位置向量為代表特征的位置向量,速度向量為代表特征的速度向量,i=1,2,3……F;
S4:通過BPSO特征選擇和SVM參數尋優:
將二進制粒子群算法BPSO中粒子的初始速度與位置隨機分配,粒子的個體最優位置記為群體的歷史最優位置記為設目標函數為f(.),個體歷史最優位置的迭代公式如下:
其中t表示迭代次數;
粒子的速度更新公式:
粒子調整空間位置如下:
其中,分別對應第i個粒子在第t次迭代中的速度、位置、局部最優位置、全局最優位置;w是慣性權重,C1,C2是學習因子,且為正數;S函數隨機均勻分布,調整空間位置是將粒子速度映射到[0,1]之間,并與隨機數比較,更新粒子的位置狀態;粒子位置每一維的取值被限制在區間[-Xmax,Xmin]上,粒子的速度被限制在[-Vmax,Vmin]上,Vmax=βXmax;Xmax表示位置更新的最大值,Xmin表示位置更新的最小值,Vmax為速度更新的最大值,Vmin為速度更新的最小值,β為任意常數;
采用RBF函數作為SVM的核函數,RBF函數定義如式:
K(x,y)=exp(-γ||x-y||2),γ>0 (5)
SVM需要優化兩個參數,核參數γ>0和誤差項的懲罰參數C>0,粒子中也應當包含這兩個參數;
粒子中有兩個子串分別用于編碼C和γ;假設子串S用于編碼C和γ,S的長度為L,S所代表的無符號整數值是i,C和γ的取值范圍是[Cmin,Cmax]和[γmin,γmax],則參數C和γ的真實值是由下式確定;
粒子中還有一個子串用于編碼特征信息,即特征掩碼;特征掩碼的某一位是1表示相應的特征被選中,是0表示相應的特征不被選中;
粒子的結構圖如下所示,它由三部分組成:編碼參數C的子串長度為nc,編碼參數γ的子串長度為nγ,以及特征掩碼子串長度為nF,nc和nγ決定了編碼參數C、γ的精度,nF由分類問題的特征數決定;
粒子的結構圖
S5:設定粒子群判定條件:
設定兩個條件:(1)如果迭代次數超過設置的最大迭代次數,則跳出循環;(2)若適應度值滿足確定的最小界限,則跳出循環;
S6:構建數據矩陣:
由前面粒子群算法選中的特征子集構成特征矩陣;
S7:訓練集進行交叉驗證:
將數據的訓練驗證部分數據進行K折交叉驗證,進行參數尋優;將數據分為k個子集,粒子群優化的SVM算法在每個數據集上運行k次,每次取一個子集作為驗證集,其余訓練SVM,然后取k次實驗結果的平均值作為該數據集的分類結果;
S9:將交易信號構建為標簽:
將粒子群選取的特征通過以下方式構建作為標記的交易信號:Yj={y1,y2,…,yj},其中j=1,2,…,n為樣本數;交易信號的具體構建步驟如下:
1)計算日均價格Pi
其中Cj表示股票收盤價,Hj表股票最高價,Lj表示最低價,Oi表示開盤價;
2)計算未來k天的算數收益率Vj,k=1,2,…,10;
3)構建交易信號Yi
S10:樣本內訓練:
將由最優特征構造的數據輸入到支持向量機訓練算法模型,并用粒子群對支持向量機進行同步參數尋優,并與實際股票趨勢進行比較,得出股票預測的趨勢以及預測的準確性;
S11:適應度值評估:
根據支持向量機算法分類過程中,得到混淆矩陣,如下表1所示:
表1混淆矩陣
其中TP為被模型預測為正的正樣本,FP為被模型預測為正的負樣本,FN為被模型預測為負的正樣本,TN為被模型預測為負的負樣本,N=TP+FN+FP+TN表示樣本總量;
分類精度Accuracy表示分類的正樣本占總樣本的比率,計算公式如下:
靈敏度Sensitivity表示分類的正樣本占真實的正樣本的比率,計算公式如下:
Sensitivity=TP/(TP+FN) (12)
查準率Precision表示被正確分類的正樣本占預測為正樣本的比例,計算公式如下:
Precision=TP/(TP+FP)
(13)
F值用來評價數據集的有效綜合性能指標,即靈敏度和查準率的加權平均值,F值越趨近于1表示分類結果越好,公式如下:
以適應度值由Accuracy與feature_num組成,值越大越好,公式如下:
其中,feature_num表示通過特征選擇所選擇的特征數目;wa和wf分別是上述兩個因素的權重,滿足wa+wf=1;
S12:樣本外測試:
用測試數據來測試前面特征處理和參數優化的支持向量機算法模型,得到每個樣本的T+k天的預測值得到分類結果,并與實際股票價格趨勢對比,通過混淆矩陣,計算得出股票趨勢預測的準確性。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于杭州電子科技大學,未經杭州電子科技大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910298961.8/1.html,轉載請聲明來源鉆瓜專利網。
- 同類專利
- 專利分類
G06Q 專門適用于行政、商業、金融、管理、監督或預測目的的數據處理系統或方法;其他類目不包含的專門適用于行政、商業、金融、管理、監督或預測目的的處理系統或方法
G06Q10-00 行政;管理
G06Q10-02 .預定,例如用于門票、服務或事件的
G06Q10-04 .預測或優化,例如線性規劃、“旅行商問題”或“下料問題”
G06Q10-06 .資源、工作流、人員或項目管理,例如組織、規劃、調度或分配時間、人員或機器資源;企業規劃;組織模型
G06Q10-08 .物流,例如倉儲、裝貨、配送或運輸;存貨或庫存管理,例如訂貨、采購或平衡訂單
G06Q10-10 .辦公自動化,例如電子郵件或群件的計算機輔助管理





