搜档网
当前位置:搜档网 › 运用stata进行时间序列分析

运用stata进行时间序列分析

运用stata进行时间序列分析
运用stata进行时间序列分析

运用stata进行时间序列分析

1 时间序列模型结构模型虽然有助于人们理解变量之间的影响关系,但模型的预测精度比较低。在一些大规模的联立方程中,情况更是如此。而早期的单变量时间序列模型有较少的参数却可以得到非常精确的预测,因此随着Box and Jenkins(1984)等奠基性的研究,时间序列方法得到迅速发展。从单变量时间序列到多元时间序列模型,从平稳过程到非平稳过程,时间序列分析方法被广泛应用于经济、气象和过程控制等领域。本章将介绍如下时间序列分析方法,ARIMA模型、ARCH族模型、 VAR模型、VEC模型、单位根检验及协整检验等。

一、基本命令 1.1时间序列数据的处理 1)声明时间序列:tsset 命令 use gnp96.dta, clear list in 1/20 gen Lgnp = L.gnp tsset date list in 1/20 gen Lgnp = L.gnp 2)检查是否有断点:tsreport, report use gnp96.dta, clear tsset date tsreport, report drop in 10/10 list in 1/12 tsreport, report tsreport, report list /*列出存在断点的样本信息*/ 3)填充缺漏值:tsfill tsfill tsreport, report list list in 1/12 4)追加样本:tsappend use gnp96.dta, clear tsset date list in -10/-1 sum tsappend , add(5) /*追加5个观察值*/ list in -10/-1 sum 2 5)应用:样本外预测:

predict reg gnp96 L.gnp96 predict gnp_hat list in -10/-1 6)清除时间标识:

tsset, clear tsset, clear 1.2变量的生成与处理 1)滞后项、超前项和差分项 help tsvarlist use gnp96.dta, clear tsset date gen Lgnp = L.gnp96 /*一阶滞后*/ gen L2gnp = L2.gnp96 gen Fgnp = F.gnp96 /*一阶超前*/ gen F2gnp = F2.gnp96 gen Dgnp = D.gnp96 /*一阶差分*/ gen D2gnp = D2.gnp96 list in 1/10 list in -10/-1 2)产生增长率变量:

对数差分 gen lngnp = ln(gnp96)

gen growth = D.lngnp gen growth2 = (gnp96-L.gnp96)/L.gnp96 gen diff = growth - growth2 /*表明对数差分和变量的增长率差别很小*/ list date gnp96 lngnp growth* diff in 1/10 1.3日期的处理日期的格式 help tsfmt 基本时点:整数数值,如 -3, -2, -1, 0, 1, 2, 3 .... 1960年1月1日,取值为 0; 3 显示格式:

定义含义默认格式%td 日%tdDlCY %tw 周%twCY!ww %tm 月 %tmCY!mn %tq 季度 %tqCY!qq %th 半年 %thCY!hh %ty 年 %tyCY 1)使用tsset 命令指定显示格式 use B6_tsset.dta, clear tsset t, daily list use B6_tsset.dta, clear tsset t, weekly list 2)指定起始时点 cap drop month generate month = m(1990-1)

+ _n - 1 format month %tm list t month in 1/20 cap drop year gen year = y(1952)

+ _n - 1 format year %ty list t year in 1/20 3)自己设定不同的显示格式日期的显示格式 %d (%td)

定义如下:

%[-][t]d<描述特定的显示格式> 具体项目释义:

“<描述特定的显示格式>”中可包含如下字母或字符 c y m l n d j h q w _ . , :

- / ' !c C Y M L N D J W 定义如下:

c an

d C 世纪值(个位数不附加/附加0)

y and Y 不含世纪值的年份(个位数不附加/附加0)

m 三个英文字母的月份简写(第一个字母大写)

4 M 英文字母拼写的月份(第一个字母大写)

n and N 数字月份(个位数不附加/附加0)

d and D 一个月中的第几日(个位数不附加/附加0)

j and J 一年中的第几日(个位数不附加/附加0)

h 一年中的第几半年 (1 or 2)

q 一年中的第几季度 (1, 2, 3, or 4)

w and W 一年中的第几周(个位数不附加/附加0)

_ display a blank (空格)

. display a period(句号)

, display a comma(逗号)

display a colon(冒号)

- display a dash (短线)

/ display a slash(斜线)

' display a close single quote(右引号)

!c display character c (code !!

to display an exclamation point)

样式1:

