Is it possible to triangularize the VAR system in order to orthogonalize the innovations?
1 回表示 (過去 30 日間)
古いコメントを表示
Dear community,
I have a question about the estimation of Vector Autoregressive Models (VAR) using the Econometrics Toolbox. Is there any way to triangularize the VAR system in order to orthogonalize the innovations? As I understand it, is also called a recursive system. Any hints are greatly appreciated. Thanks in advance!
0 件のコメント
回答 (1 件)
Hang Qian
2016 年 5 月 14 日
Hi Richard,
I think it depends on the VAR specification.
If the triangularized model looks like
Y(t) = A1 * Y(t-1) + A2 * Y(t-2) + B * e(t),
where B is lower triangular and e(t) is N(0,1) noise without correlation,
then we can call the function VGXVARX to estimate a reduced-form VAR(2) model. The output EstSpec has a field EstSpec.Q, which is the estimated covariance matrix. Since B*B’ = Q, by cholesky decomposition chol(EstSpec.Q,’lower’), the loading matrix B is identified and recovered.
However, if the structural model is not exactly identified, say we’d like some contemporaneous matrix A0 such that
A0*Y(t) = A1 * Y(t-1) + A2 * Y(t-2) + e(t),
then the first step is still to estimate a reduced-form VAR(2) model using VGXVARX.
Y(t) = inv(A0)*A1 * Y(t-1) + inv(A0) * A2 * Y(t-2) + inv(A0) * e(t).
Since A0 contains n^2 elements, they cannot be individually recovered from data alone. It is necessary to impose identification restrictions. For example, we may triangularize the model by assuming that A0 is lower triangular. Since VGXVARX has reported inv(A0)*A1, inv(A0)*A2 and inv(A0) * inv(A0)’, we can recover the parameter by hand:
invA0 = chol(EstSpec.Q,’lower’);
A0 = inv(invA0 );
A1 = A0 * EstSpec.AR{1};
A2 = A0 * EstSpec.AR{2};
Of course, I used inv for illustration purposes. Backslash is the MATLAB style to do the matrix inversion.
- Hang Qian
参考
カテゴリ
Help Center および File Exchange で Conditional Mean Models についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!