Eviews时间序列分析实例.docx
《Eviews时间序列分析实例.docx》由会员分享,可在线阅读,更多相关《Eviews时间序列分析实例.docx(19页珍藏版)》请在冰豆网上搜索。
![Eviews时间序列分析实例.docx](https://file1.bdocx.com/fileroot1/2022-11/25/ceeef98f-8134-47ec-bec6-2e6494212fb5/ceeef98f-8134-47ec-bec6-2e6494212fb51.gif)
Eviews时间序列分析实例
Eviews时间序列分析实例
时间序列是市场预测中经常涉及的一类数据形式,本书第七章对它进行了比较详细的介绍。
通过第七章的学习,读者了解了什么是时间序列,并接触到有关时间序列分析方法的原理和一些分析实例。
本节的主要内容是说明如何使用Eviews软件进行分析。
一、指数平滑法实例
所谓指数平滑实际就是对历史数据的加权平均。
它可以用于任何一种没有明显函数规律,但确实存在某种前后关联的时间序列的短期预测。
由于其他很多分析方法都不具有这种特点,指数平滑法在时间序列预测中仍然占据着相当重要的位置。
(-)一次指数平滑
一次指数平滑又称单指数平滑。
它最突出的优点是方法非常简单,甚至只要样本末期的平滑值,就可以得到预测结果。
一次指数平滑的特点是:
能够跟踪数据变化。
这一特点所有指数都具有。
预测过程中添加最新的样本数据后,新数据应取代老数据的地位,老数据会逐渐居于次要的地位,直至被淘汰。
这样,预测值总是反映最新的数据结构。
一次指数平滑有局限性。
第一,预测值不能反映趋势变动、季节波动等有规律的变动;第二,这种方法多适用于短期预测,而不适合作中长期的预测;第三,由于预测值是历史数据的均值,因此与实际序列的变化相比有滞后现象。
指数平滑预测是否理想,很大程度上取决于平滑系数。
Eviews提供两种确定指数平滑系数的方法:
自动给定和人工确定。
选择自动给定,系统将按照预测误差平方和最小原则自动确定系数。
如果系数接近1,说明该序列近似纯随机序列,这时最新的观测值就是最理想的预测值。
出于预测的考虑,有时系统给定的系数不是很理想,用户需要自己指定平滑系数值。
平滑系数取什么值比较合适呢?
一般来说,如果序列变化比较平缓,平滑系数值应该比较小,比如小于0.l;如果序列变化比较剧烈,平滑系数值可以取得大一些,如0.3~0.5。
若平滑系数值大于0.5才能跟上序列的变化,表明序列有很强的趋势,不能采用一次指数平滑进行预测。
[例1]某企业食盐销售量预测。
现在拥有最近连续30个月份的历史资料(见表l),试预测下一月份销售量。
表1某企业食盐销售量单位:
吨
解:
使用Eviews对数据进行分析,第一步是建立工作文件和录入数据。
有关操作在本章第一节中已经阐明,这里不再赘述。
假设已经建立工作文件,并生成了一个样本期为l~30的序列,命名为SALES。
序列SALES中包含例1中需要分析的数据。
第二步,绘制序列图形。
在序列对象窗口中,点击View→LineGraph。
屏幕显示图1所示图形。
图1某企业近30个月的销售量动态图
从图1中可以看出,这个企业近30个月的销售量并不存在明显的趋势,并且没有明显的季节趋势。
因此,从直观上判断可以采用一次指数平滑法对企业下个月的销售量进行预测。
第三步,扩大样本期。
本例要求对下一个月的销售量进行预测,而工作文件的样本期是1~30,在Eviews中要求先更改样本期。
更改样本期的操作在本章第一节已经讲过,这里将样本期改为l~31。
第四步,进行指数平滑。
指数平滑的菜单操作方法有两种:
一是在主工作文件窗口打开的情况下,点击主窗口的Quick→SeriesStatistics→ExponentialSmoothing;二是在序列对象窗口中点击Procs→ExponentialSmoothing。
点击后屏幕出现如图2所示的指数平滑对话框。
指数平滑对话框中包含五个部分的选项:
平滑方法(SmoothingMethod)、平滑系数(SmoothingParameters)、平滑后生成序列的名称(SmoothedSeries)、预测样本范围(EstimationSample)和季节变动周期(CycleforSeasonal)。
对话框左上部分的平滑方法(SmoothingMethod)包括:
Single一次指数平滑
Double二次指数平滑
Holt-Winters-NoseasonalHolt-Winters无季节模型
Holt-Winters-AdditiveHolt-Winters季节迭加模型
Holt-Winters-MultiplicativeHolt-Winters季节乘积模型
平滑系数(SmoothingParameters)包括Alpha,Beta,Gamma。
平滑系数可由系统自动给定,也可以由用户指定。
缺省状态是由系统自动给定。
如果用户需要指定,只需在对应参数的位置填入指定的数值。
本例中,分别指定Alpha的值为0.3和0.5。
当指定平滑系数为0.3时,预测的残差平方和为137.2978;当平滑系数为0.5时,预测的残差平方和为165.0685。
因此这里选择平滑系数为0.3时的预测结果。
根据一次指数平滑方法的预测,该企业下个月的销售量应为29.2吨。
图2指数平滑对话框
(二)二次指数平滑
二次指数平滑又称双重指数平滑。
相对于一次指数平滑,二次指数平滑可以预测有一定线性趋势的序列,其预测期也长一些。
[例2]某公司1990-2001年的实际销售额如表2所示。
请根据此资料预测2002年和2003年企业销售额。
表2某公司销售额单位:
万元
解:
第一步,建立工作文件,样本期为1990-2001的年度数据。
在新建立的工作文件中,生成一个名为SALES的新序列。
打开SALES序列对话框,将表2中的数据录入。
第二步,绘制序列图形。
从图中可以看到,该企业的销售额存在明显的增长趋势(见图3)。
序列的波动并不是很剧烈。
由此判断,使用二次指数平滑法进行预测比较合适。
第三步,扩大样本期。
由于本例需要预测下两年的销售额,因此将工作文件的样本期更改为1990-2003年。
图3某企业1990-2001年销售额变动情况
第四步,指数平滑。
根据前例中的方法,用户可以进入如图2的指数平滑对话框。
本例中,选择二次指数平滑的方法,并让系统自动确定系数。
结果如表3所示。
原序列SALES中共有12个观测值,即1990-2001年的企业销售额。
在进行二次指数平滑时,系统根据这12个数值自动确定了最优的平滑系数α=0.244。
此时,对序列进行二次指数平滑预测的残差平方和为101.3594,均方根误差为2.906306。
在Eviews给出指数平滑结果统计表(见表3)时,并没有直接给出对2002年和2003年销售额的预测值。
这两个数值保存在系统生成的平滑序列SALESSM中,用户只需打开该序列就可以看到二次指数平滑方法预测的结果。
结果显示,该企业在2002年和2003年的销售额,分别预计为56.6万元和59.4万元。
表3二次指数平滑结果
如果将二次指数平滑的预测结果和原观测值共同显示在同一张图上,可以使用户看起来更清楚。
首先在工作文件菜单中同时选中两个序列SALES和SALESSM,方法是先点击一个序列,之后按住键盘上的Shift键再点击另外一个序列。
然后点击工作文件菜单工具栏中的Show,在弹出的对话框中点击OK。
此时,系统将弹出一个类似序列对象窗口的群窗口(见图4),窗口中以Excel表格的形式同时显示出SALES和SALESSM。
最后点击该窗口上方的View→Graph→Line(见图5)。
图4群对象窗口
图5实际销售额与平滑值序列对比图
二、趋势延伸法实例
时间序列的趋势即序列随时间变化的基本规律和特点。
对于存在趋势的序列,通常可以选取适当的模型进行分析和预测。
(-)直线趋势
直线趋势模型是一种最常用,也是最成熟的方法。
模型的基本结构为:
Yt=a+bt
式中,a,b是模型的参数。
这种模型的结构比较简单,估计方法非常成熟,是很多其他趋势模型估计的基础。
下面结合实例说明如何使用该软件进行直线趋势模型的预测。
[例3]设某市1992-2002年市场鸡蛋销售量如表4所示。
试预测2003年该市鸡蛋销售量。
表4某市鸡蛋销售量单位:
万千克
解:
第一步,建立一个新的工作文档,文档的样本期为1992-2002年。
生成序列SALES,录入表4中的销售量观测值。
第二步,打开SALES序列对象窗口,点击View→LineGraph,绘制序列散点图(见图6)。
图6序列散点图
Eviews中没有直接绘制散点图的菜单选项。
当需要绘制散点图时,首先需要绘制连线图(LineGraph)。
屏幕显示图形对象窗口后,用鼠标左键双击图形的任意位置,或者点击右键,然后在弹出的菜单中选择Options。
此时,系统将弹出图形属性对话框。
图形属性对话框中的选项很多。
用户在这里可以方便地更改图形的类型(GraphType)、图形的属性(GraphAttitude)、线形图格式见(LineGraph)、条形图格式(BarGraph)等。
这里,将图形的类型选择为线形图(LineGraph),再在线形图格式中选择仅有标示(Symba1sOnly)。
点击OK。
从散点图上可以看出,该序列基本呈现出一种直线增长的趋势,因而宜采用直线趋势延伸的方法进行预测。
第三步,生成时间变量T。
在进行模型参数的估计时通常要用到最小二乘的方法,其中,观测值就是因变量,序列T就是自变量。
生成一个新序列的方法有很多,可以通过菜单操作,也可以直接在主窗口中输入命令行实现。
有关菜单操作的方法在本章第一节中已经说明,这里采用命令行的形式生成序列T。
Eviews生成序列的命令为data,用户只需在主窗口中输入命令:
dataT。
对于序列T,用户可以在打开的对象窗口中为它赋值,比如赋值1,2,3,…
如果用户需要直接生成含有值的序列T,也可以利用函数生成序列,在主窗口中输入命令行(见图7)。
图7T序列生成命令和取值情况节略
genrT=@trend
系统自动生成序列T,并从0开始计数,它的取值依次为0,l,2,3,…
第四步,模型估计。
在Eviews中最小二乘回归的命令是LS,它的基本书写格式为:
LS因变量C自变量
其中,C代表模型中的常数项,对于没有常数项的模型可以不写。
本例中,使用下面的命令进行回归:
LSSALESCT(见表5)。
表5最小二乘回归结果
根据表5的结果,得到如下模型:
sale=31.227+2.391×T
第五步,进行预测。
根据上述模型结果,可以很容易地给出2003年鸡蛋销售量的预测结果。
将T=11代入上述模型,计算结果表明该企业2003年的鸡蛋销售额为57.5万元。
(二)曲线趋势
经济序列中有很多呈现出曲线变化的趋势。
直线趋势的估计比较简单,曲线趋势的估计则更为常用。
指数曲线、二次曲线、三次曲线和龚拍兹曲线是在市场经济序列中常见的模型,它们的估计也大同小异,这里就以指数曲线为例介绍如何使用Eviews进行模型的估计。
[例4]某市近9年灯具商品销售量资料如表6所示。
试预测2002年的销售量。
解:
第一步,建立一个新的工作文档,文档的样本期为1993-2001年。
生成序列SALES,录入表中的销售量观测值。
表6某市灯具销售量单位:
万件
第二步,打开SALS序列对象窗口,点击View→LineGraph,绘制序列散点图(见图8)。
图8销售量散点图
从绘制出的散点图可以看出,该企业的灯具销售变动呈现规律的加速增长。
根据经验判断,要预测该企业下一年度的销售数据,可以使用指数趋势模型。
如果计算出销售数据的环比增长率,可以更加确信地选择指数模型。
本章内容以各类方法的软件实现为主要阐述内容,对模型选择有兴趣的读者可以参阅本书前面的相关章节。
第三步,生成时间变量T。
这里采用系统自动生成的方法,即输入命令:
genrT=@trend。
第四步,对因变量序列进行变换。
在变化因变量序列之前,首先要弄清楚为什么变换。
指数模型的基本形式如下:
Yt=abt
从统计学的角度考虑,传统的估计方法无法直接估计这种模型的参数,因此需要对模型的形式进行变换,从而使参数可以被估计出来。
指数趋势模型通过变换可以变成一个线性模型,所以指数模型称为可线性化的模型。
指数模型变换后的结果为:
log(Yt)=log(a)+log(b)×t
细心的读者会发现,这时模型的形式与前面介绍的直线趋势模型非常的相似,只是模型左边的因变量作了一个对数变换。
所以,对因变量进行变换的原因实际上源自对模型的变换,变换的目的是为了能够使用传统的估计方法估计出模型的参数。
对于指数模型,通常要将因变量作对数变换。
在Eviews中就是要生成一个新的序列,新序列的数值恰好等于原观测序列的值取对数的结果。
使用命令的方式进行操作,在主窗口中输入如下命令:
genrlsales=log(sales)
lsales是新生成序列的名称。
如果作出lsales的散点图,会发现变换后的序列基本呈一条直线。
这里留给有兴趣的读者自己去试一试。
第五步,模型估计。
在主窗口中输入下面的命令:
LSlsalesct
注意,这里实际上是用变换后的序列和时间变量T进行线性回归,估计的结果为参数log(a)和log(b)的值(见表7)。
表7线性回归结果
第六步,进行预测。
根据表7的结果,可以得到如下模型:
log(Sales)=2.1463+0.2225×T
将T=9代入上述模型,求得log(sales)=4.1488。
从而可以预测出该企业在2002年的销售量为63.36万件。
三、季节指数法实例
(-)季节模型的类型
季节模型是反映具有季节变动规律的时间序列模型。
季节变动通常是指以年为一个周期的变化。
引起季节变动的首要因素是四季更迭。
季节变动在很多产品市场上都是一种常见现象,最为典型的季节性产品市场如冷饮、服装、空调等。
传统的时间序列分析把时间序列的波动归结为四大因素:
趋势变动(T)、季节变动(S)、循环变动(C)和不规则变动(I)。
其中循环变动指周期为数年的变动,这种变动不一定存在固定变化周期和确定性变化规律,通常指经济周期。
不规则变动即随机变动。
四种变动因素对序列的影响被概括为两个经典模型:
乘法模型Y=TSCI
加法模型Y=T+S+C+I
乘法模型通常适用于因素T,S,C相关的情形,比如季节因素的作用随着趋势的变化而改变;加法模型通常适用于因素T,S,C相互独立的情况。
需要注意的是,季节模型一般需要3年以上的季度或月度数据。
(二)季节调整
对序列进行季节调整,就是将季节变动从序列中去除。
基本思路是:
Y/S=TSI/S=TI
或Y-SI=TI
序列里存在季节波动常常会妨碍市场人员对某些问题的认识。
比如,3月份的饮料销售比2月份好吗?
如果单单从数据的表面看,3月份的销量应该比2月份好。
但这种所谓的“好”并没有考虑季节变动而引起的市场规模的扩大,也就是说,如果剔除季节因素的影响,3月份的销售效果未必比2月份好。
季节调整的目的就是为了剔除掉季节因素的作用,从而使序列本身的趋势特征更加准确地显现出来。
Eviews中有两种实现季节调整的菜单操作方法。
在主窗口中点击菜单Quick→SeriesStatistics→SeasonalAdjustment,或者在序列对象窗口中点击工具栏按钮Procs→SeasonalAdjustment。
点击后,屏幕出现季节调整对话框窗口(见图9)。
对话框左上部分是季节调整的方法(AdjustmentMethod),包括CensusX11法、移动平均季节乘法(Ratiotomovingaverage-Multiplicative)、移动平均季节加法(Differencefrommovingaverage-Additive)。
系统默认的方法是移动平均季节乘法。
对话框左下部分是待计算序列(SeriestoCalculate),包括调整后序列(AdjustedSeries)名称和季节因子(Factors)名称。
季节因子计算是可选的,只有用户在其对应的框中输入名称后,系统才会将季节因子计算的结果保存在一个序列中。
[例5]现有某地区某种产品产量近4年的分月资料(见表8),试预测该种产品2003年各月的产量。
表8某地区某产品产量单位:
万件
图9季节调整对话框
解:
第一步,建立一个新的工作文档,文档的样本期为1999年三月-2002年12月。
生成序列SUPLY,录入表中的产量数据。
第二步,打开SUPLY序列对象窗口,点击View→LineGraph,绘制连线图(见图10)。
图10产量变化图
从图形的形状很容易看到,该种产品的产量确实存在非常明显的季节变动。
第三步,生成调整后序列。
根据前面的方法,生成调整后序列SUPLYSA和季节团于序列JIJIE。
这里使用的模型是乘法模型,因此在如图9所示的对话框中选择的季节调整方法是移动平均季节乘法(Ratiotomovingaverage-Multiplicative)。
季节调整后产量变化情况和月度季节因子见图11和表9。
图11季节调整后产量变化情况
表9月度季节因子
第四步,进行预测。
按照乘法模型的理论,当剔除序列的季节波动之后,序列中主要存在的变动因素是趋势。
对于趋势,当然可以采用移动平均或者指数平滑的方法确定,但由于本例中要求预测2003年度12个月份的产量,预测期较长,因此采用建立趋势模型,进行外推预测是比较合适的。
建立趋势模型的具体步骤这里不再赘述。
这里仍然采用指数模型,通过参数估计得到模型的具体形态如下:
log(suplysa)=1.8557+0.0284×T
其中,T使用命令GenrT=@Trend得到。
根据趋势模型可以推算出2003年l-12月的趋势值(见表10(中))。
将对应月份的趋势值乘以相应的季节因子得到预测值(见表10(右))。
表10趋势预测值与预计产量单位:
万件