Format Sample date in format ----------------------------------- %td 07jul1948 %tdM_d,_CY July 7, 1948 %tdY/M/D 48/07/11 %tdM-D-CY 07-11-1948 %tqCY.q 1999.2 %tqCY:q 1992:2 %twCY,_w 2010, 48 ----------------------------------- 样式2:

Format Sample date in format ---------------------------------- %d 11jul1948 %dDlCY 11jul1948 %dDlY 11jul48 %dM_d,_CY July 11, 1948 %dd_M_CY 11 July 1948 %dN/D/Y 07/11/48 %dD/N/Y 11/07/48 %dY/N/D 48/07/11 %dN-D-CY 07-11-1948 ---------------------------------- clear set obs 100 5 gen t = _n + d(13feb1978)

list t in 1/5 format t %dCY-N-D /*1978-02-14*/ list t in 1/5 format t %dcy_n_d /*1978 2 14*/ list t in 1/5 use B6_tsset, clear list tsset t, format(%twCY-m)

list 4)一个实例:生成连续的时间变量 use e1920.dta, clear list year month in 1/30 sort year month gen time = _n tsset time list year month time in 1/30 generate newmonth = m(1920-1)

+ time - 1 tsset newmonth, monthly list year month time newmonth in 1/30 1.4图解时间序列 1)例1:

clear set seed 13579113 sim_arma ar2, ar(0.7 0.2)

nobs(200)

sim_arma ma2, ma(0.7 0.2)

tsset _t tsline ar2 ma2 * 亦可采用 twoway line 命令绘制,但较为繁琐 twoway line ar2 ma2 _t 2)例2:增加文字标注 sysuse tsline2, clear tsset day tsline calories, ttick(28nov2002 25dec2002, tpos(in)) /// ttext(3470 28nov2002 "thanks" /// 3470 25dec2002 "x-mas",

orient(vert))

6 3)例3:增加两条纵向的标示线 sysuse tsline2, clear tsset day tsline calories, tline(28nov2002 25dec2002)

* 或采用 twoway line 命令 local d1 = d(28nov2002)

local d2 = d(25dec2002)

line calories day, xline(`d1' `d2')

4)例4:改变标签 tsline calories, tlabel(, format(%tdmd))

ttitle("Date (2002)")

tsline calories, tlabel(, format(%td))

二、ARIMA 模型和SARMIA模型 ARIMA模型的基本思想是:将预测对象随时间推移而形成的数据序列视为一个随机序列,用一定的数学模型来近似描述这个序列。这个模型一旦被识别后就可以从时间序列的过去值及现在值来预测未来值。

ARIMA(1,1)模型:

t t t t y y εθερα + + + = ?6?1 ?6?1 1 1 2.1 ARIMA模型预测的基本程序:

1)

根据时间序列的散点图、自相关函数和偏自相关函数图以ADF单位根检验其方差、趋势及其季节性变化规律,对序列的平稳性进行识别。一般来讲,经济运行的时间序列都不是平稳序列。

2)

对非平稳序列进行平稳化处理。如果数据序列是非平稳的,并存在一定的增长或下降趋势,则需要对数据进行差分处理,如果数据存在异方差,则需对数据进行技术处理,直到处理后的数据的自相关函数值和偏相关函数值无显著地异于零。

3)

根据时间序列模型的识别规则,建立相应的模型。若平稳序列的偏相关函数是截尾的,而自相关函数是拖尾的,可断定序列适合 AR模型;若平稳序列的偏相关函数是拖尾的,而自相关函数是截尾的,则可断定序列适合 MA模型;若平稳序列的偏相关函数和自相关函数均是拖尾的,则序列适合 ARMA 模型。

4)

进行参数估计,检验是否具有统计意义。

5)

进行假设检验,诊断残差序列是否为白噪声。

6)

利用已通过检验的模型进行预测分析。

2.2 ARIMA模型中AR和MA阶数的确定方法:

clear sim_arma y_ar, ar(0.9)

nobs(300)

line y_ar _t, yline(0)

ac y_ar /*AR过程的 ACF 具有“拖尾”特征,长期记忆*/ pac y_ar /*AR 过程的 PACF 具有“截尾”特征*/ 7 sim_arma y_ma, ma(0.8)

line y_ma _t, yline(0)

ac y_ma /*MA过程的 ACF 具有“截尾”特征,短期记忆*/ pac y_ma /*MA

过程的 PACF 具有锯齿型“拖尾”特征*/ 2.3 ARIMA模型中涉及的检验:use https://www.sodocs.net/doc/2a2284852.html,/data/r11/wpi1 ,clear tsset t gen d_wpi = D.wpi dfuller wpi /*单位根检验*/ dfuller d_wpi wntestq wpi /*白噪声检验:Q检验*/ wntestq d_wpi wntestb wpi,table /*累积统计Q检验并以列表显示*/ wntestb d_wpi,table wntestb wpi /*画出累积统计量Q*/ wntestb d_wpi /*画出累积统计量Q*/ corrgram wpi ,lag(24)

