第7章时间序列预测法7.1移动平均值预测法7.2指数平滑预测法7.3季节指数预测法7.4时间序列分解法练习与提高(七)7.5平稳时间序列ARMA模型预测法7.6案例分析7.1移动平均值预测法7.1.1一次移动平均法(1)一次移动平均法模型一次移动平均法是收集一组观察值,计算这组观察值的均值,利用这一均值作为下一期的预测值。其模型:(1)11()/ttttNMXXXN(1)1ˆttXM其中,为t期的实际值;N为所选数据个数,为下一期(t+1)的预测值。tX1ˆtX【例7-1】我国从1996年至2007年的实际投资额如表7-1,试用一次移动平均法预测2008年的投资额(取N=3)。MATLAB程序年份1995199619971998199920002001投资额20019.322913.524941.128406.229854.732917.737213.5年份200220032004200520062007投资额43499.9155566.6170477.488604.28109869.8137239X=[20019.322913.524941.128406.229854.732917.737213.5...43499.9155566.6170477.488604.28109869.83137239.01];N1=3;fort=3:length(X)M1(t)=(X(t)+X(t-1)+X(t-2))/N1;%一次移动平均值X1(t+1)=M1(t);%下一期预测值endM1,X1t1=1:length(X);t2=4:length(X)+1plot(t1,X,'-+',t2,X1(4:end),'-O')xlabel('时间')ylabel('投资额')legend('原始数据','预测值')预测图024681012142468101214x104时间投资额原始数据预测值时间序号实际观测值三个月移动平均值五个月移动平均值1980.11980.21980.31980.41980.51980.61980.71980.81980.91980.101980.111980.12123456789101112203.8214.1229.9223.7220.7198.4207.8228.5206.5226.8247.8259.5---215.9222.6224.8214.6209.0211.6214.3220.6227.0244.7-----218.4217.4216.1215.8212.4213.6223.5233.8预测图024681012142468101214x104时间投资额原始数据预测值7.1.2二次移动平均法(1)二次移动平均法的线性模型其中,为t期的实际值,为t+T期的预测值,t为当前的时期数,T为由t至预测期的时期数。ˆtTttXabT(1)11()/ttttNMXXXN(2)(1)(1)(1)11()/ttttNMMMMN(1)(2)2tttaMM(1)(2)2()/(1)tttbMMNtXtXˆtTX(【例7-2】(续例7-1)利用二次移动平均法预测2008年投资额(取N=3)。(1)先计算一次、二次移动平均值clearX=[20019.322913.524941.128406.229854.732917.737213.543499.9155566.6170477.488604.28109869.83137239.01];N=3;fort=3:length(X)M1(t)=(X(t)+X(t-1)+X(t-2))/N;%一次移动平均值endM1fort=5:length(M1)M2(t)=(M1(t)+M1(t-1)+M1(t-2))/N;%二次移动平均值endM2(2)以2007年作为当期数,预测2008年和2009年首页a=2*M1(end)-M2(end)b=2*(M1(end)-M2(end))/(N-1)T=1:2;y=a+b*T(3)下面的程序给出了2000年至2008年的预测值a=2*M1(5:end)-M2(5:end)b=2*(M1(5:end)-M2(5:end))/(N-1)T=1y=a+b*Tt1=1:length(X);t2=6:length(X)+1plot(t1,X,'-+',t2,y,'-O')预测图02468101214246810121416x104时间投资额原始数据预测值7.2指数平滑预测法7.2.1一次指数平滑法(1)一次指数平滑法的基本模型其中,为时间序列观测值,为观测值的指数平滑值,为平滑系数,。(1)(1)1(1)tttSXS(1)1(1)110(1)(1)(1)tttttSXXXS(1)1ˆttXS01,,,nXXX(1)(1)(1)01,,,nSSS01【例7-3】(续例7-1)利用一次指数平滑法预测2008年的预测值(=0.7、0.8、0.9)。X=[20019.322913.524941.128406.229854.732917.737213.5...43499.9155566.6170477.488604.28109869.83137239.01];X0=X(1);X1=X(2:end);alpha=0.9;S0=X0;%初始值S1(1)=alpha*X1(1)+(1-alpha)*S0;%指数平滑值第一项fort=1:length(X1)-1S1(t+1)=alpha*X1(t+1)+(1-alpha)*S1(t);%指数平滑值全部项endS1S=[S0S1];MSE=sum((X1-S(1:length(X1))).^2)./12%Î误差平方均值t1=1:length(X);t2=2:length(X)+1plot(t1,X,'-+',t2,S,'-O')首页024681012142468101214x104时间投资额原始数据预测值时间序号实际观测值指数平滑法α=0.3α=0.5α=0.71980.011980.021980.031980.041980.051980.061980.071980.081980.091980.101980.111980.121981.01123456789101112203.8214.1229.9223.7220.7198.4207.8228.5206.5226.8247.8259.5—203.8206.9213.8216.8218.0212.1210.8216.1213.2217.3226.5236.4—203.8209.0230.0226.9223.8211.1209.5219.0212.8219.8233.8246.6—203.8211.0224.2223.9221.7205.4207.1222.1211.2222.1240.1253.7(1)1(1)ttXS(1)tS7.2.2二次指数平滑法(1)二次指数平滑法的线性模型为ˆtTttXabT(1)(2)2tttaSS(1)(2)()1tttbSS(1)(1)1(1)tttSXS(2)(1)(2)1(1)tttSSS【例7-4】(续例7-1)用二次指数平滑法预测2008年投资额(=0.9)。1)先计算一次、二次指数平滑值clearX=[20019.322913.524941.128406.229854.732917.737213.5...43499.9155566.6170477.488604.28109869.83137239.01];X0=X(1);X1=X(2:end);alpha=0.9;S10=X0;%S1的初始值S1(1)=alpha*X1(1)+(1-alpha)*S10;fort=1:length(X1)-1S1(t+1)=alpha*X1(t+1)+(1-alpha)*S1(t);endS1S20=X0;%S2的初始值S2(1)=alpha*S1(1)+(1-alpha)*S20;第一项fort=1:length(S1)-1S2(t+1)=alpha*S1(t+1)+(1-alpha)*S2(t);%endS22)2007作为当期数预测2008年的值a=2*S1(end)-S2(end)%2007基期b=alpha/(1-alpha)*(S1(end)-S2(end))%2007基期T=1;y=a+b*T%2008年的预测值3)预测2008年及以前的全部预测值a=2*S1(1:end)-S2(1:end)b=alpha/(1-alpha)*(S1(1:end)-S2(1:end))T=1;y=a+b*TY=[X0,y]t1=1:length(X);t2=2:length(X)+1;plot(t1,X,'-+',t2,Y,'-O')首页024681012140.20.40.60.811.21.41.61.8x105时间投资额原始数据预测值7.3季节指数预测法首页7.3.1季节性水平模型如果时间序列没有明显的趋势变动,而主要受季节变化和不规则变动影响时,可用季节性水平模型进行预测。预测模型的方法:(1)计算历年同季的平均数115(43)226(42)337(41)448(4)1()1()1()1()nnnnrXXXnrXXXnrXXXnrXXXn(2)计算全季总平均数(3)计算各季的季节指数历年同季的平均数与全时期的季平均数之比,即:4114niiyXn,1,2,3,4iiriy若各季的季节指数之和不为4,季节指数需要调整为4(1,2,3,4)iiiFi(4)利用季节指数法进行预测ˆttiiXX【例7-5】我国2001年至2007年居民消费指数(衣着类)28个季度数据,并利用2007年第4季度数据作为已知数据,预测2008年第1、第2季度居民消费物价指数。年(季)2001(1)2001(2)2001(3)2001(4)2002(1)2002(2)2002(3)指数99.399.999.8100.499.299.999.6年(季)2002(4)2003(1)2003(2)2003(3)2003(4)2004(1)2004(2)指数100.399.3100.099.7100.499.599.9年(季)2004(3)2004(4)2005(1)2005(2)2005(3)2005(4)2001(1)指数99.6100.499.2100.199.9100.599.4年(季)2006(2)2006(3)2006(4)2007(1)2007(2)2007(3)2007(4)指数100.199.8100.899.3100.199.6100.5(1)根据所给数据,画出走势图,观察季节性X=[99.399.999.8100.499.299.999.6100.399.3100.099.7100.499.599.999.6100.499.2100.199.9100.599.4100.199.8100.899.3100.199.6100.5];t=1:28;Y=X'plot(t,Y(:),'-o')xlabel('时间')ylabel('消费指数')05101520253099.299.499.699.8100100.2100.4100.6100.8时间消费指数(2)计算季节指数并预测r=mean(X)%同季平均数y=mean(X(:))%全部季度平均数b=r./y%各季季节指数F=4/sum(b)*b%调整各季季节指数%下面以2007年第4季度作为基期X1=X(end)*(F(1)/F(4))%2008年第1季度预测值X2=X(end)*(F(2)/F(4))%2008年第2季度预测值7.3.2季节性趋势模型当时间序列既有季节性变动又有趋势性变动时,先建立趋势预测模型,在此基础上求得季节指数,再建立