Skip to content

季节调整 一个很常用但是很复杂的方法

季节调整

 

季节调整的原因

 

很多美国的经济报告都会公布两组数据,经过季节调整的数据(Seasonally Adjusted)和没有经过季节调整(Not Seasonally Adjusted)的数据。

经济数据都是时间序列数据,而这类数据的一个特点是会随着季节的波动而波动。而引起这种季节性波动的原因,是多种多样的。

季节更替的气候原因是最典型的季节波动原因,农作物在春天播种,秋天收割。而反映出来的价格特征就是,秋天的农产品最便宜。与此相反,肥料的价格则是秋季相对便宜,而春季则相对昂贵。推而广之,不同经济行为会有各自的季节行为,比如中国的房地产素有“金九银十”的说法,因为大量楼盘会在9月或10月开盘,导致这两个月份的销售额周期性上涨。

这些构成经济方方面面的因素,会因为季节的变化、月份的变化,使数据呈现出周期性的变动。也会使得实际的经济行为与统计出的经济行为发生偏差。

除了季节因素会导致数据的偏差外,另一个典型的影响是日历效应,它是因为日历导致的数据问题。我们知道,目前通用的公历为1年,12个月,365天,而12个月并不能均匀地分散这365天,从而导致了1年有7个月有31天,4个月有30天,1个月28或29天。不同天数的区别会使得每个月的产出的数据出现不同。另外还有4年一次的闰年现象。

除了单纯的天数区别外,工作日也是影响的一个主要因素,生产通常在工作日进行,而每个月的都是4周多几天,从而导致工作日的分布不均匀,一个月的休息日有8天和9天的区别。有工作日与非工作日经济模式明显不同,另外人们常常在周五进行大量的消费行为。这被称为工作日效应与交易日效应。同样的道理,固定的节日也会对数据产生影响。

最后,还有一个移动假日影响,我们知道,有些节日并不是固定,中国的春节就是一个典型的移动假日,可能在1月也可能在2月,而春节所在的那一个月,中国的经济和消费等种种指标都会发生显著的变化,而美国的移动假日也有复活节(每年春分月圆之后第一个星期日,3月22日 – 4月25日)、劳动节(每年9月的第1个星期一)和感恩节(每年11月的第4个星期四)。

综上所述,各种不同的原因,最后都会导致数据出现周期性波动,而季节调整的目的就是消除这种周期性的影响。以方便数据在不同期限和不同月份季度间进行对比。如果没有季节调整,只有年度数据才能消除季节性波动,但是年度对比的跨度太长,与每天发生的经济状况来说,存在很大的不匹配。

 

季节调整的原理

 

一般来说,研究人员通常将一个时间序列的数据(Y)拆分为四种因素。

长期趋势(T):趋势因素反映了经济现象的长期演变方向。

循环变动(C):反映了时间序列持续性的周期波动,反映时间序列是周期的阶段,在一般计算时,趋势与循环因素往往放在一起分析不进行区分。

季节变动(S):就是上文所述的种种季节性原因。

不规则变动(I):不规则因素反映的是前三个因素无法解释的误差或随机因素产生的变化,如罢工、自然灾害等对经济活动的影响。

 

将上述四个因素一般通过连乘和连加得到原始的数据。

 

乘法模型:Y=T×S×C×I

加法模型:Y=T+S+C+I

 