/*自相关、偏相关、Q统计量*/ corrgram d_wpi ,lag(24)

2.4 ARIMA模型和SARIMA模型的估计 ARIMA模型:

use https://www.sodocs.net/doc/2a2284852.html,/data/r11/wpi1 ,clear gen d_wpi = D.wpi arima wpi,arima(1,1,1)

/* 没有漂移项即常数项的命令是noconstant */ * 或者下面的这种形式也行 arima D.wpi,ar(1)

ma(1)

SARIMA模型:

use https://www.sodocs.net/doc/2a2284852.html,/data/r11/air2,clear line air t generate lnair=ln(air)

arima lnair,arima(0,1,1)

sarima(0,1,1,12)

noconstant 2.5 ARIMA模型的一个真实应用——美国批发物价指数 use https://www.sodocs.net/doc/2a2284852.html,/data/r11/wpi1 ,clear dfuller wpi /*单位根检验*/ gen d_wpi = D.wpi dfuller d_wpi 8 arima wpi,arima(1,1,1) /* 没有漂移项即常数项的命令是noconstant */ * 或者下面的这种形式也行 arima D.wpi,ar(1)

ma(1)

ac D.ln_wpi,ylabels(-.4(.2).6)

pac D.ln_wpi,ylabels(-.4(.2).6)

arima D.ln_wpi,ar(1)

ma(1/4)

estat ic /* LL 越大越好, AIC 和 BIC 越小越好*/ arima D.ln_wpi,ar(1) ma(1 4)

/*季节效应 */ estat ic * 残差检验 predict r,res wntestq r /*白噪声检验:Q检验*/ wntestb r,table /*累积统计Q检验并以列表显示*/ wntestb r /*画出累积统计量Q*/ corrgram r ,lag(24)

/*自相关、偏相关、Q统计量*/ * 样本内预测 predict y_hat0 /* y的拟合值 */ * 样本外预测 list in -15/-1 tsappend, add(8)

list in -15/-1 predict y_hat1 /* y 的样本外一步预测值 */ list in -15/-1 gen Dln_wpi = D.ln_wpi sum predict y_hat_dy0, dynamic(124) /*动态预测*/ predict y,y /*对未差分变量的预测*/ predict fy,y dynamic(124)

gen fwpi=exp(fy)

/*实际wpi的预测值*/ gen ywpi=exp(y)

line wpi fwpi ywpi t in -20/-1 9 三、ARCH 模型传统的计量经济学对时间序列变量的第二个假设:假定时间序列变量的波动幅度(方差)是固定的,不符合实际,比如,人们早就发现股票收益的波动幅度是随时间而变化的,并

非常数。这使得传统的时间序列分析对实际问题并不有效。

但是ARCH模型能准确地模拟时间序列变量的波动性的变化,它在金融工程学的实证研究中应用广泛,使人们能更加准确地把握风险(波动性),尤其是应用在风险价值(VALUE AT RISK)理论中,在华尔街是人尽皆知的工具。

所谓ARCH模型,按照英文直译是自回归条件异方差模型。粗略地说,该模型将当前一切可利用信息作为条件,并采用某种自回归形式来刻划方差的变异,对于一个时间序列而言,在不同时刻可利用的信息不同,而相应的条件方差也不同,利用ARCH 模型,可以刻划出随时间而变异的条件方差。

ARCH(m)模型:

(条件方差)

(条件平均值)

2 2 2 2 2 1 1 0 2 m t m t t t t t t x y ?6?1 ?6?1 ?6?1 + + + + = + = εγεγεγγζεβ 其中, 2 ε是残差平方和(波动率)

i γ是ARCH模型的系数 GARCH(m,k)模型:

2 2 2 2 2 1 1 2 2 2 2 2 1 1 0 2 k t k t t m t m t t t t t t x y ?6?1 ?6?1 ?6?1 ?6?1 ?6?1 ?6?1 + + + + + + + + = + = ζδζδζδεγεγεγγζεβ 其中, i γ是ARCH模型的系数;

i δ是GARCH系数 3.1 ARCH模型应用例子:

. use https://www.sodocs.net/doc/2a2284852.html,/data/r11/wpi1,clear . regress D.ln_wpi Source | SS df MS Number of obs = 123 -------------+------------------------------ F( 0, 122)

