精华内容
下载资源
问答
  • ——平稳性的意义如何检验时间序列数据的平稳性?——单位根检验数据不平稳怎么办?——协整检验单整、协整(cointegration)协整检验总结——时间序列数据的一般处理流程 为什么要把时间序列变成平稳的?——平稳性...

    为什么要把时间序列变成平稳的?——平稳性的意义

    凭以推测经济系统(或其相关变量)在未来可能出现的状况,亦即预测经济系统(或其相关变量)的走势,是我们建立经济计量模型的主要目的。而基于随机变量的历史和现状来推测其未来,则是我们实施经济计量和预测的基本思路。这就需要假设随机变量的历史和现状具有代表性或可延续性。换句话说,随机变量的基本特性必须能在包括未来阶段的一个长时期里维持不变。否则,基于历史和现状来预测未来的思路便是错误的。

    样本时间序列展现了随机变量的历史和现状,因此所谓随机变量基本性态的维持不变也就是要求样本数据时间序列的本质特征仍能延续到未来。我们用样本时间序列的均值、方差、协(自)方差来刻画该样本时间序列的本质特征。于是,我们称这些统计量的取值在未来仍能保持不变的样本时间序列具有平稳性。可见,一个平稳的时间序列指的是:遥想未来所能获得的样本时间序列,我们能断定其均值、方差、协方差必定与眼下已获得的样本时间序列等同。也就是说,均值、方差、协方差必定为常数,不然就是不平稳的.

    如何检验时间序列数据的平稳性?——单位根检验

    如果数据平稳,则不存在单位根;反之,数据不平稳,则存在单位根。
    注意:单位根检验的原假设是存在单位根,也就是说,单位根检验的原假设成立,则数据不平稳。
    单位根检验包括:ADF检验,PP检验,NP检验等。

    注:在计量经济学中,检验数据的平稳性一般不使用原始数据,而是对原始数据取对数。取对数之后的数据可以理解为原始数据的变化率。例如,原始数据是中国年度GDP数据,log之后的数据表示中国GDP的年增长值。之所以取对数,是因为大多数原始数据都不平稳,例如GDP是一个上涨趋势的函数,肯定不平稳。所以,在检验平稳性之前,就取对数,再对原始数据的对数进行平稳性检验。

    • eviews中ADF检验

    在eviews中,ADF检验的方法:1 view—unit roottest,出现对话框,默认的选项为变量的原阶序列检验平稳性,确认后,若ADF检验的P值小于0.5,拒绝原假设,说明序列是平稳的,若P值大于0.5,接受原假设,说明序列是非平稳的;2 重复刚才的步骤,view—unit root test,出现对话框,选择1stdifference,即对变量的一阶差分序列做平稳性检验,和第一步中的检验标准相同,若P值小于0.5,说明是一阶平稳,若P值大于0.5,则继续进行二阶差分序列的平稳性检验。

    虽然定义经过d阶差分后是平稳的,但是软件只提供到2阶差分,若是原始数据没有经过差分就平稳,则说明那是零阶单整,记为I(0)的过程。

    • stata中ADF检验

    在stata中,单位根检验命令为:dfuller lnagdp

    数据不平稳怎么办?——协整检验

    单整、协整(cointegration)

    1. 单整

    如果一个时间序列经过一次差分变成平稳的,则称原序列是1阶单整的,记为I(1)。 一般地,如果时间序列经过d次差分后变成平稳序列,而经过d-1次差分仍不平稳,则称原序列是d阶单整序列,记为I(d)。

    1. 协整

    协整是指若两个或多个非平稳的变量序列,其某个线性组合后的序列呈平稳性。

    数学上的解释是这样的:

    特别当 X_{t} 和 Y_{t} 都是一阶单整时,一般而言,X_{t} 和 Y_{t} 的线性组合 Y_{t} - \beta X_{t} 仍然是一阶单整的,但是对于某些非零向量 \beta ,会使得 Y_{t} - \beta X_{t}\sim I(0),此时非零向量 \beta 称作协整向量,其中每一项  \beta_{t} 为 t 时刻的协整系数。通俗点说,如果两组序列都是非平稳的,但是经过一阶差分后是平稳的,且这两组序列经过某种线性组合也是平稳的,则它们之间就存在协整关系。

    协整的直观解释:
    协整是说两个或多个变量之间具有长期的稳定关系。但变量间协整的必要条件是它们之间是同阶单整,也就是说在进行协整检验之前必须进行单位根检验。

    协整说的是变量之间存在长期的稳定关系,这只是从数量上得到的结论,但不能确定谁是因,谁是果。而因果关系检验解决的就是这个问题。

    协整检验

    • 协整检验的意义?——判断变量间是否存在长期的稳定关系
      协整检验是用来分析变量之间的长期均衡关系,在协整分析两变量的过程中,如果自变量和因变量是协整的,我们就可以确信这两变量不会产生伪回归结果并且这两个变量存在长期稳定的关系

    • 协整检验的条件?——变量同阶单整
      变量间协整的必要条件是它们之间是同阶单整,也就是说在进行协整检验之前必须进行单位根检验。

    协整的要求或前提是同阶单整,但也有如下的宽限说法:如果变量个数多于两个,即解释变量个数多于一个,被解释变量的单整阶数不能高于任何一个解释变量的单整阶数。另当解释变量的单整阶数高于被解释变量的单整阶数时,则必须至少有两个解释变量的单整阶数高于被解释变量的单整阶数。如果只含有两个解释变量,则两个变量的单整阶数应该相同。

    就是说,单整阶数不同的两个或以上的非平稳序列如果一起进行协整检验,必然有某些低阶单整的,即波动相对高阶序列的波动甚微弱(有可能波动幅度也不同)的序列,对协整结果的影响不大,因此包不包含的重要性不大。而相对处于最高阶序列,由于其波动较大,对回归残差的平稳性带来极大的影响,所以如果协整是包含有某些高阶单整序列的话(但如果所有变量都是阶数相同的高阶,此时也被称作同阶单整,这样的话另当别论),一定不能将其纳入协整检验。

    注:同之前平稳性检验中相同,在协整检验中,一般不直接用原始数据,而是先对原始数据取对数。所以,虽然满足同阶单整的条件就可以进行协整检验,但在计量经济学的实证中,一般不做两次差分,最多一次差分。这是因为,两次差分没有实际的经济学意义(一次差分表示数据的变化值,在取对数的前提下,一次差分的结果表示变化率的变化值)。所以,在计量经济学实证中,通常是对以下两种情况进行协整检验:

    1. 被解释变量一阶单整,解释变量都一阶单整
    2. 被解释变量一阶单整,解释变量一部分一阶单整,一部分平稳

    总结——时间序列数据的一般处理流程

    先做单位根检验,看变量序列是否平稳序列,若平稳,可构造回归模型等经典计量经济学模型;若非平稳,进行差分,当进行到第d次差分时序列平稳,则服从i阶单整。若所有检验序列均服从同阶单整,可构造VAR模型,做协整检验,判断模型内部变量间是否存在协整关系,即是否存在长期均衡关系。如果有,则可以构造VEC模型或者进行Granger因果检验,检验变量之间“谁引起谁变化”,即因果关系。

    展开全文
  • 时间序列的平稳性、随机性检验 在拿到时间序列数据后,首先要对数据随机性和平稳性进行检测, 这两个检测是时间序列预测重要部分。根据不同检测结果需要采取不同分析方法。 为什么时间序列要求平稳性呢?平稳...

    时间序列系列文章:

    时间序列(一):时间序列数据与时间序列预测模型
    时间序列(二):时间序列平稳性检测
    时间序列(三):ARIMA模型实战

    在上一篇文章时间序列(一):时间序列数据与时间序列预测模型中我们介绍了时间序列及一些时间序列预测模型。我们可以看到在进行预测时有一些模型表现较好,而另一些模型的预测结果却不尽人意。这是因为不同的时间序列模型对原始数据的要求是不同的,例如之前提到的ARIMA模型,要求时间序列数据平稳,否则得出的预测结果就会相差较大。本篇文章我们介绍时间序列的平稳性、随机性检验及相关时间序列数据处理方法。

    时间序列的平稳性、随机性检验

    在拿到时间序列数据后,首先要对数据的随机性和平稳性进行检测, 这两个检测是时间序列预测的重要部分。根据不同检测结果需要采取不同的分析方法。

    为什么时间序列要求平稳性呢?平稳性就是要求由样本拟合出的曲线在未来一段时间内仍然能够以现有的形态和趋势发展下去,这样预测结果才会有意义。

    对于平稳声序列, 它的均值和方差是常数, 现已有一套非常成熟的平稳序列的建模方法。 通常是建立一个线性模型来拟合该序列的发展 借此提取该序列的有用信息。

    对于非平稳序列, 由于它的均值和方差不稳定, 处理方法一般是将其转变为平稳序列,这样就可以应用有关平稳时间序列的分析方法, 如建立 ARIMA模型来进行相应的研究,或者分解趋势与季节性等并根据情况应用指数平滑模型等。

    对于纯随机序列, 又称为白噪声序列, 序列的各项之间没有任何相关关系, 序列在进行完全无序的随机波动, 可以终止对该序列的分析。 白噪声序列是没有信息可提取的平稳序列。

    在讲解平稳性和随机性的定义之前,我们先介绍一下时间序列中常用的几个特征统计量。

    时间序列的特征统计量

    对于一个时间序列任意时刻的序列值{Xt,tT}\left\{ X _ { t } , t \in T \right\},任意时刻的序列值 XtX _ { t }都是一个随机变量,记其分布函数为Ft(x)F _ { t } ( x ),则其特征统计量均值、方差、自协方差函数、自相关系数的定义分别如下:

    均值: 表示时间序列在各个时刻取值的平均值,其定义如下:
    μt=EXt=xdFt(x)\mu _ { t } = E X _ { t } = \int _ { - \infty } ^ { \infty } x \mathrm { d } F _ { t } ( x )

    方差: 表示时间序列在各个时刻围绕其均值波动的平均程度,其定义如下:
    σt2=DXt=E(Xtμt)2=(xμt)2dFt(x)\sigma _ { t } ^ { 2 } = D X _ { t } = E \left( X _ { t } - \mu _ { t } \right) ^ { 2 } = \int _ { - \infty } ^ { \infty } \left( x - \mu _ { t } \right) ^ { 2 } \mathrm { d } F _ { t } ( x )

    自协方差 : 表示时间序列任意两个时刻直接的相关性,任取t,sTt , s \in T,则其定义如下:
    γ(t,s)=E[(Xtμt)(Xsμs)]\gamma ( t , s ) = E \left[ \left( X _ { t } - \mu _ { t } \right) \left( X _ { s } - \mu _ { s } \right) \right]

    自相关系数: 同自协方差函数,其定义如下:

    ρ(t,s)=γ(t,s)DXtDXs\rho ( t , s ) = \frac { \gamma ( t , s ) } { \sqrt { D X _ { t } \cdot D X _ { s } } }

    平稳时间序列的定义与检验

    平稳时间序列的定义

    平稳时间序列按照限定条件的严格程度可以分为以下两种类型:

    严平稳时间序列: 指时间序列的所有统计性质不会随着时间的推移而发生变化,即其联合概率分布在任何时间间隔都是相同的。设{Xt}\left\{ X _ { t } \right\}为一时间序列,对任意的正整数mm,任取t1,t2,,tmTt _ { 1 } , t _ { 2 } , \cdots , t _ { m } \in T,对任意整数τ\tau,有:

    Ft1,t2,,tm(x1,x2,,xm)=Ft1+τ,t2+τ,,tm+τ(x1,x2,,xm)F _ { t _ { 1 } , t _ { 2 } , \cdots , t _ { m } } \left( x _ { 1 } , x _ { 2 } , \cdots , x _ { m } \right) = F _ { t _ { 1 + \tau } , t _ { 2 + \tau } , \cdots , t _ { m + \tau } } \left( x _ { 1 } , x _ { 2 } , \cdots , x _ { m } \right)

    则称时间序列{Xt}\left\{ X _ { t } \right\}为严平稳时间序列。

    宽平稳时间序列: 宽平稳时间序列则认为只要时间序列的低阶距(二阶)平稳,则该时间序列近似平稳。如果时间序列{Xt}\left\{ X _ { t } \right\}满足以下三个条件:

    • 任取tTt \in T,有 EXt2<EX _ { t }^ { 2 } <∞
    • 任取tTt \in T,有EXt=μE X _ { t } = \mu,其中μ\mu为常数;
    • 任取t,s,kTt , s , k \in T, k+stTk + s - t \in T,有γ(t,s)=γ(k,k+st)\gamma ( t , s ) = \gamma ( k , k + s - t )

    在现实生活中,时间序列是很难满足严平稳时间序列的要求的,因此,一般所讲的平稳时间序列在默认情况下都是指宽平稳时间序列。根据宽平稳时间序列的条件,我们可以容易得到宽平稳时间序列所具有的性质:

    • 均值为常数,即:EXt=μ,tTE X _ { t } = \mu , \quad \forall t \in T
    • 方差也为均值,即:DXt=γ(t,t)=γ(0),tTD X _ { t } = \gamma ( t , t ) = \gamma ( 0 ) , \quad \forall t \in T
    • 自协方差函数和自相关系数只依赖于时间的平移长度,而与时间的起点无关。即:γ(t,s)=γ(k,k+st),t,s,kT\gamma ( t , s ) = \gamma ( k , k + s - t ) , \quad \forall t , s , k \in T
      因此,可以记γ(k)\gamma ( k )为时间序列${ X _ { t } $的延迟k自协方差函数。

    由于平稳时间序列具有这些优良性质,因此,对于一个平稳时间序列来说,其待估计的参数量就变得少了很多,因为他们的均值、方差都是一样的,因此,可以利用全部的样本来估计总体的均值和方差,即:
    μ^=x=i=1nxinγ^(0)=t=1n(xtx)2n1\widehat { \mu } = \overline { x } = \frac { \sum _ { i = 1 } ^ { n } x _ { i } } { n } \\ \widehat { \gamma } ( 0 ) = \frac { \sum _ { t = 1 } ^ { n } \left( x _ { t } - \overline { x } \right) ^ { 2 } } { n - 1 }
    这也是为什么说当拿到一个时间序列后,需要对其进行平稳性检验。

    平稳时间序列的检验

    那么,当拿到一个时间序列后,应该如何对其进行平稳性的检验呢?目前,对时间序列的平稳性检验主要有两种方法,一种是图检法,即根据时序图和自相关图进行直观判断,另一种是构造检验统计量的方法,有单位根检验法等方法。

    图检法

    对于图检法,我们一般绘制时间序列的时序图,考虑以下三个图形:

    在这里插入图片描述
    在第一幅图中,我们可以清楚地看到,均值随时间而变化(增加),呈现上升的趋势。因此,这是一个非平稳序列。平稳序列不应该呈现出随时间变化的趋势。

    第二幅图显然看不到序列的趋势,但序列的变化是一个时间的函数。正如前面提到的,平稳序列的方差必须是一个常数。

    再来看第三幅图,随着时间的增加,序列传播后变得更近,这意味着协方差是时间的函数。

    所以上述三个例子均是非平稳时间序列.

    再看下面的时序图:
    在这里插入图片描述
    在这张图中,均值、方差和协方差都是常数,这就是平稳时间序列

    另一方面,我们也可以通过自相关图来进行检验,对于平稳时间序列,其自相关图一般随着阶数的递增,自相关系统会迅速衰减至0附近,而非平稳时间序列则可能存在先减后增或者周期性波动等变动。如下图所示,该时间序列随着阶数的递增,自相关系数先减后增,因此,可以判断该时间序列不是平稳时间序列。
    在这里插入图片描述

    统计检验

    可以利用统计检验来代替目视检验:比如单位根平稳检验。单位根表名给定序列的统计特性(均值,方差和协方差)不是时间的常数,这是平稳时间序列的先决条件。下面是它的数学解释:

    假设我们有一个时间序列:
    yt=ayt1+εty_t=a*y_{t-1 }+ε_t
    其中yty_t是t时刻的数据值,εtε_t 是误差项。
    仙子我们需要利用yt1y_{t-1 }的值来计算yty_t,即:
    yt1=ayt2+εt1y_{t-1}=a*y_{t-2}+ε_{t-1}
    如果利用所有的观察值,yty_{t}的值将是:
    yt=anytn+εtiaiy_{t}=a^n*y_{t-n}+ \sumε_{t-i}*a^i

    假设在上述方程中a的值为1(单位),则预测值将等于ytny_{t-n} 和从tnt-ntt的所有误差之和,这意味着方差将随着时间的推移而增大,这就是时间序列中的单位根。众所周知,平稳时间序列的方差不能是时间的函数。单元根检验通过检查a=1的值来检查序列中是否存在单位根。以下是两个最常用的单位根平稳检测方法:

    ADF(增补迪基-福勒)检验

    迪基-福勒(Dickey Fuller)检验是最流行的统计检验方法之一,可以用它来确定序列中单位根的存在,从而帮助判断序列是否是平稳。ADF检验是对DF检验的扩展。这一检验的原假设与备选假设如下:

    • 原假设: 序列有一个单位根(序列非平稳)
    • 备选假设: 该序列没有单位根。(序列平稳)

    单位根是什么呢?当一个自回归过程中: yt=byt1+a+ϵty_{t} = by_{t-1} + a + \epsilon _{t},如果滞后项系数b为1,就称为单位根。当单位根存在时,自变量和因变量之间的关系具有欺骗性,因为残差序列的任何误差都不会随着样本量(即时期数)增大而衰减,也就是说模型中的残差的影响是永久的。这种回归又称作伪回归。如果单位根存在,这个过程就是一个随机漫步(random walk)。ADF检验就是判断序列是否存在单位根:如果序列平稳,就不存在单位根;否则,就会存在单位根.

    在Python中使用ADF检验可以在statsmodels中使用adfuller函数。在下面的代码中我们加上标题与输出值对应的名称:

    #定义ADF输出格式化函数
    from statsmodels.tsa.stattools import adfuller
    def adf_test(timeseries):
        print ('ADF检验结果:')
        dftest = adfuller(timeseries, autolag='AIC')
        dfoutput = pd.Series(dftest[0:4], index=['Test Statistic','p-value','Number of Lags Used','Number of Observations Used'])
        for key,value in dftest[4].items():
           dfoutput['Critical Value (%s)'%key] = value
        print (dfoutput)
    
    #对数据集使用ADF检验
    adf_test(train['#Passengers'])
    

    检验结果如下:

    ADF检验结果:
    Test Statistic                   0.815369
    p-value                          0.991880
    Number of Lags Used             13.000000
    Number of Observations Used    130.000000
    Critical Value (1%)             -3.481682
    Critical Value (5%)             -2.884042
    Critical Value (10%)            -2.578770
    dtype: float64
    

    ADF的结果主要看以下两个方面:

    • Test Statistic的值如果比Critical Value (5%)小则满足稳定性需求.
    • p-value越低(理论上需要低于0.05)证明序列越稳定。

    在上面的例子中,test statistic > Critical Value (5%) ,这意味着序列不是平稳的。同时p值为0.99,这证实了我们最初在目视检测中观察的结果。

    随机性(白噪声)的定义与检验

    随机性时间序列的定义

    通过对时间序列进行平稳性检验后,我们可以将时间序列分为平稳时间序列和非平稳时间序列,对于非平稳时间序列,一般需要将其转化为平稳时间序列再进行分析,具体的转化方法随后再讲。而对于平稳时间序列,我们知道其有一个性质,即自协方差函数和自相关系数只依赖于时间间隔,而与起点无关,对于相同的时间间隔,其自协方差函数和自相关系数为一个常数,那么,就存在一种情况,当该常数为0时,照样满足平稳时间序列的条件,而此时序列之间的相关性则为0,即序列之间不相关,那么,这时我们的分析即可结束,因为对于一个毫无相关的序列,我们没法从中挖掘出可用的规律,此时的序列即为随机性时间序列,也称为白噪声序列。
        
    对于时间序列XtX _ { t },如果满足:

    • 任取tTt \in T,有EXt=μE X _ { t } = \mu
    • 任取t,sTt , s \in T,有
      γ(t,s)=σ2;t=s0;ts\gamma ( t , s ) = \begin{array} { l l } { \sigma ^ { 2 }}; { t = s } \\ { 0 }; { t \neq s } \end{array}

    则称该时间序列为纯随机序列或白噪声序列,简记为XtWN(μ,σ2)X _ { t } \sim W N \left( \mu , \sigma ^ { 2 } \right)。我们可以发现,其实白噪声序列的性质与平稳时间序列的性质一样,其均值和方差均为常数,只是自协方差函数或自相关系数为0,因此,该序列的任何两项之间不存在相关性,无法从中得到任何有用的信息,此时分析可以停止。

    纯随机性(白噪声)检验

    对于纯随机性序列,一般通过构建统计量的方法来检验。我们知道,白噪声序列除了0阶自相关系数外,即方差,其他阶的自相关系数应该均为0,因此,我们可以提出下面这样一个假设:

    H0:ρ1=ρ2==ρm=0,m1H1:ρk0,m1,kmH _ { 0 } : \rho _ { 1 } = \rho _ { 2 } = \cdots = \rho _ { m } = 0 , \quad \forall m \geqslant 1\\ H _ { 1 } :至少存在某个\rho _ { k } \neq 0 , \quad \forall m \geqslant 1 , k \leqslant m

    因此,围绕该假设,我们可以构建统计量进行检验,常用的统计量有Q统计量和LB统计量,其计算公式分别如下:

    Q=nk=1mρ^k2LB=n(n+2)k=1m(ρ^k2nk)Q = n \sum _ { k = 1 } ^ { m } \widehat { \rho } _ { k } ^ { 2 }\\L B = n ( n + 2 ) \sum _ { k = 1 } ^ { m } \left( \frac { \widehat { \rho } _ { k } ^ { 2 } } { n - k } \right)

    其中,nn为序列的观察期数,mm为指定延迟期数,kk为延迟阶数,Box和Pierce证明这两个统计量均服从自由度为m mm的卡方分布,当统计量大于χ1α2(m)\chi _ { 1 - \alpha } ^ { 2 } ( m )或者P值小于αα 时,则认为可以拒绝原假设,即认为该序列是非随机序列

    我们可以使用acorr_ljungbox函数进行数据的纯随机性检验.语法为:

    acorr_ljungbox(x, lags=None, boxpierce=False) # 数据的纯随机性检验函数
    
    lags:为延迟期数,如果为整数,则是包含在内的延迟期数,如果是一个列表或数组,那么所有时滞都包含在列表中最大的时滞中
    
    boxpierce:为True时表示除开返回LB统计量还会返回Box和Pierce的Q统计量
    
    返回值:
    
    lbvalue:测试的统计量
    
    pvalue:基于卡方分布的p统计量
    
    bpvalue:((optionsal), float or array) – 基于 Box-Pierce 的检验的p统计量
    
    bppvalue:((optional), float or array) – 基于卡方分布下的Box-Pierce检验的p统计量
    

    代码实现:

    from statsmodels.stats.diagnostic import acorr_ljungbox
    acorr_ljungbox(train['#Passengers'])
    

    输出检验结果中会返回两个值:
    lbvalue: 测试的统计量 和 pvalue: 基于卡方分布的p统计量。如果p-value>0.05则可判断为白噪声序列

    时间序列的平稳化

    在熟悉了平稳性的概念及其不同的类型之后,接下来可以对序列进行平稳化操作。平稳化的方法有以下几种:

    差分法

    在该方法中,计算序列中连续项的差值。执行差分操作通常是为了消除均值的变化。从数学角度,差分可以写成:

    yt=ytyt1y_t = y_t – y_{t-1}

    其中yty_t 是t时刻的数值。相减数值之间的间隔数即为阶数。例如上述公式即为一阶差分。

    我们可以直接相减对序列差分,并绘制出对应线图:

    train['#Passengers_diff'] = train['#Passengers'] - train['#Passengers'].shift(1)
    train['#Passengers_diff'].dropna().plot()
    

    或者使用diff方法进行差分:

    train['#Passengers_diff'] = train['#Passengers'].diff(1)#一阶差分
    train['#Passengers_diff2'] = train['#Passengers_diff'].diff(1)#二阶差分
    

    在这里插入图片描述

    当数据存在季节性趋势时,我们可以利用季节性差分来消除季节性的不平稳因素。例如,星期一的观察值将与上星期一的观察值相减。从数学角度,它可以写成:

    yt=ytytny_t = y_t – y_{t-n}

    n=7
    train['#Passengers_diff'] = train['#Passengers'] - train['#Passengers'].shift(n)
    

    变换

    变换用于对方差为非常数的序列进行平稳化。常用的变换方法包括幂变换、平方根变换和对数变换。

    train['#Passengers_log'] = np.log(train['#Passengers'])
    train['#Passengers_log_diff'] = train['#Passengers_log'] - train['#Passengers_log'].shift(1)
    train['#Passengers_log_diff'].dropna().plot()
    

    在这里插入图片描述

    在上面的变化过程中,我们首先对原始数据取对数,主要有两个用处:(1)将指数增长转为线性增长(2)可以平稳序列的方差。随后进行差分从而消除趋势的影响使序列平稳。

    分解

    对于有明显趋势或者周期性的时间序列二,我们也可以对其进行分解。分解需要用到statsmodels.tsa.seasonal.seasonal_decompose函数,可以将时间序列的数据分解为趋势(trend),季节性(seasonality)和残差(residual)三部分。

    from statsmodels.tsa.seasonal import seasonal_decompose
    decomposition = seasonal_decompose(train['#Passengers']).plot()#画出分解后时序图
    plt.show()
    trend = decomposition.trend
    seasonal = decomposition.seasonal
    residual = decomposition.resid
    

    在这里插入图片描述

    这样趋势和季节性,还有残差值都被分解出来,之后我们就可以计算残差值的稳定性,从而得到一个平稳的时间序列

    参考文章:
    https://www.biaodianfu.com/arima.html

    在这里插入图片描述

    展开全文
  • Stata中单位根检验

    万次阅读 2018-11-07 00:06:56
    检验序列的平稳性是时间序列分析关键步骤。时间序列中很多估计量统计特性都依赖于数据是否平稳。一般意义上,一个(弱)平稳过程期望、方差和自相关系数应不随时间变化。 然而在大多可观测时间序列中,趋势项...

    今天帮连玉君老师的stata连享会翻译了一篇文章,原文链接。第一次尝试用markdown编辑,发现CSDN竟然支持markdown,所以顺手po上来试试效果。以下为正文:
    检验序列的平稳性是时间序列分析的关键步骤。时间序列中很多估计量的统计特性都依赖于数据是否平稳。一般意义上,一个(弱)平稳过程的期望、方差和自相关系数应不随时间变化。
    然而在大多可观测的时间序列中,趋势项的存在总会使得序列不具有平稳性。趋势项包括确定趋势项和随机趋势项,趋势项的类型决定了我们需要使用什么方法将时间序列转换成平稳序列。比如,含有随机趋势项的单位根过程可以通过差分变得平稳。然而,对实际上含有确定趋势项的序列进行差分则会得到含单位根的移动平均过程。因此,在做转换之前,识别出序列的非平稳性到底是源于确定趋势项还是随机趋势项是非常重要的。
    在这篇文章中,我会介绍检验单位根的三个命令。

    随机趋势

    随机趋势的一个简单例子是随机游走过程。

    随机游走

    考虑以下AR(1)过程:
    (1)yt=yt1+εty_t=y_{t-1}+\varepsilon_t \tag{1}
    其中yty_t是被解释变量。误差项εt\varepsilon_t期望为0,方差为σ2\sigma^2且独立同分布。如果这个过程的初值为y0=0y_0=0,则yty_t可以写成:
    yt=i=1tεty_t=\sum_{i=1}^{t} \varepsilon_t
    其中等式右端为随机趋势项i=1tεt\sum_{i=1}^{t} \varepsilon_tyty_t的期望为0,方差为σ2\sigma^2。显然期望是常数,而方差随时间变化。

    带漂移项的随机游走

    向随机游走过程加入一个常数项即可得到带漂移项的随机游走:
    (2)yt=α+yt1+εty_t=\alpha+y_{t-1}+\varepsilon_t \tag{2}
    其中α\alpha是常数项。如果这个过程的初值为0,则yty_t可以写成:

    yt=αt+i=1tεt y_t=\alpha t+\sum_{i=1}^{t} \varepsilon_t
    现在等式右端是一个确定性趋势项αt\alpha t和一个随机趋势项i=1tεt\sum_{i=1}^{t} \varepsilon_t的和。yty_t的期望为αt\alpha t,方差为σ2\sigma^2。期望和方差都随着时间tt的增加而增加。注意如果漂移项α\alpha的值接近于0,则带漂移项的随机游走将非常接近普通的随机游走。

    确定趋势

    考虑如下带有线性确定趋势的随机过程:
    yt=α+δt+ϕyt1+εt y_t=\alpha+\delta t+\phi y_{t-1}+\varepsilon_t
    其中δ\delta是时间tt的系数,ϕ\phi是AR过程的参数且ϕ&lt;1\left| \phi\right|&lt;1。注意到带漂移项的随机游走过程也与有线性确定趋势的过程相似,只是前者在确定趋势之外还包含一个随机趋势。

    非平稳过程绘图

    首先,我分别根据随机游走模型和漂移项为0.1的随机游走模型模拟生成数据并画图,代码在附录中提供。

    从上图来看,两个时间序列都没有明显的趋势,并且红线相当于蓝线总是有正向的调整。如果将这两个序列分别画到两张图上,几乎不可能区分出哪个才是带漂移项的随机游走过程。然而,由于两个序列都包含随机趋势,我们仍然可以通过将两个序列差分来获得平稳的时间序列。
    类似地,我分别根据漂移项为1的随机游走模型和带有确定性趋势的模型分别模拟数据并画图。

    如上图所示,两个序列看起来非常相像。蓝线在一个确定的趋势线上下浮动。红线的随机趋势则在样本开始时缓慢增长,而在样本后期迅速增长。在这种情况下想要转换为平稳的时间序列,就像前面提到的,应用正确的转换方式是非常重要的。

    单位根检验

    单位根检验的原假设是真正的随机过程为随机游走过程(1)(1)或者是一个带漂移项的随机游走过程(2)(2)。考虑如下的AR(1)模型:
    yt=ϕyt1+εt y_t=\phi y_{t-1}+\varepsilon_t
    其中εt\varepsilon_t服从独立同分布的N(0,σ2)N(0,\sigma^2)分布。原假设意味着ϕ=1\phi=1,而备择假设意味着ϕ&lt;1\left| \phi\right|&lt;1
    如果ϕ\phi确实是1,则随着样本量的扩大,OLS估计值ϕ^\hat{\phi}相对于平稳序列以一个更快的速度收敛于其真实值1。然而,由于ϕ^\hat{\phi}的渐近分布不是标准分布,因此tt检验在这里并不适用。
    此外,在回归中是否包含常数或时间趋势项会导致检验统计量有不同的渐近分布,这也意味着在做这类检验时清楚设定原假设和备择假设是非常重要的。

    ADF检验

    在单位根检验的原假设下,真实的过程要么是随机游走,要么是带漂移项的随机游走。对于模型(3)(3),原假设成立意味着ϕ=1\phi=1。使用OLS估计模型(3)(3)将忽略残差的序列相关性。
    (3)yt=α+δt+ϕyt1+εt y_t=\alpha+\delta t+\phi y_{t-1}+\varepsilon_t \tag{3}
    为了解决这个问题,ADF检验通过将模型(3)(3)变形为模型(4)(4)的差分形式并检验是否β=0\beta=0
    (4)Δyt=α+δt+βϕyt1+I=1kγiΔyti+εt \Delta y_t=\alpha+\delta t+\beta \phi y_{t-1}+\sum_{I=1}^{k}\gamma_i \Delta y_{t-i}+\varepsilon_t \tag{4}
    注意(4)(4)可以约束α\alphaδ\delta其中一个等于0或同时为0,但是不同的约束会对应不同的检验统计量。Hamilton(1994)1给出了四种可能情况下检验统计量的分布。
    我分别模拟了两列时间序列,其中yrwd2是漂移项为1的随机游走过程,yt是有线性趋势的模型。我用dfuller命令来做ADF检验。我感兴趣的原假设I是yrwd2为有漂移项的随机游走过程,其备择假设为yrwd2是一个有线性趋势的平稳过程。因此为了检验(4)(4),我会加入dfuller命令的选项trend

    . dfuller yrwd2, trend
    
    Dickey-Fuller test for unit root        Number of obs   =   149
    
                   ---------- Interpolated Dickey-Fuller ---------
                      Test         1% CV      5% CV    10%CV
                   Statistic                                   
    -------------------------------------------------------------------
     Z(t)           -2.664        -4.024     -3.443   -3.143
    -------------------------------------------------------------------
    MacKinnon approximate p-value for Z(t) = 0.2511
    

    和预期一样,yrwd2的检验结果显示不能拒绝该过程为带漂移的随机游走过程的原假设。接下来,我们对yt序列也做类似的检验。

    . dfuller yt, trend
    
    Dickey-Fuller test for unit root       Number of obs   =  149
    
                           ------- Interpolated Dickey-Fuller ------
                      Test         1% CV      5% CV     10% CV
                   Statistic                           
    ----------------------------------------------------------------
     Z(t)           -5.328        -4.024     -3.443     -3.143
    ----------------------------------------------------------------
    MacKinnon approximate p-value for Z(t) = 0.0000
    

    和预期一样,yt序列的检验结果拒绝了原假设。

    Phillips–Perron检验

    Phillips(1987)2和Phillips and Perron(1988)3开发出这个检验主要是为了解决残差项中潜在的序列相关和异方差问题,其检验统计量的渐进分布和临界值与ADF检验相同。
    stata中,PP检验的命令pperrondfuller的用法类似。使用pperronyrwd2yt可以得到与ADF检验类似的结果。

    GLS去势的ADF检验

    Elliott et al. (1996)4提出的GLS-ADF检验与ADF检验类似,只是在对模型(4)(4)进行估计之前,需要先对时间序列进行GLS回归。Elliott et al. (1996)4证明了这个检验比ADF检验表现更好。
    为了检验yrwd2是否是一个带漂移项的随机游走过程,我使用设定最大4阶滞后的dfgls命令对模型(4)(4)进行估计:

    . dfgls yrwd2, maxlag(4)
    
    DF-GLS for yrwd2                                      Number of obs =   145
    
                   DF-GLS tau      1% Critical     5% Critical     10% Critical
      [lags]     Test Statistic        Value           Value            Value
    ---------------------------------------------------------------------------
        4            -1.404           -3.520          -2.930           -2.643
        3            -1.420           -3.520          -2.942           -2.654
        2            -1.638           -3.520          -2.953           -2.664
        1            -1.644           -3.520          -2.963           -2.673
    
    Opt Lag (Ng-Perron seq t) = 0 [use maxlag(0)]
    Min SC   =   3.31175 at lag  1 with RMSE  5.060941
    Min MAIC =  3.295598 at lag  1 with RMSE  5.060941
    

    注意,与dfullerpperon命令不同的是,dfgls默认控制了线性时间趋势项。结果仍然显示不能拒绝yrwd2是带漂移项的随机游走过程的原假设。
    最后,我对yt序列做了同样的检验:

    . dfgls yt, maxlag(4)
    
    DF-GLS for yt                                         Number of obs =   145
    
                   DF-GLS tau      1% Critical     5% Critical     10% Critical
      [lags]     Test Statistic        Value           Value            Value
    ---------------------------------------------------------------------------
        4            -4.013           -3.520          -2.930           -2.643
        3            -4.154           -3.520          -2.942           -2.654
        2            -4.848           -3.520          -2.953           -2.664
        1            -4.844           -3.520          -2.963           -2.673
    
    Opt Lag (Ng-Perron seq t) = 0 [use maxlag(0)]
    Min SC   =  3.302146 at lag  1 with RMSE  5.036697
    Min MAIC =  3.638026 at lag  1 with RMSE  5.036697
    

    与期望一致,我们拒绝了yt序列为带漂移项的随机游走过程的原假设。

    结论

    在这篇文章中,我讨论了时间序列非平稳主要是由于存在随机趋势项或确定趋势项或二者都有,同时还使用介绍了如何使用dfullerpperrondfgls命令检验是否存在单位根。

    附录

    这是生成随机游走过程、带漂移项的随机游走过程以及带线性趋势过程的代码:

    clear all
    set seed 2016
    local T = 200
    set obs `T'
    gen time = _n
    label var time "Time"
    tsset time
    gen eps = rnormal(0,5)
     
    /*Random walk*/
    gen yrw = eps in 1
    replace yrw = l.yrw + eps in 2/l
     
    /*Random walk with drift*/
    gen yrwd1 = 0.1 + eps in 1
    replace yrwd1 = 0.1 + l.yrwd1 + eps in 2/l
     
    /*Random walk with drift*/
    gen yrwd2 = 1 + eps in 1
    replace yrwd2 = 1 + l.yrwd2 + eps in 2/l
     
    /*Stationary around a time trend model*/
    gen yt = 0.5 + 0.1*time + eps in 1
    replace yt = 0.5 + 0.1*time +0.8*l.yt+ eps in 2/l
    drop in 1/50
     
    tsline yrw yrwd1, title("Stochastic trend")          ///
            legend(label(1 "Random walk")                ///
            label(2 "Random walk with drift"))
    tsline yt yrwd2,                                     ///
            legend(label(1 "Deterministic time trend")   ///
            label(2 "Random walk with drift"))           ///
            title("Stochastic and deterministic trend")
    

    1. Hamilton, J. D. 1994. Time Series Analysis. Princeton: Princeton University Press. ↩︎

    2. Phillips, P. C. B. 1987. Time series regression with a unit root. Econometrica 55: 277–301. ↩︎

    3. Phillips, P. C. B., and P. Perron. 1988. Testing for a unit root in time series regression. Biometrika 75: 335–346. ↩︎

    4. Elliott, G. R., T. J. Rothenberg, and J. H. Stock. 1996. Efficient tests for an autoregressive unit root. Econometrica 64: 813–836. ↩︎ ↩︎

    展开全文
  • 课程主页:https://gitee.com/arlionn/PX检验序列的平稳性是时间序列分析关键步骤。时间序列中很多估计量统计特性都依赖于数据是否平稳。一般意义上,一个 (弱) 平稳过程期望、方差和自相关系数应不随时间变化...

    作者:许梦洁 (编译)


    连享会最受欢迎的课

    ?2021Stata 寒假班

    ?2021年1.25—2.4

    ?主讲:连玉君 (中山大学):江艇 (中国人民大学)

    ?课程主页:https://gitee.com/arlionn/PX


    3e80a13b3d5ac6971d09a248b342f1ff.png

    检验序列的平稳性是时间序列分析的关键步骤。时间序列中很多估计量的统计特性都依赖于数据是否平稳。一般意义上,一个 (弱) 平稳过程的期望、方差和自相关系数应不随时间变化。

    然而,在大多可观测的时间序列中,趋势项的存在总会使得序列不具有平稳性。

    趋势项包括确定趋势项和随机趋势项,趋势项的类型决定了我们需要使用什么方法将时间序列转换成平稳序列。比如,含有随机趋势项的单位根过程可以通过差分变得平稳。然而,对实际上含有确定趋势项的序列进行差分则会得到含单位根的移动平均过程。因此,在做转换之前,识别出序列的非平稳性到底是源于确定趋势项还是随机趋势项是非常重要的。

    在这篇文章中,我会介绍检验单位根的三个命令。

    1. 随机趋势

    随机趋势的一个简单例子是随机游走过程。

    1.1 随机游走

    考虑以下 AR(1) 过程:

    b9d353d54681488dea5e8bf452989428.png

    其中, 是被解释变量。误差项 期望为0,方差为 且独立同分布。如果这个过程的初值为 ,则 可以写成:

    c5009da84f4a255ba30860c3bd367e32.png

    其中,等式右端为随机趋势项的期望为 0,方差为   。显然,期望是常数,而方差随时间变化。

    1.2 带漂移项的随机游走

    向随机游走过程加入一个常数项即可得到带漂移项的随机游走:

    107b0b8f8a48059b3ef431c45fc26fae.png

    其中, 是常数项。如果这个过程的初值为 0,则 可以写成:

    226af90ed95b15e37e600b5c23d29a12.png

    现在等式右端是一个确定性趋势项 和一个随机趋势项的和。的期望为  ,方差为  期望和方差都随着时间 t的增加而增加。注意,如果漂移项 的值接近于 0,则带漂移项的随机游走将非常接近普通的随机游走。

    2. 确定趋势

    考虑如下带有线性确定趋势的随机过程:

    7e14ba309b765e21937f38ccf5c62264.png

    其中,是时间t的系数,是 AR 过程的参数且||<1。注意,带漂移项的随机游走过程也与有线性确定趋势的过程相似,只是前者在确定趋势之外还包含一个随机趋势。

    3. 非平稳过程绘图

    首先,我分别根据随机游走模型和漂移项为 0.1 的随机游走模型模拟生成数据并画图,代码在附录中提供。

    a89f47a5799103e9c7704cfcce31ba58.png

    从上图来看,两个时间序列都没有明显的趋势,并且红线相当于蓝线总是有正向的调整。如果将这两个序列分别画到两张图上,几乎不可能区分出哪个才是带漂移项的随机游走过程。然而,由于两个序列都包含随机趋势,我们仍然可以通过将两个序列差分来获得平稳的时间序列。

    类似地,我分别根据漂移项为 1 的随机游走模型和带有确定性趋势的模型分别模拟数据并画图。

    31132e46580c23f582912082d3ee4e09.png

    如上图所示,两个序列看起来非常相像。蓝线在一个确定的趋势线上下浮动。红线的随机趋势则在样本开始时缓慢增长,而在样本后期迅速增长。在这种情况下想要转换为平稳的时间序列,就像前面提到的,应用正确的转换方式是非常重要的。

    4. 单位根检验

    单位根检验的原假设是真正的随机过程为随机游走过程 (1) 或者是一个带漂移项的随机游走过程 (2)。考虑如下的 AR(1) 模型:

    9cebf5c21a1de55ac1abed1d780f30b2.png

    其中,服从独立同分布的N(0,)分布。原假设意味着=1 ,而备择假设意味着||<1。

    如果 确实是 1,则随着样本量的扩大,OLS 估计值 会相对于平稳序列以一个更快的速度收敛于其真实值 1。然而,由于 的渐近分布不是标准分布,传统的 t 检验在这里并不适用。

    此外,在回归中是否包含常数或时间趋势项会导致检验统计量有不同的渐近分布,这也意味着在做这类检验时清楚设定原假设和备择假设是非常重要的。

    4.1 ADF 检验

    在单位根检验的原假设下,真实的过程要么是随机游走,要么是带漂移项的随机游走。对于模型 (3),原假设成立意味着 =1 。使用 OLS 估计模型 (3) 将忽略残差的序列相关性。

    9e64644178d7765c8252ff35d2822bf5.png

    解决此问题,ADF 检验通过将模型 (3) 变形为模型 (4) 的差分形式并检验是否 =0。

    b5df9ef836c32876292e74266a0d1009.png

    注意,(4) 可以约束其中一个等于 0 或同时为 0,但是不同的约束会对应不同的检验统计量。Hamilton(1994)[^H1994] 给出了四种可能情况下检验统计量的分布。

    我分别模拟了两列时间序列,其中yrwd2是漂移项为1的随机游走过程,yt是有线性趋势的模型。这里用 dfuller 命令来做 ADF 检验。我们感兴趣的原假设1是:yrwd2为有漂移项的随机游走过程。其备择假设为:yrwd2 是一个有线性趋势的平稳过程。

    因此,为了检验 (4),我们会在 dfuller 命令中加入选项 trend。

    . dfuller yrwd2, trend

    Dickey-Fuller test for unit root       Number of obs = 149

                --------- Interpolated Dickey-Fuller ---------
              Test     1% Critical  5% Critical   10% Critical
           Statistic       Value        Value          Value
    ----------------------------------------------------------
     Z(t)     -2.664        -4.024       -3.443         -3.143
    ----------------------------------------------------------
    MacKinnon approximate p-value for Z(t) 0.2511

    与预期一致,yrwd2 的检验结果显示:不能拒绝该过程为带漂移的随机游走过程的原假设。接下来,我们对 yt 序列也做类似的检验。

    . dfuller yt, trend

    Dickey-Fuller test for unit root        Number of obs = 149

                ---------- Interpolated Dickey-Fuller ---------
              Test      1% Critical   5% Critical  10% Critical
           Statistic        Value          Value          Value
    -----------------------------------------------------------
     Z(t)     -5.328         -4.024        -3.443        -3.143
    -----------------------------------------------------------
    MacKinnon approximate p-value for Z(t) 0.0000

    此时,yt 序列的检验结果拒绝了原假设。

    4.2 Phillips–Perron 检验

    Phillips(1987)[^P1987] 和 Phillips and Perron(1988)[^P1988] 开发出这个检验主要是为了解决残差项中潜在的序列相关和异方差问题,其检验统计量的渐进分布和临界值与 ADF 检验相同。

    在 Stata 中,PP 检验的命令 pperron 与 dfuller 的用法相似。使用 pperron 对yrwd2 和 yt 执行检验可以得到与 ADF 检验类似的结果。

    4.3 GLS 去势的 ADF 检验

    Elliott et al. (1996)[^E1996] 提出的 GLS-ADF 检验与 ADF 检验类似,只是在对模型 进行估计之前,需要先对时间序列进行GLS回归。Elliott et al. (1996)[^E1996] 证明了这个检验比 ADF 检验表现更好。

    为了检验 yrwd2 是否是一个带漂移项的随机游走过程,我使用设定最大 4 阶滞后的 dfgls 命令对模型 (4) 进行估计:

    . dfgls yrwd2, maxlag(4)

    DF-GLS for yrwd2                            Number of obs = 145

                DF-GLS tau   1% Critical  5% Critical  10% Critical
      [lags]  Test Statistic     Value        Value         Value
    ---------------------------------------------------------------
        4         -1.404        -3.520       -2.930        -2.643
        3         -1.420        -3.520       -2.942        -2.654
        2         -1.638        -3.520       -2.953        -2.664
        1         -1.644        -3.520       -2.963        -2.673

    Opt Lag (Ng-Perron seq t) 0 [use maxlag(0)]
    Min SC   
    =   3.31175 at lag  1 with RMSE  5.060941
    Min MAIC =  3.295598 at lag  1 with RMSE  5.060941

    注意,与 dfuller 和 pperon 命令不同的是,dfgls 默认控制了线性时间趋势项。结果仍然显示不能拒绝 yrwd2 是带漂移项的随机游走过程的原假设。

    最后,我对 yt 序列做了同样的检验:

    . dfgls yt, maxlag(4)

    DF-GLS for yt                               Number of obs = 145

               DF-GLS tau    1% Critical  5% Critical  10% Critical
      [lags] Test Statistic      Value        Value         Value
    ---------------------------------------------------------------
        4        -4.013         -3.520       -2.930        -2.643
        3        -4.154         -3.520       -2.942        -2.654
        2        -4.848         -3.520       -2.953        -2.664
        1        -4.844         -3.520       -2.963        -2.673

    Opt Lag (Ng-Perron seq t) 0 [use maxlag(0)]
    Min SC   
    =  3.302146 at lag  1 with RMSE  5.036697
    Min MAIC =  3.638026 at lag  1 with RMSE  5.036697

    与期望一致,我们拒绝了 yt 序列为带漂移项的随机游走过程的原假设。

    5. 结论

    在这篇文章中,我讨论了时间序列非平稳主要是由于存在随机趋势项或确定趋势项或二者都有,同时还使用介绍了如何使用 dfuller、pperron 和dfgls 命令检验是否存在单位根。

    6. 附录

    这是生成随机游走过程、带漂移项的随机游走过程以及带线性趋势过程的 Stata 代码:

    clear all
    set seed 2016
    local T = 200
    set obs `T'
    gen time = _n
    label var time "Time"
    tsset time
    gen eps = rnormal(0,5)
    /*Random walk*/
    gen yrw = eps in 1
    replace yrw = l.yrw + eps in 2/l
    /*Random walk with drift*/
    gen yrwd1 = 0.1 + eps in 1
    replace yrwd1 = 0.1 + l.yrwd1 + eps in 2/l
    /*Random walk with drift*/
    gen yrwd2 = 1 + eps in 1
    replace yrwd2 = 1 + l.yrwd2 + eps in 2/l
    /*Stationary around a time trend model*/
    gen yt = 0.5 + 0.1*time + eps in 1
    replace yt = 0.5 + 0.1*time +0.8*l.yt+ eps in 2/l
    drop in 1/50
    tsline yrw yrwd1, title("Stochastic trend")          ///
            legend(label(1 "Random walk")                ///
            label(2 "Random walk with drift"))
    tsline yt yrwd2,                                     ///
            legend(label(1 "Deterministic time trend")   ///
            label(2 "Random walk with drift"))           ///
            title("Stochastic and deterministic trend")

    参考文献

    [^P1987]:Phillips, P. C. B. 1987. Time series regression with a unit root. Econometrica 55: 277–301.

    [^P1988]:Phillips, P. C. B., and P. Perron. 1988. Testing for a unit root in time series regression. Biometrika 75: 335–346.

    [^H1994]:Hamilton, J. D. 1994. Time Series Analysis. Princeton: Princeton University Press.

    [^E1996]:Elliott, G. R., T. J. Rothenberg, and J. H. Stock. 1996. Efficient tests for an autoregressive unit root. Econometrica 64: 813–836.


    关于我们

    • 连享会 ( 主页:lianxh.cn ) 由中山大学连玉君老师团队创办,定期分享实证分析经验。
    • 直达连享会:【百度一下:连享会】即可直达连享会主页。亦可进一步添加 主页,知乎,面板数据,研究设计 等关键词细化搜索。
    • ? 公众号推文分类:历史推文分为多个专辑,主流方法介绍一目了然:DID, RDD, IV, GMM, FE, Probit 等。
    cb20e4c26ec5d58612bcc3c476286e18.png
    连享会主页  lianxh.cn

    连享会小程序:扫一扫,看推文,看视频……

    144f70a928c6bea16e5efe8f3859b2a2.png

    扫码加入连享会微信群,提问交流更方便

    06f11c6cc0da260f20fb13129240b880.png

    连享会学习群-常见问题解答汇总:

    https://gitee.com/arlionn/WD

    展开全文
  • 目录第一章 时间序列分析简介第二章 时间序列预处理2.1 平稳时间序列定义2.2 平稳时间序列统计性质和意义2.3 平稳性检验2.4 纯随机序列定义和性质2.5 纯随机性检验 第一章 时间序列分析简介 第二章 时间...
  • 一、平稳时间序列的意义 时间序列数据结构的特殊性 可列多个随机变量,而每个变量只有一个样本观察值 平稳性的重大意义 极大地减少了随机变量的个数,并增加了待估变量的样本容量 极大地简化了时序分析的难度,...
  • 时间序列笔记(二)

    2017-11-23 22:56:41
    平稳性检验: 特征统计量 平稳性时间序列的定义 平稳性时间序列的统计性质 平稳性时间序列的意义 平稳性检验 特征统计量: 概率分布 的意义: 统计特征完全用联合分布函数或联合密度函数决定 例如:均值,方差这些...
  • 按照正规程序,面板数据模型在回归前需检验数据的平稳性。步骤一:分析数据的平稳性(单位根检验)按照正规程序,面板数据模型在回归前需检验数据的平稳性。李子奈曾指出,一些非平稳经济时间序列往往表现出共同...
  • 一文读懂伪回归、协整、格兰杰

    千次阅读 2019-10-14 20:16:29
    一、什么叫做伪回归 若是所建立的回归模型在经济意义上没有因果关系,...单位根检验是序列的平稳性检验,如果不检验序列的平稳性直接OLS容易导致伪回归。 当检验的数据是平稳的(即不存在单位根),即意思是单位...
  • 课程链接:添加链接描述 ...待分析时间序列–》平稳性检验{1.单位根检验;2.ACF PACF拖尾(下降趋势),截尾(某一点后变为0)检验 –》白噪声检验(检验是否为纯随机序列)–》是,停止检验 –》不是–》计算.A
  • Day 6

    2020-08-06 17:03:48
    平稳性的检验 1)时序图检验 平稳序列时序图应该显示出该序列始终在一个常数值附近随 机波动,而且波动范围有界、无明显趋势及周期特征。 2)自相关图检验 平稳序列通常具有短期相关性。该性
  • 时间序列的平稳性检验1.导入数据(以分析某公司2000年--2003年每月销售数据为例)2.时序图检验3.自相关检验4.时序图和自相关 图注意事项三.纯随机性检验1.白噪声序列性质2.纯随机性检验(1)检验原理(1)检验...
  • 根据时间序列散点图、自相关函数和偏自相关函数图识别其平稳性。 2、对非平稳时间序列数据进行平稳化处理。直到处理后自相关函数和偏自相关函数数值非显著非零。 3、根据所识别出来特征建立相应时间序列...
  • 上述特征长期序列分为两个时期:1955年至1979年(平稳气候时期)和1980年至2014年(非平稳气候时期),并从它们同质和趋势意义的角度进行了评估。学生t检验。 研究发现,在非平稳气候时期,APR大部分站点...
  • 步骤一:分析数据的平稳性(单位根检验)按照正规程序,面板数据模型在回归前需检验数据的平稳性。李子奈曾指出,一些非平稳经济时间序列往往表现出共同变化趋势,而这些序列间本身不一定有直接关联,此时,对...
  • 展开全部步骤一:分析数据的平稳性(单位根检验)。按照正规程序,面板数据模型在回归前需32313133353236313431303231363533e59b9ee7ad9431333433643732检验数据的平稳性。李子奈曾指出,一些非平稳经济时间序列往往...
  • 使用R语言进行时间序列分析

    万次阅读 多人点赞 2018-04-08 10:50:32
    一、时间序列定义 时间序列是将统一统计值按照时间发生先后顺序来进行排列,时间...二、时间序列预处理1、平稳性检验:拿到一个时间序列之后,我们首先要对其稳定性进行判断,只有非白噪声稳定性时间序列...
  • 同时,以污染程度不同5个城市作为实验地点对预警效果进行检验,结果表明:1)与经验模态分解(empirical mode decomposition,EMD)相比,TVF-EMD可以更为有效地降低原始数据非线性和非平稳性特征;2)基于MBOA...
  • 一、时间序列定义时间序列是将统一统计值按照时间发生先后顺序来进行排列,时间...二、时间序列预处理1、平稳性检验:拿到一个时间序列之后,我们首先要对其稳定性进行判断,只有非白噪声稳定性时间序列才...
  • 第三节协整理论——时间序列模型协整关系一、问题来源来源:伪回归(虚假回归)现象MC(蒙特卡罗)模拟结果发现:利用2个相互独立非平稳序列、或者2个都包含时间...二、平稳性(一)平稳时间序列定义:(序列相关...
  • 平稳性检验2.读入数据总结 前言 粗略学习了时间序列的协整检验,也跟着教程用Eviews软件计算了一些东西,但总不明白目的是啥,也不懂协整方程(虽然不是规范得到的结果,嘤)的意义,今天从最简单的百度百科上好像...
  • 利用协整关系进行配对交易

    千次阅读 2018-08-24 16:58:22
    在前一篇当中利用相关系数来进行套利,看到价差并不为平稳序列,回测结果也就不是很好,...此研究以14年到15年数据作为样本来检验协整,当然协整关系是一个动态过程,所以检验出来协整只能在统计意义上满足...

空空如也

空空如也

1 2
收藏数 23
精华内容 9
关键字:

平稳性检验的意义