文档结尾是FAQ和var建模的15点注意事项
【梳理概念】
向量自回归(VAR, Vector Auto regression)常用于预测相互联系的时间序列系统以及分析随机扰动对变量系统的动态影响。
V AR模型:
V AR方法通过把系统中每一个内生变量,作为系统中所有内生变量的滞后值的函数来构造模型,从而回避了结构化模型的要求。
V AR模型对于相互联系的时间序列变量系统是有效的预测模型,同时,向量自回归模型也被频繁地用于分析不同类型的随机误差项对系统变量的动态影响。如果变量之间不仅存在滞后影响,而不存在同期影响关系,则适合建立VAR模型,因为VAR模型实际上是把当期关系隐含到了随机扰动项之中。
协整:
Engle和Granger(1987a)指出两个或多个非平稳时间序列的线性组合可能是平稳的。假如这样一种平稳的或的线性组合存在,这些非平稳(有单位根)时间序列之间被认为是具有协整关系的。这种平稳的线性组合被称为协整方程且可被解释为变量之间的长期均衡关系。
* 第六讲时间序列分析
*---- 目录 -----
*
*-- 简介
* 6.1 时间序列数据的处理
*-- 平稳时间序列模型
* 6.2 ARIMA 模型
* 6.3 V AR 模型
*-- 非平稳时间序列模型——近些年得到重视,发展很快
* 6.4 非平稳时间序列简介
* 6.5 单位根检验——检验非平稳
* 6.6 协整分析——非平稳序列的分析
*-- 自回归条件异方差模型
* 6.7 GARCH 模型——金融序列不同时点上序列的差异
反映动态关系的时间数据顺序不可颠倒
cd d:\stata10\ado\personal\Net_Course\B6_TimeS
*=======================
* 时间序列数据的处理 help time
*=======================
* 声明时间序列:tsset 命令
use gnp96.dta, clear
list in 1/20
gen Lgnp = L.gnp(此时没办法生成之后一阶的变量,因为没有设定时间变量)
tsset date(设定date为时间变量,timeseries)
list in 1/20
gen Lgnp = L.gnp96
滞后一期,所以会产生1个缺失值
●检查是否有断点——肉眼看不方便,用命令检查
use gnp96.dta, clear
tsset date
tsreport, report
drop in 10/10 ——去掉断点成连续的,才能继续进行
list in 1/12
tsreport, report
tsreport, report list/*列出存在断点的样本信息*/ ●填充缺漏值——接着上一步,看看stata如何填充缺漏值。一般用前面的数据的平均值或预测等
Tsfill(以缺漏值的形式)
tsreport, report list
list in 1/12
* 追加样本——有时候追加样本不是为了追加新的值,而是为了预测(见应用)
use gnp96.dta, clear
tsset date
list in -10/-1
sum
tsappend , add(5) /*追加5个观察值*/
list in -10/-1 增加的样本值都是缺漏的可以手动输入
sum
* 应用:样本外预测
reg gnp96 L.gnp96
predict gnp_hat
list in -10/-1——接上一步这样增加的样本值的预测值就显示出来了(前提是追加了样本值)* 清除时间标识
tsset, clear——若数据的形态有所改变就清除
*---------------------
* 变量的生成与处理
*---------------------
滞后L—lag 前导F—forward 差分D-difference
*--- 滞后项、超前项和差分项 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
D,L,F可以组合生成变量gen 新变量名= DL.变量名先滞后再差分
*---产生增长率变量gen 变量名=D.ln(gnp96): 对数差分——得到近似的增长率
先设定时间变量 tsset date
gen lngnp = ln(gnp96)
gen growth = D.lngnp(得到近似的增长率)
上面两步的简写形式(gen growth=D.ln(gnp96))——该简化方法在stata12中不可行 gen growth2 = (gnp96-L.gnp96)/L.gnp96——增长率的最基本定义
gen diff = 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, clear
tsset t, daily
list
use B6_tsset.dta, clear
tsset t, weekly——定义基本时点1.2.3间的间隔是日、周、年等
list
* 相同的基本时点,采用不同的方式显示会有不同的效果
clear
set obs 100
gen t = _n
replace t = t-3
local format "td tw tm tq th ty"
foreach f of local format{
gen t_`f' = t
format t_`f' %`f'
}
list in 1/20
* 说明:同样的数值,采用不同的显示方式,会有完全不同的含义
* 指定起始时点
cap drop month
generate month = m(1990-1) + _n - 1
format month %tm
list month in 1/20
cap drop year
gen year = y(1952) + _n - 1
format year %ty
list t year in 1/20
* 设定不同的显示格式 help dfmt
*
* 日期的显示格式 %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 三个英文字母的月份简写(第一个字母大写)
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) */
*
* 例如:
* 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
* -----------------------------------
* 又如:
* 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
gen t = _n + d(13feb1978)(第一个数显示的是1978年2月14对应的数值) 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
* 一个实例:生成连续的时间变量
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
*--- 处理日期的函数
help dates_and_times
help time-series functions
* 以下适用于 STATA9.2 版本
*-- 时间序列日期概览 help tdates
*-- 将文字变量转换为日期 help dlyfcns
*-- 利用年、月、季度转换日期 help dlyfcns
*-- 日期转换函数 help dcfcns
*-----------------------
* 图解时间序列
*-----------------------
* help tsline
* 例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:增加文字标注
sysuse tsline2, clear
tsset day
#delimit ;
tsline calories, ttick(28nov2002 25dec2002, tpos(in))
ttext(3470 28nov2002 "thanks"
3470 25dec2002 "x-mas", orient(vert));
#delimit cr(clear)
* 例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:改变标签
tsline calories, tlabel(, format(%tdmd)) ttitle("Date (2002)")(分别为刻度名和横坐标名) tsline calories, tlabel(, format(%td))
****** 计量分析与Stata应用 ******
* 主讲人:连玉君博士
* 单位:中山大学岭南学院金融系
* 电邮:
* 主页:
* ::高级部分::
* 计量分析与Stata应用
* ==========================
* 第六讲时间序列分析
* ==========================
* 6.2 ARIMA 模型
cd d:\stata10\ado\personal\Net_Course\B6_TimeS
*=======================
* 平稳时间序列模型
*=======================
*-----------------
* ARIMA 模型 help arima
*-----------------
*-- AR 过程与 MA 过程
*-- 自相关系数与偏自相关系数
*-- 滞后阶数的筛选
*-- 估计
*-- 预测
* -- 简介 --
* AR 过程(自回归过程)
* AR(1): y_t = rho*y_{t-1} + u_t
* AR(p): y_t = r_1*y_{t-1} + r_2*y_{t-2} + ... + r_p*y_{t-p} + u_t
clear
sim_arma y_ar, ar(0.9) nobs(300)(自回归系数是0.9,观察值的个数是300) line y_ar _t, yline(0)(在y=0处画条横线)
*-----------------------------------------------------------
* 自相关系数(ACF)
* Cov[y_t, y_{t+s}]
* r_s = -------------------
* Var[y_t]
* 偏自相关系数(PACF)
* y_t = a11*y_{t-1} + u_t(a11就是一阶(偏)自相关系数,)
* y_t = a21*y_{t-1} + a22*y_{t-2} + u_t(a22就是二阶偏自相关系数) * ...
* y_t = ak1*y_{t-1} + ak2*y_{t-2} + ... + akk*y_{t-k} + u_t
*
* PACF 为 {a11, a22, a33, ... , akk}
* 相当于控制其它滞后项的影响后,得到的“净”相关系数
*-----------------------------------------------------------
ac y_ar /*AR过程的 ACF 具有“拖尾”特征,长期记忆*/
pac y_ar /*AR过程的 PACF 具有“截尾”特征*/
* 评论:根据AC和PAC图形可以初步判断某个序列是否为AR过程
* 具体表现为:
* (1) AC 图“拖尾”
* (2) PAC 图“截断”(截断处对应的阶数就是AR的滞后阶数P)
* MA 过程(移动平均过程)(干扰项存在一个自相关的过程)
* MA(1): y_t = theta*u_{t-1} + u_t
* MA(q): y_t = theta1*u_{t-1} + theta2*u_{t-2} + ... + thetaq*u_{t-q} + u_t
sim_arma y_ma, ma(0.8) nobs(300)
line y_ma _t, yline(0)
ac y_ma /*MA过程的 ACF 具有“截尾”特征,短期记忆*/
pac y_ma /*MA过程的 PACF 具有锯齿型“拖尾”特征*/
* 稳定性与可逆性
* 定义:协方差稳定(Covariance Stationary)
* a. E[y_t] 独立于 t;
* b. Var[y_t] 是一个有限的正常数,且独立于 t;
* c. Cov[y_t,y_{t+s}] 是 s 的有限函数,但与 t 无关。
* 稳定的AR过程和MA过程可以相互转换
* ARIMA 模型(最大似然估计法)
* y_t = x_t*b + u_t 结构方程
* u_t = rho*u_{t-1} + theta*v_{t-1} + v_t 干扰项,ARMA(1,1)
* 一阶自相关一阶移动平均白噪声
*
* 很多情况下,模型设定中并不包含解释变量,此时ARMA(1,1)模型可表示为:* y_t = a + rho*y_{t-1} + theta*v_{t-1} + v_t
* 实例:固定资产投资行为
* -- 估计 --
use wpi1.dta, clear
d
dfuller wpi
gen d_wpi = D.wpi
dfuller d_wpi
* ARMA(1,1,1) 模型由于原始序列包含单位根,所以要采用ARIMA模型
arima wpi, arima(1,1,1)
* 另一种设定方式,更加灵活
arima d_wpi, ar(1) ma(1)
* -- 滞后阶数的确定 --
* LL值,AIC准则,BIC准则
* LL 越大越好, AIC 和 BIC 越小越好
* AIC = -2*ln(L) + 2*k /*ln(L) 对数似然值;k 参数个数; N 样本数*/
* BIC = -2*ln(L) + k*ln(N)
* BIC 更倾向于筛选出“精简的”模型
* 产生模拟数据:ARMA(2,1)过程
clear
set seed 1357
sim_arma y_arma21, ar(0.8) ma(0.2) nobs(300)
* 估计 ARMA(1,1) 模型,MLE
arima y_arma21, ar(1) ma(1)
* 列示信息准则
estat ic
* 估计 ARMA(2,1) 模型
arima y_arma21, ar(1 2) ma(1)(既包含一阶,也包含二阶滞后项)
estat ic
ret list
mat list r(S)
mat s = r(S)
dis "AIC = " s[1,5]
* 根据信息准则筛选模型
* 例1:模拟数据
tsset _t(设定时间变量)
mat b = J(6,4,0)(产生一个矩阵,六行四列,元素全部为0)
local p = 1(定义展元)
forvalues i = 1(1)3{(i=1-3,每次增加1)
forvalues j = 1(1)2{
mat b[`p',1] = `i'
mat b[`p',2] = `j'(b矩阵的第一列和第二列分别记录i和j的数值)
qui arima y_arma21 , ar(1/`i') ma(1/`j')
est store arma`i'`j'
qui estat ic
mat S = r(S)
mat b[`p',3] = (S[1,5], S[1,6])
local p = `p' + 1
}
}
mat colnames b = AR MA AIC BIC(定义矩阵的名称)(第三列第四列分别记录AIC和BIC的数值) mat list b
local mm arma11 arma12 arma21 arma22 arma31 arma32
esttab `mm', mtitle(`mm') compress nogap scalar(ll aic bic)
* 例2:真实数据——美国零售价格指数
use wpi1.dta, clear
tsset t
line wpi t
line D.wpi t
line D.ln_wpi t
ac D.ln_wpi /*包含AR过程*/
pac D.ln_wpi /*基本上可以判断是AR(1),或ARMA(1,1)过程*/
* 采用信息准则筛选滞后阶数
local y "D.ln_wpi"
local a = 3 /*AR(a)*/
local b = 1 /*MA(b)*/
forvalues i = 1(1)`a'{
forvalues j = 0(1)`b'{ (0表示有可能只估计一个AR模型)
if `j' == 0{
local ma ""
}
else{
local ma "ma(1/`j')"
}
qui arima `y' , ar(1/`i') `ma' /*填写变量名称*/
est store arma`i'`j'
*qui estat ic
}
}
local mm arma10 arma11 arma20 arma21 arma30 arma31
esttab `mm', mtitle(`mm') compress nogap scalar(ll aic bic)
* 评论:
* (1) 本例中,AIC和BIC判断的结论一致,都是选择 ARMA(1,1) 模型; * (2) 多数情况下,ARMA(1,1) 模型都有较好的表现。
回归分析与时间序列 一、一元线性回归 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进行时间序列分析 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)
时间序列模型 结构模型虽然有助于人们理解变量之间的影响关系,但模型的预测精度比较低。在一些大规模的联立方程中,情况更是如此。而早期的单变量时间序列模型有较少的参数却可以得到非常精确的预测,因此随着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
文档结尾是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命令及其统计量的解析与时间序列相关的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 命令及其统计量的解析 残差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)模型补救。
第三课: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