= 0.00 Model | 0 0 . Prob > F = . Residual | .02521709 122 .000206697 R-squared = 0.0000 -------------+------------------------------ Adj R-squared = 0.0000 Total | .02521709 122 .000206697 Root MSE = .01438 ------------------------------------------------------------------------------ D.ln_wpi | Coef. Std. Err. t P>|t| [95% Conf. Interval] -------------+---------------------------------------------------------------- _cons | .0108215 .0012963 8.35 0.000 .0082553 .0133878 ------------------------------------------------------------------------------ 10 . estat archlm,lags(1)

LM test for autoregressive conditional heteroskedasticity (ARCH) --------------------------------------------------------------------------- lags(p)

| chi2 df Prob > chi2 -------------+------------------------------------------------------------- 1 | 8.366 1 0.0038 --------------------------------------------------------------------------- H0:

no ARCH effects vs. H1:

ARCH(p)

disturbance 通过对WPI的对数差分进行常数回归,接着用LM检验来判断ARCH(1)效应, 在该例子中,检验的结果 PROB > CHI2=0.0038<0.05,所以拒绝没有 ARCH(1)

效应的虚无假设。因此,我们可以通过指定ARCH(1)模型来估计ARCH(1)的系数。

. arch D.ln_wpi,arch(1)

garch(1)

ARCH family regression Sample:

1960q2 - 1990q4 Number of obs = 123 Distribution:

Gaussian Wald chi2(.)

= . Log likelihood = 373.234 Prob > chi2 = . ------------------------------------------------------------------------------ | OPG D.ln_wpi | Coef. Std. Err. z P>|z| [95% Conf. Interval] -------------+---------------------------------------------------------------- ln_wpi | _cons | .0061167 .0010616 5.76 0.000 .0040361 .0081974 -------------+---------------------------------------------------------------- ARCH | arch | L1. | .4364123 .2437428 1.79 0.073 -.0413147 .9141394 | garch | L1. | .4544606 .1866605 2.43 0.015 .0886126 .8203085 | _cons | .0000269 .0000122 2.20 0.028 2.97e-06 .0000508 ------------------------------------------------------------------------------ 这样,我们就可以估计出了 ARCH(1)的系数是 0.436,GARCH(1)的系数是 0.454,所以我们可以拟合出GARCH(1,1)模型:

2 1 2 1 2 454 . 0 436 . 0 0061 . 0 ?6?1 ?6?1 + = + = t t t t t y ζεζε )

ln( )