而季节调整的目的就是消除季节变动(S,使得经过季节调整的数据(Ysa)变为:

 

乘法模型:Ysa=T×C×I

加法模型:Ysa=T+C+I

 

X-12-ARIMA方法

 

季节调整的方法较为复杂,需要进行大量的计算工作,而随着计算机的普及,1954年美国普查局首先开发了在计算机上运行的程序对时间序列进行季节调整,称为X-1,此后,季节调整的方法每改进一次都以X加上序号表示。到1965年,美国普查局推出了比较完整的季节调整程序X-11,标志着季节调整方法走向成熟并被广泛使用,随后也逐渐出现了各种其他的季节调整方法。

1978年,加拿大统计局推出了改进的X-11-ARIMA(自回归求积移动平均)模型。这个模型不仅包含了X-11的所有优点,而且还具有通过ARIMA模型在季节调整前向前或向后扩展时间序列的能力。以保证在使用移动平均进行季节调整的过程中数据的完整性。

X-12-ARIMA模型是现在使用最广泛的季节调整模型。美国普查局在1998年推出了X-12-ARIMA模型,季节调整的方法与X-11十分相似,X-12模型仍然使用X-11方法调整。并在此基础上改进了在建模和诊断能力方面的缺陷。增加了预调整模块regARIMA,对数据进行更加丰富的预先处理,估计日历效应和移动假日的影响,对季节调整的过程和结果进行更全面和自动化的诊断检验。

随着X-12-ARIMA模型的完善,除了美国普查局外,越来越多的其他统计机构也开始转而采纳X-12-ARIMA模型,该模型成为美国主流的季节调整模型。比如美国劳工统计局从2003年也开始大规模采用该模型。

 

X-12-ARIMA的过程

 

X-12-ARIMA的实际操作过程较为复杂,涉及大量计量经济学和统计学的相关内容,本书不再详细说明,这里只是简单提一下。

X-12-ARIMA总体分为两步,首先使用regARIMA模块,对数据进行预处理,并进行验证。主要是对离群值和日历效应的处理。离群值包括离群值点AO(Additive Outlier),水平漂移LS(Level Shift)等。日历效应包括前面所提到的月份长度,工作日区别,移动假日等。

接下来则是使用X-11季节调整模块对数据进行基于多次迭代的移动平均方法进行分解计算,一般结果以A(先验调整计算),B(初步估计异常值和日历效应),C(最终估计异常值和日历效应),D(不同成分的最终估计),E(各类序列的比较),F(季节调整质量衡量),G(谱图分析)来呈现。

总体的思路可以归结为,在任何给定的月份,该月数据的与他前后月份(一般是6个月)的移动加权平均值与该月份的数值的比值,再将该比值经过反复验证后计算出平均值。这个数值计算季节调整的系数S以乘法模型为例:

image001

 

将公式计算得到:

image003

其中Ysa为经过季节调整的数据,Y为原始数据,TC(Trend Cycle)为长期循环趋势,SF(Seasonal Factors)为季节调整系数,IR(Irregular)为不规则系数

 

从使用的角度来说,对于季节调整之后的数据,投资者并不需要知道它到底是经过哪些具体的调整,因为最后的一般生成三组结果数据,长期循环趋势TC,季节调整系数SF,不规则系数IR。而季节调整就是使用原始数据Y除以SF得到经过季节调整的数据Ysa

 

数据发布机构,根据过去的季节变动的模式,事先预测计算出未来几年的季节调整的系数,当有新的原始数据时,直接通过上面的公式计算出经过季节调整的数据。

而另一种更先进的方法是同步季节调整(Concurrent Seasonal Adjustment),当新数据出现时,将新数据也纳入季节调整计算,实时计算出新的季节调整的系数,进行最新的调整。

 

季节调整的方法

 

X-12-ARIMA由美国普查局公布,因此可以在普查局X-12-ARIMA的主页面进行软件下载,具体地址:http://www.census.gov/srd/www/x12a/

图 1.2‑1为普查局X-12-ARIMA主页面,这里可以下载到各种平台下的X-12-ARIMA模型,Download Win X12是最新的带有图形界面的软件,而Download X-12(PC)是Windows平台原始的DOS界面的软件。软件的使用方法较为复杂,其基本原理简单来说,就是按格式编写扩展名为SPC的代码,然后通过执行程序,得到需要的结果。

 

图 1.2‑1:普查局X-12-ARIMA主页面

image005

来源:商务部普查局(Census)

 

下面是X12A中普查局提供的SPC的示例,#为笔者添加说明。我们可以看到,编写SPC的方法较为复杂,需要参考软件中附带的说明文档(X-12-ARIMA Reference Manual,X-12-ARIMA Quick Reference)进行编写。其中涉及较多的参数。需要很长时间来掌握。但是通过SPC编写的文档,能够实现最多的功能。

 

series{  title=”International Airline Passengers Data”

start=1949.01

data=(112 118 132 129 121 135 148 148 136 119 104 118…)

span=(1952.01, )

savelog=peaks}

transform{  function=auto  savelog=autotransform }

regression{  aictest=(td easter)  savelog=aictest  }

 

automdl{    savelog=automodel  }

outlier{ }

x11{}

 

#序列名

#序列开始日期

#具体数据,此处省略

 

#季调开始日期

#日志文件

#变换方法:自动

#在ARIMA步骤,对交易日和复活节调整

#自动选择ARIMA参数

#离群值:默认

#x11方法:默认

 

 

通过命令行界面,通过执行x12a的程序,可以得到两个文件,out文件为生成的文件,其中有详细的计算过程,err为错误记录文件,任何错误都会记录在此文件内。下面是通过DOS程序简单执行的x12a.exe的过程。

 

D:\WinX12\x12a>x12a testairline

 

X-12-ARIMA Seasonal Adjustment Program

Version Number 0.3  Build 192

Execution began Dec 15, 2011  23.43.43

 

Reading input spec file from testairline.spc

Storing any program output into testairline.out

Storing any program error messages into testairline.err

 

Execution complete for testairline.spc

 

因为SPC编写方法太过复杂,普查局在此基础上,开发出了图形界面(Win X12),可以通过导入简单的数据文档,进行图形化的参数设定,自动生成SPC文件。图 1.2‑2为SPC生成程序,分别需要进行数据导入,先验调整(包括变形,交易日调整,离群值),自定义先验,ARIMA模型参数,自定义回归,季节调整方法等,具体请参考说明文档(A Windows Interface for X-12-ARIMA)

 

图 1.2‑2:SPC文件生成程序

image007

另外使用者可以通过连接导出程序,自动将计算出的文件导出为带有目录html格式文件,方便查验。通过连接图形程序,可以将计算的结果图形化,方便查看。图 1.2‑3为绑定图形程序之后,导出的图形化结果。它包括各类的图形结果,以及计算过程、诊断过程等。

 

图 1.2‑3:图形化季节调整结果

image009

使用Eviews进行季节调整

 

而常用计量经济学软件,同样提供了X-12-ARIMA的功能,其基本原理相同,都是通过软件自身的界面,自动生成SPC,然后调用x12a的程序进行计算,并将计算结果保存在计量经济学软件之内,通过软件本身的功能,提供更加方便的数据处理和图形处理。因此,软件仅仅提供一个更加熟悉,操作更易的用户界面,而程序依然是普查局所提供的原始程序

这里以常用的计量经济学软件Eviews进行说明。介绍一个简单的通过Eviews进行季节调整的流程。

首先是将数据录入到软件中,这里一定要建立时间序列的数据,数据有具体的年月的对应,才可以进行计算,这是Eviews的基本操作,这里就不再描述。

数据录入后,打开数据,点击Proc – Seasonal Adjustment – Census X12即可以进入X-12-ARIMA模块,如图 1.2‑4所示,这里共有5个设置标签,1.季节调整(Seasonal Adjustment),2.ARIMA选项(ARIMA Options),3.交易日/假日调整(Trading Day/Holiday),4.离群值设定(Outliers),5.诊断(Diagnostics)。

 

季节调整:图 1.2‑4,可以选择X11方法,乘法,加法,伪加法,对数加法。季节滤子(Seasonal Filter)和趋势滤子(Trend Filter (Henderson))一般选择自动。调整后的序列组件保存(Component Series to save),可以选择需要保存那些最终的结果,按需要勾选。

 

ARIMA选项:图 1.2‑4,数据转换(Data Transformation)是否在ARIMA前进行数据转换,Auto选择是根据计算出来的AIC准则自动确定是不做转换还是进行对数转换。回归变量选择(Regressors)在ARIMA模型中指定一些外生回归因子。ARIMA说明(ARIMA Spec),选择ARIMA的参数,关于ARIMA的内容,请参考计量经济学相关书籍。

Specify in-line为自行设定参数,格式为(p d q)(P D Q),他的定义是(非季节的自回归阶数,非季节的差分阶数,非季节的移动平均阶数)(季节的自回归阶数,季节的差分阶数,季节的移动平均阶数)。默认的设定是(0 1 1)(0 1 1)。

Select from file 选择外部参数,Eviews有一个包含一系列缺省模型指定说明的文件(X12A.MDL),自动选择出最小误差的参数。

 

图 1.2‑4:季节调整和ARIMA选项设定页面

 image011  image013

 

交易日/假日调整:图 1.2‑5,调整选项(Adjustment Option)选择是否进行这项调整,确定在ARIMA步骤进行调整,还是X-11步骤进行调整,普查局推荐在ARIMA步骤进行。

交易日影响(Trading Day Effects)有四种选择,1:无交易日影响,2:不同交易日对每周的影响,3:仅工作日和非工作日对每周的影响,4:存量数据调整。

移动假日影响(Holiday Flow),这里提供了复活节,劳动节,感恩节,加拿大统计局感恩节选项,数字是节日之前到节日的影响时间。这里的数据只对美国有效,其他国家不适用于这里的移动假日选项。

 

离群值设定:可以自行设定离群值的日期,以及值的类型和计算步骤。

 

诊断:设定诊断的类型方法,和输出的结果。

 

图 1.2‑5:交易日/假日调整设定页面

image015

下面是一个通过Eviews进行季节性调整的实例,使用零售销售和食品服务的数据(关于这份报告内容见5.3.1节,2页),进行调整,而具体设定通过Eviews自动生成的SPC过程解释。左侧为生成的文件,右侧为笔者所作的解释。

 

Line #

——

1: series{

2:    title = “TOTAL”

3:    start = 1992.1

4:    name = “TOTAL”

5:    file = “EVX12TMP.DAT”

6: }

7:

8: transform{

9:    function=auto

10: }

11:

12: regression{

13:    variables=(td easter[8] labor[8] thank[8] )

14: }

15:

16: automdl{

17:    file=”c:\progra~1\eviews7\x12a.mdl”

18:    method=best

19:    identify=all

20: }

21:

22: x11{

23:    sigmalim = (1.5,2.5)

24:    print = ( +ftestd8 +residualseasf +x11diag +qstat +specsa+specirr)

25:    save = ( D10 D11 D12 D13 D16 D18)

 

 

 

 

 

 

26:         savelog = (q,q2,fb1,fd8,msf)

27: }

28:

 

 

序列信息:

名称

开始日期

项目名称

日期数据

 

 

数据转换:

自动判断

 

 

在ARIMA步骤进行调整:

对交易日,复活节,劳动节,感恩节前8天进行调整

 

ARIMA模型参数选择:

从x12a.mdl获取参数信息

选择最优参数

全部测试

 

 

x11方法选择:

默认极端值修正参数

需要显示的计算过程

 

需要生成的数据,D10为季节因素,D11经过季调的数据,D12为长期趋势,D13为不规则因素,D16为结合季调因素,交易日因素,假日因素的季调系数,D18为交易日因素,假日因素。

日志文件中保存的内容。

 

另外,Eviews也可以通过命令行来直接执行以上效果。下面是直接使用的命令行。得到的效果与上面是等价的,因为通过命令行功能,可以得到一些图形界面所没有的功能,比如,通过命令f,可以得到预测未来一年的季调系数(D10,D16)。因此有一定价值,具体格式,请投资者自行参考Eviews的相关命令帮助文档(Eviews Command and Programming Reference)。

 

total.x12(f,save=”D10 D11 D12 D13 D16 D18″,tf=auto,reg=”td easter[8] labor[8] thank[8]”,amdl=f,best,mfile=”d:\e\x12a.mdl” )

 

图 1.2‑6为原始数据(TOTAL)和经过季节调整的数据(TOTAL_SA),我们可以发现,原始数据原来呈现明显的波动性,而通过季节调整的,这一季节波动性被消除了。

 

图 1.2‑6:TOTAL 和 TOTAL_SA

image018

数据来源:TOTAL为商务部普查局未季节调整数据,其他为软件自行生成

 

图 1.2‑7为原始数据(TOTAL),以及分解后的,结合交易日和假日的季调系数(TOTAL_D16),不规则系数(TOTAL_IR),长期循环趋势(TOTAL_TC)的展示。下图较好地展示了几者的关系。

 

图 1.2‑7:TOTAL、TOTAL_D16、TOTAL_IR和TOTAL_TC

image020

数据来源:TOTAL为商务部普查局未季节调整数据,其他为软件自行生成

 

最后需要提一点的是,通过前面的描述,我们知道,对于季节调整,需要设定众多的参数,而每个参数的不同的设置,都会对数据造成一定影响,而某些数据,发布机构还会进行额外的先验调整,因此,在不知道具体参数的情况下,自行计算的经过季节调整的数据,不可能与发布机构自身公布的完全一致。

图 1.2‑8为通过前面计算的季节调整结果与实际公布数据的对比。CENSUS_SA和 CENSUS_SF分别是普查局公布的经过季节调整的数据和季节调整系数,我们可以看到,这两组数据与前面计算出的数据几乎重叠。

 

图 1.2‑8:CENSUS_SA对比TOTAL_SA,CENSUS_SF对比TOTAL_D16

 

 image022  image024

数据来源:CENSUS为商务部普查局公布,其他为软件自行生成

 

而对两者进行两两线性回归, 图 1.2‑9为结果,两者的系数都高达0.99以上,拟合优度也在0.99以上。因此不知道具体参数的情况下,只要参数设置得当,自行计算的季节调整的精度也很高。

 

图 1.2‑9:线性回归结果

image025

数据来源:CENSUS为商务部普查局公布,其他为软件自行生成

 

季节调整的优点

 

从前面的讨论我们可以看到,季节调整就是通过一系列的数学平均计算和计量经济学建模及检验,排除了季节性波动对于数字的影响。

这种处理,最大的好处就是将一年之内不同月份的数据变得可以比较了。因为受到季节因素的影响,数据原本只能进行同比的计算,即不同年份的数据,只有相同月份才可以就行比较。否则就会出现偏差。另外,即使是同比计算,也同样不能消除交易日,移动假日和闰年的影响。

通过季节调整,使得原本的同比计算变得更加合理,数据的环比计算变得更加有实际的意义。因为环比数据总能比同比数据更快反映出经济变化的趋势。

比如,为调整之前,因为圣诞节购物旺季的因素的关系,12月的零售销售总是比11月大,。然而经过计算,12月的季调系数总是大于11月的季调系数,前者通常大于1,而后者小与1。又因为,使得12月的数据总是向下调整,而11月的数据总是向上调整。这样的结果,可能会出现经过季节调整的数据12月比11月小的结果。这样更能反映出实际的经济波动情况,12月的确比11月来的萧条,而如果数据没有季节调整,这一现象就会被掩盖了。

 

季节调整年化率

 

在查看许多发布的经济指标中,季节调整也会伴随另一个单词出现,季节调整年化率(Seasonally Adjusted Annual Rate)。因为季节调整,使得十二月份之间,每个月的数据都是等价的,也就是说,通过单个月份,可以推导出整个年度的数据。年化的数据更加直观地反映出经济现状,可以使得不同周期的数据同时比较,比如,将月度数据与季度数据,在年化的数据上直接比较。这也是美国统计数据经常的一个特征:许多数据都是经过季节调整和年化处理的。  

通常会以年化的形式表达。计算年化的方法一般有两种,普通的相乘法,以及复利相乘计算方法。GDP报告的数据就是一个典型的普通相乘法计算数字,复利相乘计算变化率的例子。比如某个季度的GDP是10,000美元,环比增长率是2%,或者某个月份个人消费为3000美元,环比增长率是1%。可以通过下面的方法来进行年化的计算:

 

数字年化

 

GDP季度年化:   image029

个人消费月度年化:image031

 

比率年化:

季度年化:    image033

个人消费年化:image035

 

这里要特别提一点的是:只有经过季节调整的数据才能进行年化处理。

 

季节调整的缺点

 

任何一个统计方法都有它的缺点,而季节调整同样不能例外,其最大的一个问题就是经过调整的数据并不是客观存在的数字。他是通过技术方法,“创造”出来的数字。因为各种调整方法,调整参数的不同,会出现千差万别的结果。季节调整的结果,仅仅是数理统计的结果,经过数学方法处理的数字,并不能完美地反映出实际的季节波动。另外,通过计量经济学检验的数字,其假设检验,本质上依然是计量经济角度上否定假设检验H0或不否定假设检验H0

首先,移动平均的过程本身就是一个模糊化的过程,而通过过去的数字来预测未来的数字,更没有经济学的意义。到底是数字的准确性重要,还是数据的可读性重要,每个分析师都有自己的看法。因此对于经过季节调整的数据,也有各自的态度。

然而我们前面也已经提过,经济数据的本身就存在一个不确定性,比如,数据需要进行不断的修正,不能因为数据需要修正,就弃之不用,同样的道理,对于季节调整的数据,也应该持有同样的观点,虽然它并不完美,但是有胜于无。前面也提到,通过季节调整的确能比原始的数据获得更多更准确的数据。仅从这一角度看,季节调整的数据就很有意义。

 

接着,季节调整不能快速反映行为模式的转变。因为季节调整是多次平均的结果,如果出现新的行为模式,并不能迅速在调整中反映出来,由此可能造成数据的失真。而这些因素对于季调数据的影响,需要在几个周期后才能显现出来。还有统计制度的一些改变也会造成这方面的问题。

 

另外,目前仍然有一些因素是模型无法完全覆盖到的,典型的例子就是非经常发生的自然灾害或突发事件。这类事件,对于数字造成的负面影响,仅仅是暂时性的,并不能表示实际经济出现了某些问题。同时,当事件结束后,反向的大幅回升同样会对数字造成影响。下图就是一个很好的说明,通过分析前面提到的(TOTAL_IR)不规则项,我们可以看到,在2001年9月,不规则项出现了明显的大幅下降,10月之后又大幅回升。而出现这个问题原因,2001年9月11日,正是“九一一事件”发生的日期,这个事件,对于零售销售的数字影响极大。

 

图 1.2‑10:TOTAL_IR

image038

数据来源:通过普查局数据计算

 

最后,非经常发生的假日(美国在2004年6月11日纪念总统罗纳德·里根,2007年1月2日纪念总统杰拉尔德·福特。而在中国,2010年,因为上海的世博会和广州的亚运会,上海和广州分别出现过地区性的假期),同样也会造成上面的困扰。

 

然而,随着季节调整方法的不断发展,必然会出现更多更先进的调整方法,从最原始的X-1方法,到现在的X-12-ARIMA方法,季节调整的精度不断提高,比如,在过去移动假日就是一个无法调整的因素,而在X-12-ARIMA方法中,这个问题就被克服了。而原先的方法中季节调整系数的计算是事先确定的,而现在多使用同步季节调整,能够及时发现经济活动的最新动向。

总的来说,季节调整对于经济分析是一个不可缺少的部分,虽然有时出现失灵,在更多正常情况下,季节调整是十分有效的,它使得投资者能够判断当前最新的经济情况,而不是仅仅对于一年以前的数据做出判断。时效性,也是经济数据核心价值所在。

随着计量经济学以及计算机技术的发展,季节调整未来必然会出现如X-13,X-14的模型,使得数据朝着更精确的方向发展。