R语言非参时间序列(六):波动脉冲响应(VIR)中的关键公式推导

您所在的位置:网站首页 vech模型 R语言非参时间序列(六):波动脉冲响应(VIR)中的关键公式推导

R语言非参时间序列(六):波动脉冲响应(VIR)中的关键公式推导

#R语言非参时间序列(六):波动脉冲响应(VIR)中的关键公式推导| 来源: 网络整理| 查看: 265

JBF、EE等期刊近两年刊登了一些度量某一个新闻事件对金融市场的冲击程度的文章,模型上都采用了Hafner and Herwartz (2006)的波动脉冲响应函数(Volatility Impulse Response Function, VIRF henceforth)。Hafner and Herwartz (2006)是一篇老文章了且应用层面比较广,但是谷歌学术显示它只被引了141次,可见最近似乎有回暖的趋势。我抱着现学现卖的心态和大家一起分享一下这篇文章。

Hafner, C. M., & Herwartz, H. (2006). Volatility impulse responses for multivariate GARCH models: An exchange rate illustration.Journal of International Money and Finance,25(5), 719-740.

Hafner and Herwartz (2006)中很多公式跳步比较严重,对新手读者不是很友好。本文由此给出Hafner and Herwartz (2006)中重要的跳步的公式的详细推导

1.重要的跳步的公式的详细推导

BEKK的VEC以及VECH形式

\Sigma_t=C_0C_0'+\sum_{k=1}^{K}\sum_{i=1}^{q}A_{ki}'\epsilon_{t-i}\epsilon_{t-i}'A_{ki}+\sum_{k=1}^{K}\sum_{i=1}^{p}G_{ki}'\Sigma_{t-i}G_{ki}\tag6 Since for every BEKK model there exists a unique equivalent vec specification (Engle and Kroner, 1995), corresponding results for BEKK models can be obtained after transforming the model to its vec representation.

公式(6)是完整的n元BEKK形式,在实际的运用中,我们常常使用如下退化的形式(令K=1):

\Sigma_t=C_0C_0'+\sum_{i=1}^{q}A_{ki}'\epsilon_{t-i}\epsilon_{t-i}'A_{ki}+\sum_{i=1}^{p}G_{ki}'\Sigma_{t-i}G_{ki}\tag1

由于Hafner and Herwartz (2006)VEC形式的多元GARCH模型,我们在此给出了VEC形式n元BEKK的推导。

对公式(1)两边取VEC算子以及 vec(ABC)=C'\otimes Avec(B) ,得:

vec(\Sigma_t) =C_0\otimes C_0vec(I_n)+\sum_{k=1}^K\sum_{i=1}^q A_{ki}\otimes A_{ki}vec(\epsilon_{t-i}\epsilon_{t-i}')+\sum_{k=1}^K\sum_{i=1}^p G_{ki}\otimes G_{ki}vec(\Sigma_{t-i})\tag2

我们先以BEKK(1,1)为例(BEKK(p,q)同理),得:

vec(\Sigma_t) =C_0\otimes C_0vec(I_n)+ A_{1}\otimes A_{1}vec(\epsilon_{t-1}\epsilon_{t-1}')+ G_{1}\otimes G_{1}vec(\Sigma_{t-1})\tag3

重新整理参数,令 \tilde{C}=C_0\otimes C_0vec(I_n) , \tilde{A}= A_{1}\otimes A_{1}vec(\epsilon_{t-1}\epsilon_{t-1}') 且 \tilde{B}= G_{1}\otimes G_{1}vec(\Sigma_{t-1}) ,得:

vec(\Sigma_t) =\tilde{C}+ \tilde{A}vec(\epsilon_{t-1}\epsilon_{t-1}')+ \tilde{B}vec(\Sigma_{t-1})\tag4

由此我们得到了VEC形式的BEKK(1,1)模型。但由于 \Sigma_t 是对称正定阵,VEC算子会多出很多冗余元素,我们尝试对它做半拉直变换,即给出BEKK的VECH形式。Hafner and Herwartz (2006)给出了关于由VEC算子和VECH算子之间转换的矩阵:

vec(Z)=D_Nvech(Z) for anysymmetric ( N\times N ) matrix Z , and D_N^+ denotes its Moore-Penrose inverse.

矩阵的广义逆有很多种,这里给了MP形式的广义逆,由 D_N^+=(D_N'D_N)^{-1}D_N' ,得:

vech(Z)=D_N^+vec(Z)=(D_N'D_N)^{-1}D_N'vec(Z)\tag5

由公式(4)和公式(5),得:

D_Nvech(\Sigma_t) =\tilde{C}+ \tilde{A}D_Nvech(\epsilon_{t-1}\epsilon_{t-1}')+ \tilde{B}D_Nvech(\Sigma_{t-1})

vech(\Sigma_t) =D_N^+C'+ D_N^+A'D_Nvech(\epsilon_{t-1}\epsilon_{t-1}')+ D_N^+B'D_Nvech(\Sigma_{t-1})\\ =(D_N'D_N)^{-1}D_N'C'+ (D_N'D_N)^{-1}D_N'A'D_Nvech(\epsilon_{t-1}\epsilon_{t-1}')+(D_N'D_N)^{-1}D_N'B'D_Nvech(\Sigma_{t-1})\tag6

由此我们得到了VECH形式的BEKK模型,重新整理参数,令 C =(D_N'D_N)^{-1}D_N'\tilde{C} , A=(D_N'D_N)^{-1}D_N'\tilde{A}D_N , B=(D_N'D_N)^{-1}D_N'\tilde{B}D_N,得:

vech(\Sigma_t) =C+ Avech(\epsilon_{t-1}\epsilon_{t-1}')+ Bvech(\Sigma_{t-1}) \tag7

VECH形式的BEKK(1,1)变化为VECH形式的BEKK(\infty ,0)

引入滞后算子 L ,对公式(7)进行变换,得:

vech(\Sigma_t) =C+ Avech(\epsilon_{t-1}\epsilon_{t-1}')+ Bvech(\Sigma_{t-1})\\ \Rightarrow vech(\Sigma_t)-BLvech(\Sigma_{t}) =C+ Avech(\epsilon_{t-1}\epsilon_{t-1}')\\ \Rightarrow(1-BL)vech(\Sigma_{t}) =C+ Avech(\epsilon_{t-1}\epsilon_{t-1}')

由此:

vech(\Sigma_{t}) =\frac{C}{(1-BL)}+\frac{A}{(1-BL)}vech(\epsilon_{t-1}\epsilon_{t-1}')\tag8

我们对滞后算子 \frac{1}{1-BL}=1+BL+(BL)^2+(BL)^3+(BL)^4+...... 进行展开,得:

vech(\Sigma_{t}) =\frac{C}{(1-B)}+Avech(\epsilon_{t-1}\epsilon_{t-1}')+ABvech(\epsilon_{t-2}\epsilon_{t-2}')+AB^2vech(\epsilon_{t-3}\epsilon_{t-3}')+......\tag9

如上,我们得到了VECH形式的BEKK(\infty ,0)模型。

向前一步的波动脉冲(t=1)Hafner and Herwartz (2006)中的公式(8)

原文中这一步跳步是比较厉害的。我们由上一节的公式(9)开始。

要计算 V_1(\xi_0)=E[vech(\Sigma_1)|\xi_0,F_{-1}]-E[vech(\Sigma_1)|F_{-1}] ,我们先分别计算每一部分。我们首先计算 vech(\Sigma_1) ,由公式(9),得:

vech(\Sigma_{1}) =\frac{C}{(1-B)}+Avech(\epsilon_{0}\epsilon_{0}')+ABvech(\epsilon_{-1}\epsilon_{-1}')+AB^2vech(\epsilon_{-2}\epsilon_{-2}')+......\tag{10}

则,

E[vech(\Sigma_1)|\xi_0,F_{-1}]=\frac{C}{(1-B)}+\\AE(vech(\epsilon_{0}\epsilon_{0}')|\xi_0,F_{-1})+ABE(vech(\epsilon_{-1}\epsilon_{-1}'|\xi_0,F_{-1}))+AB^2E(vech(\epsilon_{-2}\epsilon_{-2}'|\xi_0,F_{-1}))+......

=\frac{C}{(1-B)}+\\AE(vech(\epsilon_{0}\epsilon_{0}')|\xi_0,F_{-1})+ABvech(\epsilon_{-1}\epsilon_{-1}')+AB^2vech(\epsilon_{-2}\epsilon_{-2}')+......

=\frac{C}{(1-B)}+\\AE(vech(\Sigma_0)|\xi_0,F_{-1})+ABvech(\epsilon_{-1}\epsilon_{-1}'|\epsilon_{-1})+AB^2vech(\epsilon_{-2}\epsilon_{-2}'|\epsilon_{-2})+......

=\frac{C}{(1-B)}+\\Avech(\Sigma_0^{1/2}\xi_0\xi_0'\Sigma_0^{1/2})+ABvech(\epsilon_{-1}\epsilon_{-1}'|\epsilon_{-1})+AB^2vech(\epsilon_{-2}\epsilon_{-2}'|\epsilon_{-2})+......\tag{11}

同理,

E[vech(\Sigma_1)|\xi_0,F_{-1}]=\frac{C}{(1-B)}+\\Avech (\Sigma_0)+ABvech(\epsilon_{-1}\epsilon_{-1}'|\epsilon_{-1})+AB^2vech(\epsilon_{-2}\epsilon_{-2}'|\epsilon_{-2})+......\tag{12}

由公式(11)和公式(12),得:

V_1(\xi_0)=E[vech(\Sigma_1)|\xi_0,F_{-1}]-E[vech(\Sigma_1)|F_{-1}]\\ =A(vech(\Sigma_0^{1/2}\xi_0\xi_0'\Sigma_0^{1/2})-vech(\Sigma_0))\tag{13}

由此我们得到了Hafner and Herwartz (2006)中的公式(8)。

进一步:

A(vech(\Sigma_0^{1/2}\xi_0\xi_0'\Sigma_0^{1/2})-vech(\Sigma_0))\\ =A(D_N^+vec(\Sigma_0^{1/2}\xi_0\xi_0'\Sigma_0^{1/2})-D_N^+vec(\Sigma_0))\\ =AD_N^+(vec(\Sigma_0^{1/2}\xi_0\xi_0'\Sigma_0^{1/2})-vec(\Sigma_0))\\ =AD_N^+(vec(\Sigma_0^{1/2}\xi_0\xi_0'\Sigma_0^{1/2})-vec(\Sigma_0^{1/2}\Sigma_0^{1/2}))\\ =AD_N^+(\Sigma_0^{1/2}\otimes \Sigma_0^{1/2} vec(\xi_0\xi_0')-\Sigma_0^{1/2}\otimes \Sigma_0^{1/2} vec(I_N))\\ =AD_N^+\Sigma_0^{1/2}\otimes \Sigma_0^{1/2} (vec(\xi_0\xi_0')- vec(I_N))\\ =AD_N^+\Sigma_0^{1/2}\otimes \Sigma_0^{1/2} vec(\xi_0\xi_0'- I_N)\\

由此我们得到:

A(vech(\Sigma_0^{1/2}\xi_0\xi_0'\Sigma_0^{1/2})-vech(\Sigma_0))\\ =AD_N^+\Sigma_0^{1/2}\otimes \Sigma_0^{1/2}D_N vech(\xi_0\xi_0'- I_N)\tag{14}

向前两步的波动脉冲(t=2)

Hafner and Herwartz (2006)中的公式(9)和公式(10)

下面推导Hafner and Herwartz (2006)中的公式(9)和公式(10)。我们先来推导一下t=2时的情形,在由此推导t>=2时的case。

由本文的公式(9),得:

vech(\Sigma_{2}) =\frac{C}{(1-B)}+Avech(\epsilon_{1}\epsilon_{1}')+ABvech(\epsilon_{0}\epsilon_{0}')+AB^2vech(\epsilon_{-1}\epsilon_{-1}')+......\tag{15}

由公式(15)带入Hafner and Herwartz (2006)中的公式(8)

E[vech(\Sigma_2)|\xi_0,F_{-1}]=\\ \frac{C}{(1-B)}+AE(vech(\epsilon_{1}\epsilon_{1}')|\xi_0,F_{-1})+ABE(vech(\epsilon_{0}\epsilon_{0}')|\xi_0,F_{-1})+AB^2E(vech(\epsilon_{-1}\epsilon_{-1}')|\xi_0,F_{-1})+......\tag{16}

再计算公式(16)之前,我们先证明两个引理:

引理1: E(\epsilon_{t}\epsilon_{t}')=E(\Sigma_t)\tag{17}

证明: E(\epsilon_{t}\epsilon_{t}')=E(E(\epsilon_{t}\epsilon_{t}'|F_{t-1}))=E(\Sigma_t)

引理2: E(vech(\epsilon_{t}\epsilon_{t}'))=C+(A+B)E(vech(\epsilon_{t-1}\epsilon_{t-1}'))\tag{18}

证明: E(vech(\epsilon_{t}\epsilon_{t}'))=E(vech(\Sigma_t))\\ =E(C+Avech(\epsilon_{t-1}\epsilon_{t-1}')+Bvech(\Sigma_{t-1}))\\ =C+AE(vech(\epsilon_{t-1}\epsilon_{t-1}'))+BE(vech(\Sigma_{t-1}))\\ =C+AE(vech(\epsilon_{t-1}\epsilon_{t-1}'))+BE(vech(\Sigma_{t-1}))\\ =C+(A+B)E(vech(\epsilon_{t-1}\epsilon_{t-1}'))\\

注意,公式(18)不适用于条件添加条件概率,因为 E(\epsilon_{t}\epsilon_{t}')=\Sigma_t 的前提是 E(\epsilon_{t})=0 ,而添加了条件概率后 E(\epsilon_{t}|F_{t-1})\ne0 。我们重新回到公式(16),利用这两个引理:

E[vech(\Sigma_2)|\xi_0,F_{-1}]=\\ \frac{C}{(1-B)}+AE(vech(\epsilon_{1}\epsilon_{1}')|\xi_0,F_{-1})+ABE(vech(\epsilon_{0}\epsilon_{0}')|\xi_0,F_{-1})+AB^2E(vech(\epsilon_{-1}\epsilon_{-1}')|\xi_0,F_{-1})+......\\ =\frac{C}{(1-B)}+AE(vech(\Sigma_t)|\xi_0,F_{-1})+ABE(vech(\epsilon_{0}\epsilon_{0}')|\xi_0,F_{-1})+AB^2E(vech(\epsilon_{-1}\epsilon_{-1}')|\xi_0,F_{-1})+......\\ =\frac{C}{(1-B)}+A\Sigma_0^{1/2}\xi_0\xi_0'\Sigma_0^{1/2}+AB\Sigma_0^{1/2}\xi_0\xi_0'\Sigma_0^{1/2}+AB^2E(vech(\epsilon_{-1}\epsilon_{-1}')|\epsilon_{-1})+......

同理,

E[vech(\Sigma_2)|F_{-1}]=\\ \frac{C}{(1-B)}+AE(vech(\epsilon_{1}\epsilon_{1}')|F_{-1})+ABE(vech(\epsilon_{0}\epsilon_{0}')|F_{-1})+AB^2E(vech(\epsilon_{-1}\epsilon_{-1}')|F_{-1})+......\\ =\frac{C}{(1-B)}+AE(vech(\Sigma_t)|F_{-1})+ABE(vech(\epsilon_{0}\epsilon_{0}')|F_{-1})+AB^2E(vech(\epsilon_{-1}\epsilon_{-1}')|F_{-1})+......\\ =\frac{C}{(1-B)}+A\Sigma_0+AB\Sigma_0+AB^2E(vech(\epsilon_{-1}\epsilon_{-1}')|\epsilon_{-1})+......

则,

V_2(\xi_0)=E[vech(\Sigma_2)|\xi_0,F_{-1}]-E[vech(\Sigma_2)|F_{-1}]\\ =(A+B)V_1(\xi_0)\\ =(A+B)AD_N^+\Sigma_0^{1/2}\otimes \Sigma_0^{1/2}D_N vech(\xi_0\xi_0'- I_N)\tag{19}

向前t步的波动脉冲

由上一节的内容我们似乎看出了迭代的影子,我们不妨先定义一个 V_0(\xi_0) ,再尝试用数学归纳法。

V_0(\xi_0)=E[vech(\Sigma_0)|\xi_0,F_{-1}]-E[vech(\Sigma_0)|F_{-1}]\\ =D_N^+\Sigma_0^{1/2}\otimes \Sigma_0^{1/2}D_N vech(\xi_0\xi_0'- I_N)\tag{20}

由此,我们得到 V_1(\xi_0)=AV_0(\xi_0)\tag{21}

我们不难计算出 V_3(\xi_0)=AV_2(\xi_0)+ABV_1(\xi_0)+AB^2V_0(\xi_0)\tag{22}

可以归纳出 V_t(\xi_0)=\sum_{i=1}^{t}AB^{i-1}V_{t-i}(\xi_0)\tag{23}

我们对公式(23)进行变形:

V_t(\xi_0)=\sum_{i=1}^{t}AB^{i-1}V_{t-i}(\xi_0)\\ =AV_{t-1}(\xi_0)+\sum_{i=2}^{t}AB^{i-1}V_{t-i}(\xi_0)\\ =AV_{t-1}(\xi_0)+B\sum_{i=1}^{t-1}AB^{i-1}V_{(t-1)-i}(\xi_0)\\ =AV_{t-1}(\xi_0)+BV_{t-1}(\xi_0)\\ =(A+B)V_{t-1}(\xi_0)\tag{24}

由此我们完整推导出了Hafner and Herwartz (2006)中的公式(9)和公式(10)。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3