ln( 1 ?6?1 ?6?1 = t t t wpi wpi y 其中,接下来我们可以对变量的进行预测:

predict xb,xb /*对差分变量的预测*/ 11 predict y,y /*对未差分变量的预测*/ predict variance,var /*对条件方差的预测 */ predict res,residuals /*对差分变量残差的预测*/ predict yres,yresiduals /*对未差分变量残差的预测*/ 3.2 ARCH模型的确定以及检验例子:

use https://www.sodocs.net/doc/2a2284852.html,/data/r11/wpi1,clear *- 检验 ARCH 效应是否存在:archlm 命令 regress D.ln_wpi archlm, lag(1/20) regress D.ln_wpi L(1/3).D.ln_wpi archlm, lag(1/20)

* 图形法——自相关函数图 (ac)

reg D.ln_wpi predict e, res gen e2 = e^2 ac e2, lag(40)

gen dlnwpi=D.ln_wpi gen dlnwpi2 = dlnwpi^2 ac dlnwpi2, lag(40)

* 精简模型:ARCH(1)

* 保守模型:ARCH(4)

*- 预测值 arch D.ln_wpi, arch(1/4)

predict ht, variance /*条件方差*/ * ht = c + a_1*e2_t-1 + a_2*e2_t-2 + ... + a_5*e2_t-5 line ht t predict et, residual /*均值方程的残差*/ *- 模型的评估 * 基本思想:

* 若模型设定是合适的,那么标准化残差 * z_t = e_t/sqrt(h_t)

* 应为一个 i.i.d 的随机序列,即不存在序列相关和ARCH效应; gen zt =

et / sqrt(ht)

/*标准化残差*/ gen zt2 = zt^2 /*标准化残差的平方*/ 12 * 序列相关检验 pac zt corrgram zt /*Ljung-Box 统计量*/ pac zt2 corrgram zt2 * 正态分布检验 histogram zt, normal wntestb zt wntestb zt2 * 评论:均值方程的设定可能需要改进,因为 zt 仍然表现出明显的序列相关。

* 条件方差方程的设定基本满足要求,zt2 不存在明显的序列相关。

3.3 ARIMA过程的ARCH模型我们可以对条件方差模型保持 ARCH(1,1)模型而均值模型采用 ARMA过程的自回归一阶和移动平均一阶农以及移动平均四阶来控制季节影响:

. use https://www.sodocs.net/doc/2a2284852.html,/data/r11/wpi1,clear . arch D.ln_wpi,ar(1)

ma(1 4)

arch(1)

garch(1)

ARCH family regression -- ARMA disturbances Sample:

1960q2 - 1990q4 Number of obs = 123 Distribution:

Gaussian Wald chi2(3)

= 153.56 Log likelihood = 399.5144 Prob > chi2 = 0.0000 ------------------------------------------------------------------------------ | OPG D.ln_wpi | Coef. Std. Err. z P>|z| [95% Conf. Interval] -------------+---------------------------------------------------------------- ln_wpi | _cons | .0069541 .0039517 1.76 0.078 -.000791 .0146992 -------------+---------------------------------------------------------------- ARMA | ar | L1. | .7922673 .1072225 7.39 0.000 .582115 1.002419 | ma | L1. | -.3417738 .1499944 -2.28 0.023 -.6357574 -.0477902 L4. | .2451725 .1251131 1.96 0.050 -.0000446 .4903896 -------------+---------------------------------------------------------------- ARCH | 13 arch | L1. | .2040451 .1244992 1.64 0.101 -.039969 .4480591 | garch | L1. | .694968 .189218 3.67 0.000 .3241075 1.065829 | _cons | .0000119 .0000104 1.14 0.253 -8.52e-06 .0000324 ------------------------------------------------------------------------------ 为使上述的模型估计变得清楚明了,我们可以将模型表示为:虽然arch系数0.204是不显著,但是ARCH(1)和GARCH(1)系数整体是显著的。

我们可以通过下面来进行检验:

. test [ARCH]L1.arch [ARCH]L1.garch ( 1)

[ARCH]L.arch = 0 ( 2)

[ARCH]L.garch = 0 chi2( 2)

= 84.92 Prob > chi2 = 0.0000 3.4 非对称效应的EGARCH模型还是以美国的WPI数据为例,我们可能认为整个经济对于整体物价的异常上涨产生的波动要比异常的下降大。可能异常的上涨导致影响存货的现金流问题从而导致更大的波动。数据中存在这种不对称效应,就需要对原先的 ARCH模型加以修正,EGARCH模型就是修正的结果。

. use https://www.sodocs.net/doc/2a2284852.html,/data/r11/wpi1,clear . arch D.ln_wpi,ar(1)

ma(1 4)

earch(1)

egarch(1)

ARCH family regression -- ARMA disturbances Sample:

1960q2 - 1990q4 Number of obs = 123 Distribution:

Gaussian Wald chi2(3)

= 156.04 Log likelihood = 405.3145 Prob > chi2 = 0.0000 ------------------------------------------------------------------------------ | OPG D.ln_wpi | Coef. Std. Err. z P>|z| [95% Conf. Interval] -------------+---------------------------------------------------------------- ln_wpi | 14 _cons | .0087355 .0034008 2.57 0.010 .0020702 .0154009 -------------+---------------------------------------------------------------- ARMA | ar | L1. | .76923 .0968298 7.94 0.000 .579447 .959013 | ma | L1. | -.3554615 .1265657 -2.81 0.005 -.6035258 -.1073972 L4. | .2414685 .0863807 2.80 0.005 .0721655 .4107715 -------------+---------------------------------------------------------------- ARCH | earch | L1. | .4064263 .1163501 3.49 0.000 .1783842 .6344684 | earch_a | L1. | .2467514 .1233374 2.00 0.045 .0050145 .4884883

统计学第四版贾俊平人大_回归与时间序列stata

回归分析与时间序列 一、一元线性回归 11.1 (1)编辑数据集,命名为linehuigui1.dat 输入命令scatter cost product,xlabel(#10, grid) ylabel(#10, grid),得到如下散点图,可以看到,产量和生产费用是正线性相关的关系。 (2)输入命令reg cost product,得到如下图: 可得线性函数(product为自变量,cost为因变量):y=0.4206832x+124.15,即β0=124.15,β1=0.4206832 (3)对相关系数的显著性进行检验,可输入命令pwcorr cost product, sig star(.05) print(.05),得到下图:

可见,在α=0.05的显著性水平下,P=0.0000<α=0.05,故拒绝原假设,即产量和生产费用之间存在显著的正相关性。 11.2 (1)编辑数据集,命名为linehuigui2.dat 输入命令scatter fenshu time,xlabel(#4, grid) ylabel(#4, grid),得到如下散点图,可以看到,分数和复习时间是正线性相关的关系。 2)输入命令cor fenshu time计算相关系数,得下图: 可见,r=0.8621,可见分数和复习时间之间存在高度的正相关性。 11.3 (1)(2)对于线性回归方程y=10-0.5x,其中β0=10,表示回归直线的截距为10;β1=-0.5,表示x变化一单位引起y的变化为-0.5。 (3)x=6时,E(y)=10-0.5*6=7。 11.4 (1) ,判定系数 测度了回归直线对观测数据的拟合程度,即在分数的变差中,有90%可以由分数与复习时间之间的线性关系解释,或者说,在分数取值的变动中,

运用stata进行时间序列分析

运用stata进行时间序列分析 1 时间序列模型结构模型虽然有助于人们理解变量之间的影响关系,但模型的预测精度比较低。在一些大规模的联立方程中,情况更是如此。而早期的单变量时间序列模型有较少的参数却可以得到非常精确的预测,因此随着Box and Jenkins(1984)等奠基性的研究,时间序列方法得到迅速发展。从单变量时间序列到多元时间序列模型,从平稳过程到非平稳过程,时间序列分析方法被广泛应用于经济、气象和过程控制等领域。本章将介绍如下时间序列分析方法,ARIMA模型、ARCH族模型、 VAR模型、VEC模型、单位根检验及协整检验等。 一、基本命令 1.1时间序列数据的处理 1)声明时间序列:tsset 命令 use gnp96.dta, clear list in 1/20 gen Lgnp = L.gnp tsset date list in 1/20 gen Lgnp = L.gnp 2)检查是否有断点:tsreport, report use gnp96.dta, clear tsset date tsreport, report drop in 10/10 list in 1/12 tsreport, report tsreport, report list /*列出存在断点的样本信息*/ 3)填充缺漏值:tsfill tsfill tsreport, report list list in 1/12 4)追加样本:tsappend use gnp96.dta, clear tsset date list in -10/-1 sum tsappend , add(5) /*追加5个观察值*/ list in -10/-1 sum 2 5)应用:样本外预测: predict reg gnp96 L.gnp96 predict gnp_hat list in -10/-1 6)清除时间标识: tsset, clear tsset, clear 1.2变量的生成与处理 1)滞后项、超前项和差分项 help tsvarlist use gnp96.dta, clear tsset date gen Lgnp = L.gnp96 /*一阶滞后*/ gen L2gnp = L2.gnp96 gen Fgnp = F.gnp96 /*一阶超前*/ gen F2gnp = F2.gnp96 gen Dgnp = D.gnp96 /*一阶差分*/ gen D2gnp = D2.gnp96 list in 1/10 list in -10/-1 2)产生增长率变量: 对数差分 gen lngnp = ln(gnp96) gen growth = D.lngnp gen growth2 = (gnp96-L.gnp96)/L.gnp96 gen diff = growth - growth2 /*表明对数差分和变量的增长率差别很小*/ list date gnp96 lngnp growth* diff in 1/10 1.3日期的处理日期的格式 help tsfmt 基本时点:整数数值,如 -3, -2, -1, 0, 1, 2, 3 .... 1960年1月1日,取值为 0; 3 显示格式: 定义含义默认格式%td 日%tdDlCY %tw 周%twCY!ww %tm 月 %tmCY!mn %tq 季度 %tqCY!qq %th 半年 %thCY!hh %ty 年 %tyCY 1)使用tsset 命令指定显示格式 use B6_tsset.dta, clear tsset t, daily list use B6_tsset.dta, clear tsset t, weekly list 2)指定起始时点 cap drop month generate month = m(1990-1) + _n - 1 format month %tm list t month in 1/20 cap drop year gen year = y(1952) + _n - 1 format year %ty list t year in 1/20 3)自己设定不同的显示格式日期的显示格式 %d (%td) 定义如下: %[-][t]d<描述特定的显示格式> 具体项目释义: “<描述特定的显示格式>”中可包含如下字母或字符 c y m l n d j h q w _ . , : - / ' !c C Y M L N D J W 定义如下: c an d C 世纪值(个位数不附加/附加0)

