[問題] 關於灰預測滾動建模已回收
不好意思 我想請問一下
因為我想用四點 五點 六點建模作股價預測
但是由於資料有80筆
那要用四點建模作滾動的話 程式碼要怎麼改呢?
就是要分別將t-4 t-3 t-2 t-1期來預測t期 再將t-3 t-2 t-1 t期預測t+1期
想請教各位大大了
另外附上之前版友幫我修改的程式碼
%function GM11
clc %清空畫面
clear all %清空暫存器
%輸入X0
output_N=3 %輸出幾點
X0=[86.89 102.78 104.93 126.92] %像這個 就是四點
n=size(X0); %查看是幾點建模
%=============== 做一次累加 %求出X1
X1(1)=X0(1);
for k=2:1:n(2);
X1(k)=X1(k-1)+X0(k);
end
%=============== 建構B,yn
B=ones(k-1,2); % B為(k-1,2) 的矩陣
for i=1:1:n(2)-1;
B(i)=-1/2*(X1(i)+X1(i+1));
end
yn=X0(2:k)';
%=============== 計算a^
BTB=B'*B;
BTB_1=inv(BTB);
BTyn=B'*yn;
a_=BTB_1*BTyn;
a=a_(1)
u=a_(2)
%=============== 建構方程式
for k=1:1:n(2)-1;
X_1(k+1)=X0(1)*exp(-a*k)+u/a*(1-exp(-a*k));
end
for k=1:1:n(2)-1;
X_0(k+1)=(1-exp(a))*(X0(1)-u/a)*exp(-a*k);
end
%=============== 預測
for k=n(2):1:n(2)-1+output_N;
X_1(k+1)=X0(1)*exp(-a*k)+u/a*(1-exp(-a*k));
X_0(k+1)=X_1(k+1)-X_1(k);
end
X_01=X_0(k+2-output_N:k+1)';
X_01
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 163.17.29.245
→
05/21 20:42, , 1F
05/21 20:42, 1F
→
05/21 20:42, , 2F
05/21 20:42, 2F