Stata时间序列学习知识笔记.doc

By Woshow26 文档结尾是FAQ和var建模的15点注意事项 【梳理概念】 向量自回归(VAR, Vector Auto regression)常用于预测相互联系的时间序列系统以及分析随机扰动对变量系统的动态影响。

VAR模型 VAR方法通过把系统中每一个内生变量,作为系统中所有内生变量的滞后值的函数来构造模型,从而回避了结构化模型的要求。

VAR模型对于相互联系的时间序列变量系统是有效的预测模型,同时,向量自回归模型也被频繁地用于分析不同类型的随机误差项对系统变量的动态影响。如果变量之间不仅存在滞后影响,而不存在同期影响关系,则适合建立VAR模型,因为VAR模型实际上是把当期关系隐含到了随机扰动项之中。

协整 Engle和Granger(1987a)指出两个或多个非平稳时间序列的线性组合可能是平稳的。假如这样一种平稳的或的线性组合存在,这些非平稳(有单位根)时间序列之间被认为是具有协整关系的。这种平稳的线性组合被称为协整方程且可被解释为变量之间的长期均衡关系。

* 第六讲 时间序列分析 *---- 目录 ----- * *-- 简介 * 6.1 时间序列数据的处理 *-- 平稳时间序列模型 * 6.2 ARIMA 模型 * 6.3 VAR 模型 *-- 非平稳时间序列模型近些年得到重视,发展很快 * 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个缺失值 l 检查是否有断点 肉眼看不方便,用命令检查 use gnp96.dta, clear tsset date tsreport, report drop in 10/10 去掉断点成连续的,才能继续进行 list in 1/12 tsreport, report tsreport, report list /*列出存在断点的样本信息*/ l 填充缺漏值接着上一步,看看stata如何填充缺漏值。一般用前面的数据的平均值或预测等 Tsfill(以缺漏值的形式) tsreport, report list list in 1/12 * 追加样本有时候追加样本不是为了追加新的值,而是为了预测(见应用) use gnp96.dta, clear tsset date list in -10/-1 sum tsappend , add5 /*追加5个观察值*/ list in -10/-1 增加的样本值都是缺漏的 可以手动输入 sum * 应用样本外预测 reg gnp96 L.gnp96 predict gnp_hat list in -10/-1接上一步 这样增加的样本值的预测值就显示出来了(前提是追加了样本值) * 清除时间标识 tsset, clear若数据的形态有所改变 就清除 *--------------------- * 变量的生成与处理 *--------------------- 滞后Llag 前导Fforward 差分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.lngnp96 对数差分得到近似的增长率 先设定时间变量 tsset date gen lngnp lngnp96 gen growth D.lngnp(得到近似的增长率) 上面两步的简写形式(gen growthD.lngnp96)该简化方法在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 周 twCYww * tm 月 tmCYmn * tq 季度 tqCYqq * th 半年 thCYhh * 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 at “td tw tm tq th ty“ foreach f of local at{ gen t_f t at t_f f } list in 1/20 * 说明同样的数值,采用不同的显示方式,会有完全不同的含义 * 指定起始时点 cap drop month generate month m1990-1 _n - 1 at month tm list month in 1/20 cap drop year gen year y1952 _n - 1 at 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 and 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 */ * * 例如 * at Sample date in at * ----------------------------------- * td 07jul1948 * tdM_d,_CY July 7, 1948 * tdY/M/D 48/07/11 * tdM-D-CY 07-11-1948 * tqCY.q 1999.2 * tqCYq 19922 * twCY,_w 2010, 48 * --------------