时间序列模型stata 基本命令汇总..

时间序列模型 结构模型虽然有助于人们理解变量之间的影响关系,但模型的预测精度比较低。在一些大规模的联立方程中,情况更是如此。而早期的单变量时间序列模型有较少的参数却可以得到非常精确的预测,因此随着Box and Jenkins(1984)等奠基性的研究,时间序列方法得到迅速发展。从单变量时间序列到多元时间序列模型,从平稳过程到非平稳过程,时间序列分析方法被广泛应用于经济、气象和过程控制等领域。本章将介绍如下时间序列分析方法,ARIMA模型、ARCH族模型、VAR模型、VEC模型、单位根检验及协整检验等。 一、基本命令 1.1时间序列数据的处理 1)声明时间序列:tsset 命令 use gnp96.dta, clear list in 1/20 gen Lgnp = L.gnp tsset date list in 1/20 gen Lgnp = L.gnp 2)检查是否有断点:tsreport, report use gnp96.dta, clear tsset date tsreport, report drop in 10/10 list in 1/12 tsreport, report tsreport, report list /*列出存在断点的样本信息*/ 3)填充缺漏值:tsfill tsfill tsreport, report list list in 1/12 4)追加样本:tsappend use gnp96.dta, clear tsset date list in -10/-1 sum tsappend , add(5) /*追加5个观察值*/ list in -10/-1 sum

