与时间序列相关的S命令及其统计量的解析
- 格式:docx
- 大小:17.57 KB
- 文档页数:18
与时间序列相关的S T A T A命令及其统计量的解析Document serial number【NL89WT-NY98YT-NC8CB-NNUUT-NUT108】与时间序列相关的S T A T A命令及其统计量的解析残差U 序列相关:①DW 统计量——针对一阶自相关的(高阶无效)STATA 命令:1.先回归2.直接输入dwstat统计量如何看:查表②Q 统计量——针对高阶自相关correlogram-Q-statisticsSTATA 命令:1.先回归reg2.取出残差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.先回归reg2.直接输入命令estate bgodfrey,lags(n) 或者窗口操作在 Statistics——Postestimation(倒数第二个)——Reports andStatistics(倒数第二个) ——在里面选择 Breush-Godfrey LM(当然你在里面还可以找到方差膨胀因子还有DW 统计量等常规统计量)LM 统计量如何看:P 值越小(越接近 0)表示越显着(显着拒绝原假设),存在序列相关具体是几阶序列相关,你可以把滞后期写为几,当然默认是 1,(通常的方法是先看图,上面说的自相关和偏相关图以及Q 值,然后再利用LM 肯定)。
时间序列模型结构模型虽然有助于人们理解变量之间的影响关系,但模型的预测精度比较低。
在一些大规模的联立方程中,情况更是如此。
而早期的单变量时间序列模型有较少的参数却可以得到非常精确的预测,因此随着Box and Jenkins(1984)等奠基性的研究,时间序列方法得到迅速发展。
从单变量时间序列到多元时间序列模型,从平稳过程到非平稳过程,时间序列分析方法被广泛应用于经济、气象和过程控制等领域。
本章将介绍如下时间序列分析方法,ARIMA模型、ARCH族模型、VAR模型、VEC模型、单位根检验及协整检验等。
一、基本命令1.1时间序列数据的处理1)声明时间序列:tsset 命令use gnp96.dta, clearlist in 1/20gen Lgnp = L.gnptsset datelist in 1/20gen Lgnp = L.gnp2)检查是否有断点:tsreport, reportuse gnp96.dta, cleartsset datetsreport, reportdrop in 10/10list in 1/12tsreport, reporttsreport, report list /*列出存在断点的样本信息*/3)填充缺漏值:tsfilltsfilltsreport, report listlist in 1/124)追加样本:tsappenduse gnp96.dta, cleartsset datelist in -10/-1sumtsappend , add(5) /*追加5个观察值*/list in -10/-1sum5)应用:样本外预测: predictreg gnp96 L.gnp96predict gnp_hatlist in -10/-16)清除时间标识: tsset, cleartsset, clear1.2变量的生成与处理1)滞后项、超前项和差分项 help tsvarlistuse gnp96.dta, cleartsset dategen Lgnp = L.gnp96 /*一阶滞后*/gen L2gnp = L2.gnp96gen Fgnp = F.gnp96 /*一阶超前*/gen F2gnp = F2.gnp96gen Dgnp = D.gnp96 /*一阶差分*/gen D2gnp = D2.gnp96list in 1/10list in -10/-12)产生增长率变量: 对数差分gen lngnp = ln(gnp96)gen growth = D.lngnpgen growth2 = (gnp96-L.gnp96)/L.gnp96gen diff = growth - growth2 /*表明对数差分和变量的增长率差别很小*/ list date gnp96 lngnp growth* diff in 1/101.3日期的处理日期的格式 help tsfmt基本时点:整数数值,如 -3, -2, -1, 0, 1, 2, 3 ....1960年1月1日,取值为 0;1)使用 tsset 命令指定显示格式use B6_tsset.dta, cleartsset t, dailylistuse B6_tsset.dta, cleartsset t, weeklylist2)指定起始时点cap drop monthgenerate month = m(1990-1) + _n - 1format month %tmlist t month in 1/20cap drop yeargen year = y(1952) + _n - 1format year %tylist t year in 1/203)自己设定不同的显示格式日期的显示格式 %d (%td) 定义如下:%[-][t]d<描述特定的显示格式>具体项目释义:“<描述特定的显示格式>”中可包含如下字母或字符c y m l nd j h q w _ . , : - / ' !cC Y M L ND 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)样式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----------------------------------clearset obs 100gen t = _n + d(13feb1978)list t in 1/5format t %dCY-N-D /*1978-02-14*/list t in 1/5format t %dcy_n_d /*1978 2 14*/list t in 1/5use B6_tsset, clearlisttsset t, format(%twCY-m)list4)一个实例:生成连续的时间变量use e1920.dta, clearlist year month in 1/30sort year monthgen time = _ntsset timelist year month time in 1/30generate newmonth = m(1920-1) + time - 1tsset newmonth, monthlylist year month time newmonth in 1/301.4图解时间序列1)例1:clearset seed 13579113sim_arma ar2, ar(0.7 0.2) nobs(200)sim_arma ma2, ma(0.7 0.2)tsset _ttsline ar2 ma2* 亦可采用 twoway line 命令绘制,但较为繁琐twoway line ar2 ma2 _t2)例2:增加文字标注sysuse tsline2, cleartsset daytsline calories, ttick(28nov2002 25dec2002, tpos(in)) /// ttext(3470 28nov2002 "thanks" ///3470 25dec2002 "x-mas", orient(vert)) 3)例3:增加两条纵向的标示线sysuse tsline2, cleartsset daytsline 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 模型的基本思想是:将预测对象随时间推移而形成的数据序列视为一个随机序列,用一定的数学模型来近似描述这个序列。
应用统计学时间数列分析概述时间数列分析是统计学中的一种重要方法,它用来研究时间序列数据的特征和规律。
时间数列是指按照时间顺序排列的一组数据,比如每日的股票价格、每年的降雨量等。
通过对时间数列进行统计分析,可以揭示数据背后的趋势、周期和随机性,有助于进行预测和决策。
时间数列分析的主要目的是找到数列中的模式和规律。
常用的时间数列分析方法包括描述性统计、周期性分析、趋势分析和随机性分析。
描述性统计是最基本的统计分析方法,它用来描述和总结数据的特征。
常用的描述性统计指标包括平均值、标准差、最大值、最小值和中位数等。
这些指标可以帮助研究人员了解数据的中心趋势、离散程度和分布形态。
周期性分析是用来检测数据中是否存在重复的模式或周期。
周期性分析常常使用谱分析方法,通过将时间数列转换为频域,提取出数据中的主要周期成分。
这些成分可以帮助预测未来的周期性变化,并优化决策。
趋势分析是用来观察数据的长期变化趋势。
常用的趋势分析方法有移动平均法、指数平滑法和回归分析法等。
这些方法可以拟合出数据的趋势线,帮助判断未来的发展方向和速度。
随机性分析是用来研究数据中的随机波动和不规则性。
常用的随机性分析方法有自相关分析、白噪声检验和单位根检验等。
这些方法可以判断数据中是否存在随机波动,并提供相关的统计验证。
通过应用时间数列分析方法,可以获得关于数据特征、周期性、趋势和随机性的深入洞察。
这些洞察可以用于预测未来的发展趋势、制定决策策略和优化资源配置。
时间数列分析在金融、经济、气象、环境等领域具有广泛的应用价值。
时间数列分析作为统计学的重要方法,具有广泛的应用领域和深远的研究价值。
在金融领域,时间数列分析可以用来预测股票价格、汇率、利率等金融指标,帮助投资者制定投资策略。
在经济学中,时间数列分析可以研究经济增长、通胀、失业率等宏观经济指标的变化规律,为政府制定经济政策提供参考。
在气象和环境领域,时间数列分析可以揭示气候变化、环境污染等问题的趋势和周期,为环境保护和资源利用提供支持。
时间序列分析的基础知识时间序列分析是一种重要的统计分析方法,用于研究时间序列数据的规律性和趋势变化。
时间序列数据是按照时间顺序排列的一系列数据观测值,例如股票价格、气温、销售额等。
通过时间序列分析,可以揭示数据中的周期性、趋势性和随机性,从而进行预测和决策。
本文将介绍时间序列分析的基础知识,包括时间序列的特点、常见模型和分析方法。
一、时间序列的特点时间序列数据具有以下几个特点:1. 时间依赖性:时间序列数据中的每个观测值都与前面或后面的观测值相关联,存在一定的时间依赖性。
2. 趋势性:时间序列数据通常会呈现出长期的趋势变化,反映了数据的整体发展方向。
3. 季节性:某些时间序列数据会呈现出周期性的季节变化,例如销售额在节假日前后会有明显波动。
4. 随机性:除了趋势性和季节性外,时间序列数据还包含一定程度的随机波动,反映了数据的不确定性。
二、常见的时间序列模型在时间序列分析中,常用的模型包括:1. 自回归模型(AR):自回归模型假设当前观测值与前几个观测值相关,用于描述数据的自相关性。
2. 移动平均模型(MA):移动平均模型假设当前观测值与前几个观测值的误差相关,用于描述数据的随机性。
3. 自回归移动平均模型(ARMA):ARMA模型将AR模型和MA模型结合起来,综合考虑数据的自相关性和随机性。
4. 差分自回归移动平均模型(ARIMA):ARIMA模型在ARMA模型的基础上引入差分操作,用于处理非平稳时间序列数据。
5. 季节性自回归移动平均模型(SARIMA):SARIMA模型在ARIMA模型的基础上考虑季节性因素,适用于具有季节性变化的数据。
三、时间序列分析的方法进行时间序列分析时,通常包括以下几个步骤:1. 数据预处理:对时间序列数据进行平稳性检验、季节性调整和缺失值处理,确保数据的可靠性和准确性。
2. 模型识别:根据时间序列数据的特点选择合适的模型,如AR、MA、ARMA、ARIMA或SARIMA模型。
与时间序列相关的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 肯定)。
时间序列模型结构模型虽然有助于人们理解变量之间的影响关系,但模型的预测精度比较低。
在一些大规模的联立方程中,情况更是如此。
而早期的单变量时间序列模型有较少的参数却可以得到非常精确的预测,因此随着Box and Jenkins(1984)等奠基性的研究,时间序列方法得到迅速发展。
从单变量时间序列到多元时间序列模型,从平稳过程到非平稳过程,时间序列分析方法被广泛应用于经济、气象和过程控制等领域。
本章将介绍如下时间序列分析方法,ARIMA模型、ARCH族模型、VAR模型、VEC模型、单位根检验及协整检验等。
一、基本命令1.1时间序列数据的处理1)声明时间序列:tsset 命令use gnp96.dta, clearlist in 1/20gen Lgnp = L.gnptsset datelist in 1/20gen Lgnp = L.gnp2)检查是否有断点:tsreport, reportuse gnp96.dta, cleartsset datetsreport, reportdrop in 10/10list in 1/12tsreport, reporttsreport, report list /*列出存在断点的样本信息*/3)填充缺漏值:tsfilltsfilltsreport, report listlist in 1/124)追加样本:tsappenduse gnp96.dta, cleartsset datelist in -10/-1sumtsappend , add(5) /*追加5个观察值*/list in -10/-1sum5)应用:样本外预测: predictreg gnp96 L.gnp96predict gnp_hatlist in -10/-16)清除时间标识: tsset, cleartsset, clear1.2变量的生成与处理1)滞后项、超前项和差分项 help tsvarlistuse gnp96.dta, cleartsset dategen Lgnp = L.gnp96 /*一阶滞后*/gen L2gnp = L2.gnp96gen Fgnp = F.gnp96 /*一阶超前*/gen F2gnp = F2.gnp96gen Dgnp = D.gnp96 /*一阶差分*/gen D2gnp = D2.gnp96list in 1/10list in -10/-12)产生增长率变量: 对数差分gen lngnp = ln(gnp96)gen growth = D.lngnpgen growth2 = (gnp96-L.gnp96)/L.gnp96gen diff = growth - growth2 /*表明对数差分和变量的增长率差别很小*/ list date gnp96 lngnp growth* diff in 1/101.3日期的处理日期的格式 help tsfmt基本时点:整数数值,如 -3, -2, -1, 0, 1, 2, 3 ....1960年1月1日,取值为 0;1)使用 tsset 命令指定显示格式use B6_tsset.dta, cleartsset t, dailylistuse B6_tsset.dta, cleartsset t, weeklylist2)指定起始时点cap drop monthgenerate month = m(1990-1) + _n - 1format month %tmlist t month in 1/20cap drop yeargen year = y(1952) + _n - 1format year %tylist t year in 1/203)自己设定不同的显示格式日期的显示格式 %d (%td) 定义如下:%[-][t]d<描述特定的显示格式>具体项目释义:“<描述特定的显示格式>”中可包含如下字母或字符c y m l nd j h q w _ . , : - / ' !cC Y M L ND 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)样式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----------------------------------clearset obs 100gen t = _n + d(13feb1978)list t in 1/5format t %dCY-N-D /*1978-02-14*/list t in 1/5format t %dcy_n_d /*1978 2 14*/list t in 1/5use B6_tsset, clearlisttsset t, format(%twCY-m)list4)一个实例:生成连续的时间变量use e1920.dta, clearlist year month in 1/30sort year monthgen time = _ntsset timelist year month time in 1/30generate newmonth = m(1920-1) + time - 1tsset newmonth, monthlylist year month time newmonth in 1/301.4图解时间序列1)例1:clearset seed 13579113sim_arma ar2, ar(0.7 0.2) nobs(200)sim_arma ma2, ma(0.7 0.2)tsset _ttsline ar2 ma2* 亦可采用 twoway line 命令绘制,但较为繁琐twoway line ar2 ma2 _t2)例2:增加文字标注sysuse tsline2, cleartsset daytsline calories, ttick(28nov2002 25dec2002, tpos(in)) /// ttext(3470 28nov2002 "thanks" ///3470 25dec2002 "x-mas", orient(vert)) 3)例3:增加两条纵向的标示线sysuse tsline2, cleartsset daytsline 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 模型的基本思想是:将预测对象随时间推移而形成的数据序列视为一个随机序列,用一定的数学模型来近似描述这个序列。
时间序列模型结构模型虽然有助于人们理解变量之间的影响关系,但模型的预测精度比较低。
在一些大规模的联立方程中,情况更是如此。
而早期的单变量时间序列模型有较少的参数却可以得到非常精确的预测,因此随着Box and Jenkins(1984)等奠基性的研究,时间序列方法得到迅速发展。
从单变量时间序列到多元时间序列模型,从平稳过程到非平稳过程,时间序列分析方法被广泛应用于经济、气象和过程控制等领域。
本章将介绍如下时间序列分析方法,ARIMA模型、ARCH族模型、VAR模型、VEC模型、单位根检验及协整检验等。
一、基本命令1.1时间序列数据的处理1)声明时间序列:tsset 命令use gnp96.dta, clearlist in 1/20gen Lgnp = L.gnptsset datelist in 1/20gen Lgnp = L.gnp2)检查是否有断点:tsreport, reportuse gnp96.dta, cleartsset datetsreport, reportdrop in 10/10list in 1/12tsreport, reporttsreport, report list /*列出存在断点的样本信息*/3)填充缺漏值:tsfilltsfilltsreport, report listlist in 1/124)追加样本:tsappenduse gnp96.dta, cleartsset datelist in -10/-1sumtsappend , add(5) /*追加5个观察值*/list in -10/-1sum5)应用:样本外预测: predictreg gnp96 L.gnp96predict gnp_hatlist in -10/-16)清除时间标识: tsset, cleartsset, clear1.2变量的生成与处理1)滞后项、超前项和差分项 help tsvarlistuse gnp96.dta, cleartsset dategen Lgnp = L.gnp96 /*一阶滞后*/gen L2gnp = L2.gnp96gen Fgnp = F.gnp96 /*一阶超前*/gen F2gnp = F2.gnp96gen Dgnp = D.gnp96 /*一阶差分*/gen D2gnp = D2.gnp96list in 1/10list in -10/-12)产生增长率变量: 对数差分gen lngnp = ln(gnp96)gen growth = D.lngnpgen growth2 = (gnp96-L.gnp96)/L.gnp96gen diff = growth - growth2 /*表明对数差分和变量的增长率差别很小*/ list date gnp96 lngnp growth* diff in 1/101.3日期的处理日期的格式 help tsfmt基本时点:整数数值,如 -3, -2, -1, 0, 1, 2, 3 ....1960年1月1日,取值为 0;1)使用 tsset 命令指定显示格式use B6_tsset.dta, cleartsset t, dailylistuse B6_tsset.dta, cleartsset t, weeklylist2)指定起始时点cap drop monthgenerate month = m(1990-1) + _n - 1format month %tmlist t month in 1/20cap drop yeargen year = y(1952) + _n - 1format year %tylist t year in 1/203)自己设定不同的显示格式日期的显示格式 %d (%td) 定义如下:%[-][t]d<描述特定的显示格式>具体项目释义:“<描述特定的显示格式>”中可包含如下字母或字符c y m l nd j h q w _ . , : - / ' !cC Y M L ND 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)样式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----------------------------------clearset obs 100gen t = _n + d(13feb1978)list t in 1/5format t %dCY-N-D /*1978-02-14*/list t in 1/5format t %dcy_n_d /*1978 2 14*/list t in 1/5use B6_tsset, clearlisttsset t, format(%twCY-m)list4)一个实例:生成连续的时间变量use e1920.dta, clearlist year month in 1/30sort year monthgen time = _ntsset timelist year month time in 1/30generate newmonth = m(1920-1) + time - 1tsset newmonth, monthlylist year month time newmonth in 1/301.4图解时间序列1)例1:clearset seed 13579113sim_arma ar2, ar(0.7 0.2) nobs(200)sim_arma ma2, ma(0.7 0.2)tsset _ttsline ar2 ma2* 亦可采用 twoway line 命令绘制,但较为繁琐twoway line ar2 ma2 _t2)例2:增加文字标注sysuse tsline2, cleartsset daytsline calories, ttick(28nov2002 25dec2002, tpos(in)) /// ttext(3470 28nov2002 "thanks" ///3470 25dec2002 "x-mas", orient(vert)) 3)例3:增加两条纵向的标示线sysuse tsline2, cleartsset daytsline 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 模型的基本思想是:将预测对象随时间推移而形成的数据序列视为一个随机序列,用一定的数学模型来近似描述这个序列。
时间序列分析基础知识时间序列分析是一种用于研究时间序列数据的统计方法。
随着人们对时间相关数据的需求不断增长,时间序列分析在预测、模型建立和决策支持等领域发挥了重要作用。
本文将介绍时间序列分析的基础知识,包括时间序列数据的特点、常见的时间序列模型以及常用的时间序列分析方法。
时间序列数据的特点时间序列数据是按照时间顺序排列的观测值的集合。
与横截面数据不同,时间序列数据具有以下特点:趋势性:时间序列数据常常具有长期趋势,即随着时间推移,观测值呈现出明显的上升或下降趋势。
季节性:某些时间序列数据可能具有季节性波动,例如销售额在每年同一季度可能会有重复出现的周期性增长或下降。
周期性:某些时间序列数据可能具有周期性波动,即在较长时间范围内出现重复的上升或下降阶段。
自相关性:时间序列数据中的观测值常常与前一时期或多个时期的观测值相关联。
异方差性:时间序列数据的方差可能会随着时间变化而变化,即不满足常数方差的假设。
常见的时间序列模型为了对时间序列数据进行建模和预测,我们可以使用多种模型。
以下是几种常见的时间序列模型:平稳性模型:平稳性是指观测值的均值和方差在时间上保持不变。
平稳性模型包括ARMA模型(自回归滑动平均)和ARIMA模型(自回归积分滑动平均)等。
趋势模型:趋势模型用于捕捉长期上升或下降趋势。
常见的趋势模型包括线性趋势模型、指数趋势模型和多项式趋势模型等。
季节性模型:季节性模型用于捕捉季节性波动。
常见的季节性模型包括季节ARIMA模型、周期曲线拟合和移动平均法等。
自回归模型:自回归模型基于过去时期观测值与当前观测值之间的关系来进行预测。
常见的自回归模型包括AR(p)模型和ARMA(p,q)模型等。
时间序列分析方法为了对时间序列数据进行分析和预测,我们可以使用多种方法。
以下是几种常用的时间序列分析方法:线性回归方法:线性回归方法被广泛应用于时间序列预测中。
通过拟合一个线性方程来描述观测值与时间之间的关系。
与时间序列相关的STATA 命令及其统计量的解析残差U 序列相关:①DW 统计量——针对一阶自相关的(高阶无效)STATA 命令:1.先回归2.直接输入dwstat统计量如何看:查表②Q 统计量——针对高阶自相关correlogram-Q-statisticsSTATA 命令:1.先回归reg2.取出残差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.先回归reg2.直接输入命令estate bgodfrey,lags(n) 或者窗口操作在Statistics——Postestimation(倒数第二个)——Reports and Statistics(倒数第二个) ——在里面选择Breush-Godfrey LM(当然你在里面还可以找到方差膨胀因子还有DW 统计量等常规统计量)LM 统计量如何看:P 值越小(越接近0)表示越显著(显著拒绝原假设),存在序列相关具体是几阶序列相关,你可以把滞后期写为几,当然默认是1,(通常的方法是先看图,上面说的自相关和偏相关图以及Q 值,然后再利用LM 肯定)。
与时间序列相关的S T A T A命令及其统计量的解析残差U 序列相关:①DW 统计量——针对一阶自相关的(高阶无效)STATA 命令:1.先回归2.直接输入dwstat统计量如何看:查表②Q 统计量——针对高阶自相关correlogram-Q-statisticsSTATA 命令:1.先回归reg2.取出残差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.先回归reg2.直接输入命令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)模型补救。
AR 模型的识别与最高阶数的确定:可通过自相关系数来获得一些有关 AR(p) 模型的信息,如低阶 AR(p) 模型系数符号的信息。
但是,对于自回归过程AR(p),自相关系数并不能帮助我们确定 AR(p) 模型的阶数 p。
所以,可以考虑使用偏自相关系数?k,k,以便更加全面的描述自相关过程AR(p)的统计特征。
且对于一个AR(p) 模型,?k,k 的最高阶数为p,也即AR(p) 模型的偏自相关系数是 p 阶截尾的。
因此,可以通过识别AR(p)模型的偏自相关系数的个数,来确定 AR(p) 模型的阶数 p,进而设定正确的模型形式,并通过具体的估计方法估计出AR(p) 模型的参数。
如果AR(p)还解决不了则进一步使用:MA(q)模型,以及ARMA(p,q)模型。
1、MA(q)MA(q) 的偏自相关系数的具体形式随着 q 的增加变得越来越复杂,很难给出一个关于q 的一般表达式,但是,一个MA(q) 模型对应于一个AR(∞) 模型。
因此,MA(q) 模型的偏自相关系数一定呈现出某种衰减的形式是拖尾的。
故可以通过识别一个序列的偏自相关系数的拖尾形式,大致确定它应该服从一个MA(q) 过程。
2、ARMA(p,q)就是既含有AR 项又含有MA 项。
我们引入了自相关系数和偏自相关系数这两个统计量来识别 ARMA(p,q) 模型的系数特点和模型的阶数。
但是,在实际操作中,自相关系数和偏自相关系数是通过要识别序列的样本数据估计出来的,并且随着抽样的不同而不同,其估计值只能同理论上的大致趋势保持一致,并不能精确的相同。
因此,在实际的模型识别中,自相关系数和偏自相关系数只能作为模型识别过程中的一个参考,并不能通过它们准确的识别模型的具体形式。
具体的模型形式,还要通过自相关和偏自相关系数给出的信息,经过反复的试验及检验,最终挑选出各项统计指标均符合要求的模型形式。
注:无论采取什么样的方式,只要能够把残差中的序列相关消除掉,又不会引入新的问题,这样的模型就是最优模型。
与平稳性检验及其统计量解析(P212 张晓峒)白噪声检验:1. Q 检验 wntestq var,lag(n)2.Bartlett 检验 wntestb var ,table(表示结果以列显示,而不做图。
不加 table 就以图形的方式现实)或者在Statistics——Time-series——TEST——Bartlett 检验(第四个)画密度图:1、概率密度图命令:pergram var ,generate(新变量名字) 将概率密度的图上所生成的值生成并储存在新变量里,这个不是必须的,只是为了日后方便。
窗口:Statistics——Time-series——Graphs——Periodogram(第五个)2.累积分布函数图命令:cumsp var ,generate(新变量名字) 解释同上,并且这个生成新变量的功能似乎只能通过命令完成。
窗口:Statistics——Time-series——Graphs——Cumulative Spectral distribution 单位根检验(219)1、Dickey-Fuller 检验命令:dfuller var (,lags(#)/trend/noconstant/regress/)对变量做ADF 检验可以加滞后期或趋势项或不含常数项等等这些取决于你的模型。
窗口:Statistics——Time-series——TEST——ADF 单位根检验(第一个)在里面你也可以选择滞后期数,常数项等等。
如何看结果:原假设为:至少存在一个单位根;备选假设为:序列不存在单位根。
如果统计量小于后面的显着性水平给出的值且P 值很大——有单位;如果统计量大于后面的显着性水平给出的值且 P 值很小——无单位根ADF 检验需要注意的地方:(1)必须为回归定义合理的滞后阶数,通常采用AIC 准则来确定给定时间序列模型的滞后阶数。
在实际应用中,还需要兼顾其他的因素,如系统的稳定性、模型的拟合优度等。
(2)可以选择常数和线性时间趋势,选择哪种形式很重要,因为检验显着性水平的 t 统计量在原假设下的渐进分布依赖于关于这些项的定义。
① 如果在检验回归中含有常数,意味着所检验的序列的均值不为 0,一个简单易行的办法是画出检验序列的曲线图,通过图形观察原序列是否在一个偏离 0 的位臵随机变动,进而决定是否在检验时添加常数项;② 如果在检验回归中含线性趋势项,意味着原序列具有时间趋势。
同样,决定是否在检验中添加时间趋势项,也可以通过画出原序列的曲线图来观察。
如果图形中大致显示了被检验序列的波动趋势随时间变化而变化,那么便可以添加时间趋势项。
2、Phillips-Perron 检验命令:pperron var , (,lags(#)/trend/noconstant/regress/)对变量做 PP 检验可以加滞后期或趋势项或不含常数项等等这些取决于你的模型。
窗口操作:Statistics——Time-series——TEST——PP 单位根检验(第三个)如何看结果:同ADF 一样原假设为:至少存在一个单位根;备选假设为:序列不存在单位根。
P 值越小(统计量大于各显着性水平值)——不存在单位根P 值越大(统计量小于各显着性水平值)——存在单位根向量自相关回归VAR 模型向量自回归(VAR)模型是AR 模型的多元扩展,用以反映在一个系统中的多个变量之间的动态影像,格兰杰因果检验、脉冲响应、方差分解都是 VAR 模型中重要的分析工具。
与VAR 模型相关的STATA 命令与解析1、VAR 模型的估计STATA 命令:var 解释变量(,无常数项noconstant/滞后期lags(n)/ 外生变量exog(varlist)/constraints(numlist)线性约束的个数{注意:使用线性约束要提前定义,详情见建模中的各种小问题}/LIKEPOHL 滞后阶数选择的统计量lutstats)窗口操作:Statistics——Multivariate time series——VAR(第二项)如何看结果:保存估计结果的命令:est store 名称2. VAR 模型平稳性STATA 命令:varstable(,graph 表示画出图形)如何看结果:特征值都在圆内,即都小于1,表示VAR 模型稳定窗口操作:Statistics ——Multivariate time series ——VAR diagnostics and tests——check stability condition of VAR estimates3. VAR 阶数的选择——滞后阶数的确定在VAR 模型中,正确的选择模型的滞后阶数,对于模型的估计和协整检验都产生一定的影响,小样本情况更是如此。
(1)STATA 命令:用于VAR 模型估计之前varsoc 解释变量(,没有常数项noconstant/最高滞后期 maxlag(#)/ 外生变量exog(varlist)/ 线性约束条件 constraints(numlist))(2)命令:用于模型估计之后解释变量(,estimates(estname))其中,estname 表示已经估计的VAR 模型的名字。
(1)(2)如何看结果:找最显着的阶数作为其滞后项(一般会标有※)(3)命令:用于模型估计之后(Wald 滞后排除约束检验) Varwle窗口操作:Statistics——Multivariate time series——VAR diagnostics and tests——第一第二项如何看结果:看不同阶数上的联合显着性,看P 值,越小越显着,表示存在该阶滞后项。
4.残差的正态性与自相关检验STATA 命令:1. 先进行var 回归2. varnorm如何看结果:原假设是服从正态分布P 值越小越显着拒绝原假设——不服从正态分布P 值越大越不显着拒绝,原假设成立——服从正态分布自相关:窗口操作:Statistics——Multivariate time series——VAR diagnostics and tests——LM Test正态分布:窗口操作:Statistics——Multivariate time series ——VAR diagnostics and tests——Test for normally(倒数第三项)5. Granger 因果关系检验格兰杰因果关系不同于我们平常意义上的因果关系,它是指一个变量对于另外一个变量具有延期影响。