|
果 5 [5 O/ {2 u/ i' F! B
如果将二次指数平滑的预测结果和原观测值共同显示在同一张图上,可以使用户看起来更清楚。首先在工作文件菜单中同时选中两个序列SALES和SALESSM,方法是先点击一个序列,之后按住键盘上的Shift键再点击另外一个序列。然后点击工作文件菜单工具栏中的Show,在弹出的对话框中点击OK。此时,系统将弹出一个类似序列对象窗口的群窗口(见图4),窗口中以Excel表格的形式同时显示出SALES和SALESSM。最后点击该窗口上方的View→Graph→Line(见图5)。
6 z: b4 P: J* h! C9 g. [6 | ' D& d5 \' O4 u {( w0 S4 m5 t5 x) \
图4 群对象窗口 : X- V- t/ S4 g D* }7 T
8 E! P' x, `$ M图5 实际销售额与平滑值序列对比图
1 G7 |0 W0 H" b/ J! M 二、趋势延伸法实例
# U2 P$ n0 Q. X& q1 | 时间序列的趋势即序列随时间变化的基本规律和特点。对于存在趋势的序列,通常可以选取适当的模型进行分析和预测。 6 `. n+ V- q l2 O' e& E# o2 H
(-)直线趋势
0 b7 Q/ y# U. C 直线趋势模型是一种最常用,也是最成熟的方法。模型的基本结构为: ! [2 d2 O- K# f7 S+ ^3 _" J4 k, m
Yt=a+bt
' Z; @: I8 I2 a# t式中,a,b是模型的参数。这种模型的结构比较简单,估计方法非常成熟,是很多其他趋势模型估计的基础。下面结合实例说明如何使用该软件进行直线趋势模型的预测。 ( \' r( {3 m* Q3 q. O7 i! F
[例3]设某市1992-2002年市场鸡蛋销售量如表4所示。试预测2003年该市鸡蛋销售量。 & L3 n7 _, Y- w0 H) H( j$ a# B
表4 某市鸡蛋销售量 单位:万千克
4 b$ U. R: V) U, ]
& ]/ A- R. G5 F2 \* ]$ M9 ~3 ` 解:第一步,建立一个新的工作文档,文档的样本期为1992-2002年。生成序列SALES,录入表4中的销售量观测值。 # F8 s) ^( @3 G/ z
第二步,打开SALES序列对象窗口,点击View→Line Graph,绘制序列散点图(见图6)。
w2 q/ ^1 g- Z8 J' O
' ^5 o+ X9 ^& }, }) A图6 序列散点图
; ?% v& s1 `! |8 B Eviews中没有直接绘制散点图的菜单选项。当需要绘制散点图时,首先需要绘制连线图(Line Graph)。屏幕显示图形对象窗口后,用鼠标左键双击图形的任意位置,或者点击右键,然后在弹出的菜单中选择Options。此时,系统将弹出图形属性对话框。
0 r) @7 l A8 |- E0 e 图形属性对话框中的选项很多。用户在这里可以方便地更改图形的类型(Graph Type)、图形的属性(Graph Attitude)、线形图格式见(Line Graph)、条形图格式(Bar Graph)等。这里,将图形的类型选择为线形图(Line Graph),再在线形图格式中选择仅有标示(Symba1s Only)。点击OK。 + l7 e+ G0 H @2 E ]
从散点图上可以看出,该序列基本呈现出一种直线增长的趋势,因而宜采用直线趋势延伸的方法进行预测。 U& U/ K' h/ m2 b- d: O0 s
第三步,生成时间变量T。在进行模型参数的估计时通常要用到最小二乘的方法,其中,观测值就是因变量,序列T就是自变量。 : [& C! M: f4 L( L# v0 E
生成一个新序列的方法有很多,可以通过菜单操作,也可以直接在主窗口中输入命令行实现。有关菜单操作的方法在本章第一节中已经说明,这里采用命令行的形式生成序列T。 5 b9 u: V' F$ t0 [$ `( q' o& _7 r
Eviews生成序列的命令为data,用户只需在主窗口中输入命令:data T。 ) H% A" U( c6 E" @0 R6 v. V
对于序列T,用户可以在打开的对象窗口中为它赋值,比如赋值1,2,3,…
: o5 a/ L; t1 t, x: W- E& w! x' b如果用户需要直接生成含有值的序列T,也可以利用函数生成序列,在主窗口中输入命令行(见图7)。
* I, }: C8 I* F5 [$ f* _ - G9 h' A# ?4 A5 W1 @
图7 T序列生成命令和取值情况节略 & `' C# B- R! b( J7 a
genr T=@trend
' u8 f: X, Y+ F! y1 S" P 系统自动生成序列T,并从0开始计数,它的取值依次为0,l,2,3,…
/ w' G: B: m b+ k8 ]# Y$ s; B: C 第四步,模型估计。在Eviews中最小二乘回归的命令是LS,它的基本书写格式为:
$ U! I* Y9 }& } LS 因变量 C 自变量 , x `0 ^) R, Y
其中,C代表模型中的常数项,对于没有常数项的模型可以不写。 ) v- o! }3 C1 y: D. v% R* ?
本例中,使用下面的命令进行回归: LS SALES C T(见表5)。
5 s% G' L$ K; x" \* N , O3 a8 ]/ S$ ~7 A
. \5 b- B0 T) P+ a% H/ M P) S+ ]
表5 最小二乘回归结果
. t" c+ C7 r! @5 h! r$ U; r根据表5的结果,得到如下模型: ! {/ p+ c3 ]% _8 y4 q$ m h
sale=31.227+2.391×T 7 U2 Q4 X; b* w& h |! X3 d0 y
第五步,进行预测。根据上述模型结果,可以很容易地给出2003年鸡蛋销售量的预测结果。将T=11代入上述模型,计算结果表明该企业2003年的鸡蛋销售额为57.5万元。 * V5 y; C& n5 {$ [! ~3 l5 c7 v
(二)曲线趋势 3 @) t3 R! m0 ^! U- T. S0 T' u! ~
经济序列中有很多呈现出曲线变化的趋势。直线趋势的估计比较简单,曲线趋势的估计则更为常用。指数曲线、二次曲线、三次曲线和龚拍兹曲线是在市场经济序列中常见的模型,它们的估计也大同小异,这里就以指数曲线为例介绍如何使用Eviews进行模型的估计。
8 i( _3 I( S/ n; x ?# x [例4]某市近9年灯具商品销售量资料如表6所示。试预测2002年的销售量。
* b5 P3 d' [( T 解:第一步,建立一个新的工作文档,文档的样本期为1993-2001年。生成序列SALES,录入表中的销售量观测值。 7 A# x. V3 o; H5 f6 E6 v5 w& f
表6 某市灯具销售量 单位:万件 & E/ O) h% J7 r; }/ _+ K8 d; @! [
8 U0 a/ V4 f& G# ?. m( X+ n
第二步,打开SALS序列对象窗口,点击View→Line Graph,绘制序列散点图(见图8)。 " \1 i; U, p+ M+ [8 r1 @, `# J/ j- h
$ X) q/ ?/ z# i! _5 A图8 销售量散点图 $ Z0 U5 U2 ]2 I% J* j$ i0 N
从绘制出的散点图可以看出,该企业的灯具销售变动呈现规律的加速增长。根据经验判断,要预测该企业下一年度的销售数据,可以使用指数趋势模型。如果计算出销售数据的环比增长率,可以更加确信地选择指数模型。本章内容以各类方法的软件实现为主要阐述内容,对模型选择有兴趣的读者可以参阅本书前面的相关章节。 7 k7 ]1 l2 p: p% x0 G
第三步,生成时间变量T。这里采用系统自动生成的方法,即输入命令: ) T0 C, E6 r% ]/ q. k6 r7 n+ L6 h
genr T=@trend。
. g: u) }4 N- k 第四步,对因变量序列进行变换。在变化因变量序列之前,首先要弄清楚为什么变换。指数模型的基本形式如下:
- [; |6 J2 r& m0 s8 \ Yt= abt
b; ~" m% o0 ]" P" L9 d 从统计学的角度考虑,传统的估计方法无法直接估计这种模型的参数,因此需要对模型的形式进行变换,从而使参数可以被估计出来。指数趋势模型通过变换可以变成一个线性模型,所以指数模型称为可线性化的模型。指数模型变换后的结果为:
- V; Z4 w( _5 d/ K& @2 ?' a log(Yt)=log(a)+log(b)×t 4 ~5 ?5 b! S A5 o: h) Q5 O
细心的读者会发现,这时模型的形式与前面介绍的直线趋势模型非常的相似,只是模型左边的因变量作了一个对数变换。所以,对因变量进行变换的原因实际上源自对模型的变换,变换的目的是为了能够使用传统的估计方法估计出模型的参数。
6 K: v% V0 u, k% ^) z 对于指数模型,通常要将因变量作对数变换。在Eviews中就是要生成一个新的序列,新序列的数值恰好等于原观测序列的值取对数的结果。
9 ?% r! |( `" a3 P2 g' [5 `! c 使用命令的方式进行操作,在主窗口中输入如下命令: $ b4 L5 m& Y% i: @6 U& P) X
genr lsales=log(sales)
- r, B- O* p5 ^4 u9 D3 s( glsales是新生成序列的名称。如果作出lsales的散点图,会发现变换后的序列基本呈一条直线。这里留给有兴趣的读者自己去试一试。
& N( u. V+ _- J& e6 t- e9 ? 第五步,模型估计。在主窗口中输入下面的命令:
# T4 i* t2 P1 ^) I, W( e5 D; w( ] LS lsales c t % q4 i; R4 { m& W7 d
注意,这里实际上是用变换后的序列和时间变量T进行线性回归,估计的结果为参数log(a)和log(b)的值(见表7)。
& R( y2 u P/ D/ ]表7 线性回归结果
. U4 C1 W1 }8 d7 K! V% A
8 G" D3 v- I/ h+ s- Z( k
5 w6 b% F/ t* K& j2 r 第六步,进行预测。根据表7的结果,可以得到如下模型:
8 r! B( M) O% n8 j7 z4 A4 @$ O log(Sales)=2.1463+0.2225×T ( Q' [; S# a/ h z0 x- Q" D9 _
将T=9代入上述模型,求得log(sales)=4.1488。从而可以预测出该企业在2002年的销售量为63.36万件。 - K7 }$ g0 }4 k0 g/ j
三、季节指数法实例
' X B1 h) F' Y/ R$ U (-)季节模型的类型
7 {$ M1 L8 ?* r 季节模型是反映具有季节变动规律的时间序列模型。季节变动通常是指以年为一个周期的变化。引起季节变动的首要因素是四季更迭。季节变动在很多产品市场上都是一种常见现象,最为典型的季节性产品市场如冷饮、服装、空调等。
% |" u) y. O" x2 b3 d 传统的时间序列分析把时间序列的波动归结为四大因素:趋势变动(T)、季节变动(S)、循环变动(C)和不规则变动(I)。其中循环变动指周期为数年的变动,这种变动不一定存在固定变化周期和确定性变化规律,通常指经济周期。不规则变动即随机变动。四种变动因素对序列的影响被概括为两个经典模型:
# G7 ~) R9 G- w5 x. a+ z7 x; o. s 乘法模型Y=TSCI , j0 o0 I4 m2 n# {% I- d
加法模型Y=T+S+C+I 4 u/ ?( f4 P/ ^
乘法模型通常适用于因素T,S,C相关的情形,比如季节因素的作用随着趋势的变化而改变;加法模型通常适用于因素T,S,C相互独立的情况。需要注意的是,季节模型一般需要3年以上的季度或月度数据。
9 U# u1 p5 B7 e4 S O (二)季节调整 1 |1 p8 G" L$ \; b
对序列进行季节调整,就是将季节变动从序列中去除。基本思路是: , ~9 `( t$ G2 K( ~+ Y( O
Y/S=TSI/S=TI 2 t2 U0 W+ {/ k/ i+ R
或 Y-SI=TI
! h0 J- t8 P( ~3 h5 p, b 序列里存在季节波动常常会妨碍市场人员对某些问题的认识。比如,3月份的饮料销售比2月份好吗?如果单单从数据的表面看,3月份的销量应该比2月份好。但这种所谓的“好”并没有考虑季节变动而引起的市场规模的扩大,也就是说,如果剔除季节因素的影响,3月份的销售效果未必比2月份好。季节调整的目的就是为了剔除掉季节因素的作用,从而使序列本身的趋势特征更加准确地显现出来。 + z. l$ D# s* e! M
Eviews中有两种实现季节调整的菜单操作方法。在主窗口中点击菜单Quick→Series Statistics→Seasonal Adjustment,或者在序列对象窗口中点击工具栏按钮Procs→Seasonal Adjustment。点击后,屏幕出现季节调整对话框窗口(见图9)。 - q' p0 }2 W; \4 q4 n
对话框左上部分是季节调整的方法(Adjustment Method),包括Census X11法、移动平均季节乘法(Ratio to moving average-Multiplicative)、移动平均季节加法(Difference from moving average-Additive)。系统默认的方法是移动平均季节乘法。 4 z& P+ o6 j% K$ V3 d% q. ~- S8 t
对话框左下部分是待计算序列(Series to Calculate),包括调整后序列(Adjusted Series)名称和季节因子(Factors)名称。季节因子计算是可选的,只有用户在其对应的框中输入名称后,系统才会将季节因子计算的结果保存在一个序列中。 9 @' C2 C n1 p
[例5]现有某地区某种产品产量近4年的分月资料(见表8),试预测该种产品2003年各月的产量。 . I5 P, J- {* J* u7 `8 X) z/ I C
表8 某地区某产品产量 单位:万件 * x* l, s% u2 l: J6 u6 F& p
; n3 v$ T1 m2 A 1 Y \6 \3 L3 a7 N1 t1 g) i
图9 季节调整对话框 - u* }- F" Y& h5 B# Y% L& C
解:第一步,建立一个新的工作文档,文档的样本期为1999年三月-2002年12月。生成序列SUPLY,录入表中的产量数据。
2 l: p( p: `5 c. d. j/ [ 第二步,打开SUPLY序列对象窗口,点击View→Line Graph,绘制连线图(见图10)。
- f( m1 t0 w% o1 l" c7 I2 X5 h7 r* X2 F
L$ }* H# f$ X! ]7 L% J0 I2 h图10 产量变化图 / p8 ~6 P( Q* h$ k& a
从图形的形状很容易看到,该种产品的产量确实存在非常明显的季节变动。
( i3 W Q! w" d7 {# q 第三步,生成调整后序列。根据前面的方法,生成调整后序列SUPLYSA和季节团于序列JIJIE。这里使用的模型是乘法模型,因此在如图9所示的对话框中选择的季节调整方法是移动平均季节乘法(Ratio to moving average-Multiplicative)。季节调整后产量变化情况和月度季节因子见图11和表9。
; w' l4 m; [- k
7 Y7 o0 m2 K: n+ E0 f. ]% T图11 季节调整后产量变化情况 2 i: G' X2 x( {$ Y
表9 月度季节因子 - s7 S$ H! N# l7 @ I* d
3 H" K+ A f6 Y; b+ B; j2 B
第四步,进行预测。按照乘法模型的理论,当剔除序列的季节波动之后,序列中主要存在的变动因素是趋势。对于趋势,当然可以采用移动平均或者指数平滑的方法确定,但由于本例中要求预测2003年度12个月份的产量,预测期较长,因此采用建立趋势模型,进行外推预测是比较合适的。
. e9 }9 J6 l5 {. m 建立趋势模型的具体步骤这里不再赘述。这里仍然采用指数模型,通过参数估计得到模型的具体形态如下: $ {1 _ m2 V0 V" s, M6 [# @! P
log(suplysa)=1.8557+0.0284×T ; D4 i: [; G; A- S1 b; Y9 h
其中,T使用命令Genr T=@Trend得到。根据趋势模型可以推算出2003年l-12月的趋势值(见表10(中))。将对应月份的趋势值乘以相应的季节因子得到预测值(见表10(右))。 - a: W7 o) ~8 j# t9 z% V5 S+ C
表10 趋势预测值与预计产量 单位:万件
8 w: e/ Z( j Y$ h! x. Y; f
|