Stata时间序列笔记

文档结尾是FAQ和var建模的15点注意事项 【梳理概念】 向量自回归(VAR, Vector Auto regression)常用于预测相互联系的时间序列系统以及分析随机扰动对变量系统的动态影响。 VAR模型: VAR方法通过把系统中每一个内生变量,作为系统中所有内生变量的滞后值的函数来构造模型,从而回避了结构化模型的要求。 VAR模型对于相互联系的时间序列变量系统是有效的预测模型,同时,向疑自回归模型也被频繁地用于分析不同类型的随机误差项对系统变量的动态影响。如果变量之间不仅存在滞后影响,而不存在同期影响关系,则适合建立VAR模型,因为VAR模型实际上是把当期关系隐含到了随机扰动项之中。 协整: Engle和Granger (1987a)指岀两个或多个非平稳时间序列的线性组合可能是平稳的。假如这样一种平稳的或的线性组合存在,这些非平稳(有单位根)时间序列之间被认为是具有协整关系的。这种平稳的线性组合被称为协整方程且可被解释为变量之间的长期均衡关系。 * 第六讲时间序列分析 *一一目录—— ? d?简介 *6」时间序列数据的处理 d ■平稳时间序列模型 * 6.2 ARIMA 模型 * 6.3 VAR 模型 非平稳时间序列模型一近些年得到重视,发展很快 * 6.4非平稳时间序列简介 * 6.5单位根检验——检验非平稳 * 6.6协整分析一一非平稳序列的分析 黑-自回归条件异方差模型 * 6.7 GARCH模型一一金融序列不同时点上序列的差界 反映动态关系的时间数据顺序不可颠倒 cd d:\stata 10\ado\personal\Net_Course\B6_TimcS *时间序列数据的处理help time *声明时间序列:tsset命令 use gnp96.dta, clear list in 1/20

与时间序列相关的STATE命令及其统计量的解析

与时间序列相关的STATE命令及其统计量的解析与时间序列相关的STATA 命令及其统计量的解析残差U 序列相关: ①DW 统计量——针对一阶自相关的(高阶无效) STATA 命令: 1.先回归 2.直接输入dwstat 统计量如何看:查表②Q 统计量——针对高阶自相关correlogram-Q-statistics STATA 命令: 1.先回归reg 2.取出残差predict u,residual(不要忘记逗号) 3. wntestq u Q 统计量如何看:p 值越小(越接近0)Q 值越大——表示存在自相关具体自相关的阶数可以看自相关系数图和偏相关系数图:STATA 命令: 自相关系数图: ac u( 残差) 或者窗口操作在Graphics ——Time-series graphs ——correlogram(ac) 偏相关系数图: pac u 或者窗口操作在Graphics——Time-series graphs—— (pac) 自相关与偏相关系数以及Q 统计量同时表示出来的方法: corrgram u 或者是窗口操作在 Statistics——Time-series——Graphs—— Autocorrelations&Partial autocorrelations ③LM 统计量——针对高阶自相关 STATA 命令: 1.先回归reg 2.直接输入命令 estate bgodfrey,lags(n) 或者窗口操作在 Statistics——Postestimation(倒数第二个)——Reports and Statistics(倒数第二个) ——在里面选择 Breush-Godfrey LM(当然你在里面还可以找到方差膨胀因子还有DW 统计量等常规统计量) LM 统计量如何看:P 值越小(越接近 0)表示越显著(显著拒绝原假设),存在序列相关具体是几阶序列相关,你可以把滞后期写为几,当然默认是 1,(通常的方法是先看图,上面说的自相关和偏相关图以及Q 值,然后再利用LM 肯定)。 平稳时间序列存在自相关的问题的解决方案残差出现序列相关的补救措施: 一阶自相关最近简单的方法是用AR(1)模型补救,就是在加一个残差的滞后项即可。 高阶的自相关用AR(n)模型补救。 AR 模型的识别与最高阶数的确定: 可以通过自相关系数来获得一些有关 AR(p) 模型的信息,如低阶 AR(p) 模型系数符号的信息。但是,对于自回归过程AR(p),自相关系数并不能帮助我们确定 AR(p) 模型的阶数 p。所以,可以考虑使用偏自相关系数 k,k,以便更加全面的描述自相关过程AR(p)的统计特征。 且对于一个AR(p) 模型, k,k 的最高阶数为p,也即AR(p) 模型的偏自相关系数是 p 阶截尾的。因此,可以通过识别AR(p)模型的偏

