clear all;
filename_basic='G:\forecast\data';
filename=[filename_basic];
x0=xlsread(filename,1,'C2:C41');
L=length(x0);
preNumber=20;
for t=3:L
r=x0(t-1,:)/x0(t,:);
end
x1=zeros(L,1);
x1(1,:)=x0(1,:);
for t=2:L
x1(t,:)=x1(t-1,:)+x0(t,:);
end
z=zeros(L-1,1);
Y=zeros(L-1,1);
for t=1:L-1
z(t,:)=((exp(1)-2)*x1(t+1,:)+x1(t,:))/(exp(1)-1);
Y(t,:)=x0(t,:);
end
B=[-z,ones(L-1,1)];
a_=inv(B'*B)*B'*Y;
a=a_(1,:);
u=a_(2,:);
x1_pre=zeros(L+preNumber,1);
x0_pre=zeros(L+preNumber,1);
x0_error=zeros(L+preNumber,1);
for i=1:L+preNumber
x1_=(x0(1,:)-u/a)*exp(-a*(i))+u/a;
x1_pre(i,:)=x1_;
end
x0_pre(1,:)= x0(1,:);
for t=1:L-1+preNumber
x0_pre(t+1,:)=x1_pre(t+1,:)-x1_pre(t,:);
end
id='11-28-entrance';
filename_basic1='G:\forecast\';
filename_id=[id,'.xlsx'];
filename_excel=[filename_basic,filename_id];
xlswrite(filename_excel,x0_pre());
评论0