时间序列模型分析的各种stata命令.docx
- 文档编号:1855107
- 上传时间:2022-10-24
- 格式:DOCX
- 页数:47
- 大小:754.26KB
时间序列模型分析的各种stata命令.docx
《时间序列模型分析的各种stata命令.docx》由会员分享,可在线阅读,更多相关《时间序列模型分析的各种stata命令.docx(47页珍藏版)》请在冰豆网上搜索。
时间序列模型分析的各种stata命令
时间序列模型
结构模型虽然有助于人们理解变量之间的影响关系,但模型的预测精度比较低。
在一些大规模的联立方程中,情况更是如此。
而早期的单变量时间序列模型有较少的参数却可以得到非常精确的预测,因此随着BoxandJenkins(1984)等奠基性的研究,时间序列方法得到迅速发展。
从单变量时间序列到多元时间序列模型,从平稳过程到非平稳过程,时间序列分析方法被广泛应用于经济、气象和过程控制等领域。
本章将介绍如下时间序列分析方法,ARIMA模型、ARCH族模型、VAR模型、VEC模型、单位根检验及协整检验等。
一、基本命令
1.1时间序列数据的处理
1)声明时间序列:
tsset命令
usegnp96.dta,clear
listin1/20
genLgnp=L.gnp
tssetdate
listin1/20
genLgnp=L.gnp
2)检查是否有断点:
tsreport,report
usegnp96.dta,clear
tssetdate
tsreport,report
dropin10/10
listin1/12
tsreport,report
tsreport,reportlist/*列出存在断点的样本信息*/
3)填充缺漏值:
tsfill
tsfill
tsreport,reportlist
listin1/12
4)追加样本:
tsappend
usegnp96.dta,clear
tssetdate
listin-10/-1
sum
tsappend,add(5)/*追加5个观察值*/
listin-10/-1
sum
5)应用:
样本外预测:
predict
reggnp96L.gnp96
predictgnp_hat
listin-10/-1
6)清除时间标识:
tsset,clear
tsset,clear
1.2变量的生成与处理
1)滞后项、超前项和差分项helptsvarlist
usegnp96.dta,clear
tssetdate
genLgnp=L.gnp96/*一阶滞后*/
genL2gnp=L2.gnp96
genFgnp=F.gnp96/*一阶超前*/
genF2gnp=F2.gnp96
genDgnp=D.gnp96/*一阶差分*/
genD2gnp=D2.gnp96
listin1/10
listin-10/-1
2)产生增长率变量:
对数差分
genlngnp=ln(gnp96)
gengrowth=D.lngnp
gengrowth2=(gnp96-L.gnp96)/L.gnp96
gendiff=growth-growth2/*表明对数差分和变量的增长率差别很小*/
listdategnp96lngnpgrowth*diffin1/10
1.3日期的处理
日期的格式helptsfmt
基本时点:
整数数值,如-3,-2,-1,0,1,2,3....
1960年1月1日,取值为0;
显示格式:
定义
含义
默认格式
%td
日
%tdDlCY
%tw
周
%twCY!
ww
%tm
月
%tmCY!
mn
%tq
季度
%tqCY!
%th
半年
%thCY!
hh
%ty
年
%tyCY
1)使用tsset命令指定显示格式
useB6_tsset.dta,clear
tssett,daily
list
useB6_tsset.dta,clear
tssett,weekly
list
2)指定起始时点
capdropmonth
generatemonth=m(1990-1)+_n-1
formatmonth%tm
listtmonthin1/20
capdropyear
genyear=y(1952)+_n-1
formatyear%ty
listtyearin1/20
3)自己设定不同的显示格式
日期的显示格式%d(%td)定义如下:
%[-][t]d<描述特定的显示格式>
具体项目释义:
“<描述特定的显示格式>”中可包含如下字母或字符
cymlndjhqw_.,:
-/'!
c
CYMLNDJW
定义如下:
candC世纪值(个位数不附加/附加0)
yandY不含世纪值的年份(个位数不附加/附加0)
m三个英文字母的月份简写(第一个字母大写)
M英文字母拼写的月份(第一个字母大写)
nandN数字月份(个位数不附加/附加0)
dandD一个月中的第几日(个位数不附加/附加0)
jandJ一年中的第几日(个位数不附加/附加0)
h一年中的第几半年(1or2)
q一年中的第几季度(1,2,3,or4)
wandW一年中的第几周(个位数不附加/附加0)
_displayablank(空格)
.displayaperiod(句号)
displayacomma(逗号)
:
displayacolon(冒号)
-displayadash(短线)
/displayaslash(斜线)
'displayaclosesinglequote(右引号)
!
cdisplaycharacterc(code!
!
todisplayanexclamationpoint)
样式1:
FormatSampledateinformat
-----------------------------------
%td07jul1948
%tdM_d,_CYJuly7,1948
%tdY/M/D48/07/11
%tdM-D-CY07-11-1948
%tqCY.q1999.2
%tqCY:
q1992:
2
%twCY,_w2010,48
-----------------------------------
样式2:
FormatSampledateinformat
----------------------------------
%d11jul1948
%dDlCY11jul1948
%dDlY11jul48
%dM_d,_CYJuly11,1948
%dd_M_CY11July1948
%dN/D/Y07/11/48
%dD/N/Y11/07/48
%dY/N/D48/07/11
%dN-D-CY07-11-1948
----------------------------------
clear
setobs100
gent=_n+d(13feb1978)
listtin1/5
formatt%dCY-N-D/*1978-02-14*/
listtin1/5
formatt%dcy_n_d/*1978214*/
listtin1/5
useB6_tsset,clear
list
tssett,format(%twCY-m)
list
4)一个实例:
生成连续的时间变量
usee1920.dta,clear
listyearmonthin1/30
sortyearmonth
gentime=_n
tssettime
listyearmonthtimein1/30
generatenewmonth=m(1920-1)+time-1
tssetnewmonth,monthly
listyearmonthtimenewmonthin1/30
1.4图解时间序列
1)例1:
clear
setseed13579113
sim_armaar2,ar(0.70.2)nobs(200)
sim_armama2,ma(0.70.2)
tsset_t
tslinear2ma2
*亦可采用twowayline命令绘制,但较为繁琐
twowaylinear2ma2_t
2)例2:
增加文字标注
sysusetsline2,clear
tssetday
tslinecalories,ttick(28nov200225dec2002,tpos(in))///
ttext(347028nov2002"thanks"///
347025dec2002"x-mas",orient(vert))
3)例3:
增加两条纵向的标示线
sysusetsline2,clear
tssetday
tslinecalories,tline(28nov200225dec2002)
*或采用twowayline命令
locald1=d(28nov2002)
locald2=d(25dec2002)
linecaloriesday,xline(`d1'`d2')
4)例4:
改变标签
tslinecalories,tlabel(,format(%tdmd))ttitle("Date(2002)")
tslinecalories,tlabel(,format(%td))
二、ARIMA模型和SARMIA模型
ARIMA模型的基本思想是:
将预测对象随时间推移而形成的数据序列视为一个随机序列,用一定的数学模型来近似描述这个序列。
这个模型一旦被识别后就可以从时间序列的过去值及现在值来预测未来值。
ARIMA(1,1)模型:
2.1ARIMA模型预测的基本程序:
1)根据时间序列的散点图、自相关函数和偏自相关函数图以ADF单位根检验其方差、趋势及其季节性变化规律,对序列的平稳性进行识别。
一般来讲,经济运行的时间序列都不是平稳序列。
2)对非平稳序列进行平稳化处理。
如果数据序列是非平稳的,并存在一定的增长或下降趋势,则需要对数据进行差分处理,如果数据存在异方差,则需对数据进行技术处理,直到处理后的数据的自相关函数值和偏相关函数值无显著地异于零。
3)根据时间序列模型的识别规则,建立相应的模型。
若平稳序列的偏相关函数是截尾的,而自相关函数是拖尾的,可断定序列适合AR模型;若平稳序列的偏相关函数是拖尾的,而自相关函数是截尾的,则可断定序列适合MA模型;若平稳序列的偏相关函数和自相关函数均是拖尾的,则序列适合ARMA模型。
4)进行参数估计,检验是否具有统计意义。
5)进行假设检验,诊断残差序列是否为白噪声。
6)利用已通过检验的模型进行预测分析。
2.2ARIMA模型中AR和MA阶数的确定方法:
clear
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 时间 序列 模型 分析 各种 stata 命令