与时间序列相关的STATA-命令及其统计量的解析

与时间序列相关的STATA 命令及其统计量的解析 残差U 序列相关: ①DW 统计量——针对一阶自相关的(高阶无效) STATA 命令: 1.先回归 2.直接输入dwstat 统计量如何看:查表 ②Q 统计量——针对高阶自相关correlogram-Q-statistics STATA 命令: 1.先回归reg 2.取出残差predict u,residual(不要忘记逗号) 3. wntestq u Q 统计量如何看:p 值越小(越接近0)Q 值越大——表示存在自相关 具体自相关的阶数可以看自相关系数图和偏相关系数图: STATA 命令: 自相关系数图: ac u( 残差) 或者窗口操作在 Graphics ——Time-series graphs —— correlogram(ac) 偏相关系数图: pac u 或者窗口操作在Graphics——Time-series graphs—— (pac) 自相关与偏相关系数以及Q 统计量同时表示出来的方法: corrgram u或者是窗口操作在 Statistics——Time-series——Graphs——Autocorrelations&Partial autocorrelations ③LM 统计量——针对高阶自相关 STATA 命令: 1.先回归reg 2.直接输入命令estate bgodfrey,lags(n) 或者窗口操作 在 Statistics——Postestimation(倒数第二个)——Reports and Statistics(倒数第二个) ——在里面选择 Breush-Godfrey LM(当然你在里面还可以找到方差膨胀因子还有DW 统计量等常规统计量) LM 统计量如何看: P 值越小(越接近 0)表示越显著(显著拒绝原假设),存在序列相关 具体是几阶序列相关,你可以把滞后期写为几,当然默认是 1,(通常的方法是先看图,上面说的自相关和偏相关图以及Q 值,然后再利用LM 肯定)。 平稳时间序列存在自相关的问题的解决方案 残差出现序列相关的补救措施: 1、一阶自相关 : 最近简单的方法是用AR(1)模型补救,就是在加一个残差的滞后项即可。 2、高阶的自相关: 用AR(n)模型补救。

时间序列分析STATA 第三课

第三课:ARMA/ARIMA建模及预测 核心问题:1,前提:同方差,因此,不用考虑不同时刻变量的离散性; 2,建立的是变量分布的均值模型, 也就是,随机变量分布的均值所在的位置 3,难点在于,时间序列数据建立模型并没有唯一性 以quarterly.dta的数据来说明。这个数据是美国的季度GDP数据,数据从1947年一季度开始,到2012年一季度结束。研究对象,GDP,存在通货膨胀问题。所以要用GDP平减指数(GDP Deflator)进行矫正,这里是以2005年的美元作为基准的。所以考察变量是GDP2005,即以2005年的美元作为基准的各季度的GDP 真实值。 一,一些基本符号: D L F 二,建立模型: 前期准备:观察时序图 相关命令:tsset, tsline/twoway

从图上可以看出,GDP2005值呈线性的向右上方倾斜, 第一种方法: 可以用确定性分析理的方法,使用研究变量对时间变量进行回归 即:regress lrgdp date (采用的是最小二乘估计) 然后对残差项进行White Noise 检验 观察此图:特征大值跟大值,小值跟小值,这说明Residual 中存在着自相关信息。肯定不是White Noise 因此,从这里看出,确定性的方法比较直观,简单,但效果不好,弥补:对残差序列进行回归,建立AR 模型,这就是所谓的 残差自回归模型。 第二种方法 BOX-JENKINS 方法,也就是通常所说的ARMA(p,d) /ARIMA(p,d,d)建模(采用的是最大似然估计)。 四大步骤:1、模型识别Identification :决定p 和q 2、模型估计Estimation :估计εσθφμ 个),(,个)(, q p 3、模型检验Diagnostic Checking 4、模型优化Parsimony

相关主题