【遗传优化BP网络】基于自适应遗传算法的BP神经网络的股票预测MATLAB仿真
生活随笔
收集整理的這篇文章主要介紹了
【遗传优化BP网络】基于自适应遗传算法的BP神经网络的股票预测MATLAB仿真
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
1.軟件版本
MATLAB2021a
2.本算法理論知識
? ? ? ? 通過MATLAB對BP神經網絡,基于遺傳優(yōu)化的BP神經網絡,基于改進遺傳優(yōu)化的BP神經網絡以及基于改進遺傳優(yōu)化的組合BP神經網絡等多種算法的股價預測性能。從仿真結果可知,基于改進遺傳優(yōu)化的組合BP神經網絡性能略優(yōu)于改進遺傳優(yōu)化的BP神經網絡,而比起傳統(tǒng)的BP神經網絡預測算法和基于傳統(tǒng)遺傳優(yōu)化的BP神經網絡預測算法,具有較大的性能優(yōu)勢。
3.核心代碼
clc; clear; close all; warning off; addpath 'func\' addpath 'func_GA\'%本程序是使用matlab自帶BP網絡,實現(xiàn)股票預測,用來最后改進算法對比的 load data.mat%收盤價格 C = OHLC(:,4); Mins = min(C); Maxs = max(C); C = (C-Mins)/(Maxs-Mins);LEN = 10; %樣本的劃分 for i = 1:length(C)-LENPrice1(:,i) = C(i:i+LEN-1);Price2(i) = C(i+LEN); end%訓練樣本 L1 = floor(0.6*length(Price2)); for i = 1:L1train_data(:,i) = Price1(:,i); train_aim(i) = Price2(i); end%測試樣本 L2 = length(Price2) - L1; for i = 1:L2test_data(:,i) = Price1(:,i+L1); test_aim(i) = Price2(i+L1); end%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %如下的是改進BP網絡算法 %定義神經網絡的各個層的個數(shù) Num_In = LEN; Num_Hidden = 5; Num_Out = 1; %構建BP網絡 net = newff(train_data,train_aim,Num_Hidden);ERR1 = []; ERR2 = []; ERR3 = []; for j = 1:5j%通過改進遺傳算法優(yōu)化BP參數(shù)net = func_newGA(net,Num_In,Num_Hidden,Num_Out,train_data,train_aim);%網絡訓練net.trainParam.showWindow = 0;net = train(net,train_data,train_aim);outputs = sim(net,test_data);d1 = test_aim*(Maxs-Mins) + Mins;d2 = outputs*(Maxs-Mins) + Mins;ERR1 = [ERR1,mean(abs(d1-d2)./d2) ];ERR2 = [ERR2,mean((abs(d1-d2)./d2).^2) ];ERR3 = [ERR3,std((abs(d1-d2)./d2).^2) ]; endfigure; plot(d1,'b'); hold on plot(d2,'r'); legend('真實股價','預測股價'); xlabel('時間(days)'); ylabel('收盤價格對比');disp('平均誤差:'); mean(ERR1) disp('平方差:'); mean(ERR2) disp('均方差:'); mean(ERR3)4.操作步驟與仿真結論
| 算法 | 平均誤差 | 平方差 | 均方差 |
| BP神經網絡 | 0.0343 | 0.0032 | 0.0026 |
| 遺傳優(yōu)化BP神經網絡 | 0.0191 | 0.00056 | 0.000682 |
| 自適應遺傳優(yōu)化BP神經網絡 | 0.0165 | 4.214e-04 | 5.69e-04 |
| 自適應遺傳優(yōu)化組合BP神經網絡 | 0.0160 | 4.00e-04 | 5.40e-04 |
?5.參考文獻
[1]李超. 基于自適應遺傳算法的BP神經網絡預測研究及應用[D]. 山西師范大學.
A06-34
6.完整源碼獲得方式
方式1:微信或者QQ聯(lián)系博主
方式2:訂閱MATLAB/FPGA教程,免費獲得教程案例以及任意2份完整源碼
總結
以上是生活随笔為你收集整理的【遗传优化BP网络】基于自适应遗传算法的BP神经网络的股票预测MATLAB仿真的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【NSGAII】基于NSGAII的多目标
- 下一篇: 【FPGA教程案例1】基于FPGA的串行