当前位置:文档之家› Stata时间序列笔记

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, clearlist in 1/20gen Lg叩=L.gnp(此时没办法生成之后一阶的变量,因为没有设左时间变量)tsset date (设定 date 为时间变timeseries ) list in 1/20 gen Lgnp = L.gnp96滞后一期,所以会产生1个缺失值 •检查是否有断点——肉眼看不方便,用命令检査 use gnp96.dta, clear tsset datetsreport, reportdrop in 10/10— 一去掉断点成连续的,才能继续进行 list in 1/12 tsreport, report tsreport, report list /* 列 出 存 在 断 点 的 样 本 信 息 */.tsreport. rep-ort Number o£ gaps in sairple: 1・ tsreport x repor 七 listRecord1969q3•填充缺漏值一一接着上一步,看看SR 怡如何填充缺漏值。

•般用前而的数据的平均值或预测等 Tsfill (以缺漏值的形式) tsreport, report list list in 1/12总追加样本一一有时候追加样本不是为了追加新的值,而是为了预测(见应用) use gnp96.dta, clear tsset date list in-10/-l sumtsappend , ad (l (5)产追加5个观察值*/listin-lOAl 增加的样本值部是缺漏的町以乎动输入Number or gaps in sairple :Observaxions withpreceding time gaps Date 10date gnp96 Lgnp19€7ql 19€7q2 19«7q3 19«7q4 19€8ql3=631 •召 眺 44.5 3S72 3703 37S7.53€44.5 3572 3703-1€ 738€l -83937.83915 3937.819€9q3 19€9q419*68q2 19€8q3 19€8q4sum.tsappend 7 add<5)sumVariableObs Mean Sxd. Dev ・ Mindate 147 10142.57934 28 174 gnp96141 6076.532 l€9€.O91 363l.G 9678.4 Lgnp140G050.8G31€74.2G63G3l.G9GS9左应用:样本外预测 reg gnp96 L.gnp96 predict gnp_hatlist in -lO/J -接上一步这'|川的样本值的预測值就显示出来了( ii 就是追加了样本值) *清除时间标识 tsset, clear ------ 若数据的形态有所改变就淸除*变量的生成与处理 滞后 L —lag 前导 F —forward 差分 D-difference -滞后项、超前项和差分项help tsvarlist use gnp96.dta. clear tsset dategen 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/-1D, L, F 可以组合生成变量gen 新变M^I =DL.变量名先滞后再差分一产生增长率变虽gen 变量名=D.ln(gnp96):对数差分一一得到近似的增长率 先设左时间变量tsset date gen lngnp = ln(gnp96)gen growth = D.lngnp (得到近似的增长率) 上而两步的简写形式(gen growth=D.ln(gnp96)) -该简化方法在stata!2中不可行date gnp9 6 Lgnp 138・ 2001q2 9436.4 9462.8 139. 2001q3 9405.7 9436.4 L40. 2001q4 9538 9405.7 L41.2002ql 9659 9538 142・ 2002q29678.49659143・ 2002q3、 L44.2002q4 f - 14S ・ 2003ql I- L46. 2003q2 \-147・ 2003q3_______ "・ list in -10/-1gen growth2 = (gnp96-L.gnp96)/L.gnp96 ------- 增长率的最基本定攵gen difiF = growth - growth2 ----- 若对放羌分和貞•.正的增长率接近,diff约等于0 list date gnp96 lngnp growth* diff in 1/10* 日期的处理 *~日期的格式help tsfmt♦=*=基本时点:整数数值,如-3,-2,-1.0. 1,2,3....* 1960年1月1日,取值为0;*显示格式:*定义含义默认格式**%td 日%tdDlCY♦%tw 周%twCY!ww*%tm 月%tmCY!mn*%tq 季度%tqCY!qq*%th 半年%thCY!hh%ty 年%tyCY♦*冬使用tsset命令指左显示格式use B6_tsset.dta, cleartsset t, dailylistuse B6_tsset.dta, cleartsset t, weekly——龙义基本时点123间的间隔是日、周、年等list冬相同的基本时点,采用不冋的方式显示会有不同的效果clearset obs 100gen t = _nreplace t = t-3local format u td tw tin tq th ty Hforeach f of local format {gen tjf = tformat tjf %s f}list in 1/20冬说明:同样的数值,釆用不同的显示方式,会有完全不同的含义format month %tm list month in 1/20cap drop yeargen year = y(1952) + _n ・1 format year %ty list t year in 1/20*设怎不同的显示格式help dfmt♦*日期的显示格式%d (%td)义如下:*%[-][t]d<描述特左的显示格式〉*指定起始时点cap drop monthgenerate month = m( 1990-1) + _n ・ 1*冬具体项目释义: * “v 描述特左的显示格式〉”中可包含如下字母或字符 * c y m 1 n d j h q w _.,: ' !c * CYMLNDJ W 黑定义如下: /†candC 世纪值(个位数不附加/附加0)y and Y 不含世纪值的年份(个位数不附加/附加0) m 三个英文字母的月份简写(第一个字母大写) M 英文字母拼写的月份(第一个字母大写) nandN 数字月份(个位数不附加/附加0)dandD 一个月中的第几日(个位数不附加/附加0) j and J 一年中的第几日(个位数不附加/附加0) h —年中的第几半年(lor 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 (右弓I 号)!c display character c (code !! to display an exclamation point ) */ *歩例如:* Format Sample date in format * %td 07jull948 * %tdM_d._CY July 7, 1948 * %tdY/NI/D 48/07/11 * %tdM-D-CY 07-11-1948 * %tqCY.q 1999.2 * %tqCY:q 1992:2 * %twCY,_w 2010,48 * _______________________ *又如:Format Sample date in fonnat * %dN/D/Y 07/11/48 * %dD/N/Y 11/07/48clearset obs 100gen t = _n + d(13feb 1978)(Mi -个数显示的是1978年2月14对应的数值) list t in 1/5 format t %dCY-N-D /‡ 1978-02-14*/ list t in 1/5† %d lljull948 * %dDlCY Ujull948 * %dDlY 11 juI48 * %dM_d,_CY July 11, 1948 * %dd_M_CY 11 July 1948 ‡ 图解时间序列* %dY/N/D 48/07/11 * %dN-D-CY 07-11-1948format t %dcy_n_d /*1978 2 14*/list t in 1/5use B6_tsset, clearlisttsset t, format(%twCY-m)list左一个实例:生成连续的时间变量use el920.dta, clearlist year month in 1/30sort year monthgen time = _n tsset timelist year month time in 1/30generate newmonth = m( 1920-1) + time - 1 tsset newmonth, monthly list year month time newmonth in 1/30处理日期的函数help dates_and_timeshelp time-series functions*以下适用于STATA9.2版本时间序列日期概览help tdates将文字变量转换为日期help dlyfcns*一利用年、月、季度转换日期help dlyfcns日期转换函数help dcfcns♦ help tsline*例1:clearset seed 13579113sim_arma ar2, ar(0.7 0.2) nobs(200)sim_arma ma2, ma(0.7 0.2)tssettsline ar2 ma2*亦可采用twoway line命令绘制,但较为繁琐twoway line ar2 ma2 _t (前而两个为纵坐标,后而的为横坐标)*例2:增加文字标注sysuse tsline2, cleartsset day^delimit;tslinc calories, ttick(28nov2002 25dec2002, tpos(in)) ttext(3470 28nov2002 "thanks"3470 25dec2002 "x・mas”,orient(vert));^delimit cr(clcar)总例3:增加两条纵向的标示线sysuse tsline2, cleartsset daytslinc calories, tline(28nov2002 25dec2002)(在某时点画垂直线〉•z;o01jan2002 0iapf2002*或采用twoway line命令local dl = d(28nov2002)local d2 = d(25dec2002)line calories day, xlinefdr x d2r)=*=例4:改变标签tsline calories, tlabelG format(%tdmd)) ttitle(H Date (2002)")(分别为刻度乳和横坐标名〉tsline calories, tlabel(, format(%td))0i|^n20Coijan^ooz oiapr2O02 01JUI2002 01 oct2D02 Dijan20CDate叫譜2 01OCt2002s ■000P 008" pawnsgjs 皂Jo-eoooDo******计量分析与Stata应用*******主讲人:连玉君博士位:中山大学岭南学院金融系邮:页:::髙级部分::*计量分析与Stata应用*--------------------------------------------*第六讲时间序列分析*--------------------------------------------* 6.2 ARIMA 模型cd d:\stata 10\ado\personal\NeLCourse\B6_TimeS* ---------------------------------------*平稳时间序列模型ARIMA模型help arimaAR过程与MAil程自相关系数与偏自相关系数滞后阶数的筛选估计预测*-简介一*AR过程(自回归过程)*AR(1): yj = rho§y_{t-l} + uj*AR(p): yj = r_l *yjt-l j + r_2*y_{t・2} + ... + r_p*y_{t-p} + ujclearsim_arma y_ar, ar(0.9) nobs(300)( |-| 回归系数是0.9,观察值的个数是300) line y_ar yline(O)(在y=0处画条横线) *自相关系数(ACF)Cov[yj, y_{t+s}]§Var[yj]冬偏自相关系数(PACF)*yj = all*yjt-l}+uj (all 就是一阶(偏)自相关 )*y」= a2Fy_{M} + a22*y_{t・2}+u_t (a22就是:阶偏自相*yj = akl*y_{t-l} + ak2*y_{t-2} + ... + akk*y.{t-k} + u_t** PACF 为{al 1, a22, a33,..., akk}乞相当于控制英它滞后项的影响后.得到的“净"相关系数ac y_ar /*AR过程的ACF具有“拖尾”特征,长期记忆*/ pac y_ar /*AR过程的PACF具有“截尾”特征可*评论:根据AC和PAC图形可以初步判断某个序列是否为AR过程*具体表现为:*(1)AC图“拖尾”*(2) PAC图“截断"(截断处对应的阶数就是AR的滞后阶数P)程(移动平均过程)(I•扰项存在-个自相关的过程)*MA(1): yj = theta*u_{t-l} + u_t*M A(q): yj = thetal*u_{t-l} + theta2*u_{t-2} + ... + thetaq*u_{t-q} + u_t sim_arma y_ma. ma(0.8) nobs(300) line y_ma ylinc(O)ac y_ma /*MA过程的ACF具有“截尾”特征,短期记忆引pac y.ma /*MA过程的PACF具有锯齿型“拖尾”特征*/*稳左性与可逆性*定义:协方差稳定(Covariance Stationary)* a. E[yj]独立于t:* b. Var[yj]是一个有限的正常数,且独立于t;* c. Cov[yJ,y_(t+s}]是s的有限函数,但与t无关。

相关主题