post_normal_covar_tvp {bvartools}R Documentation

Posterior Simulation of Error Covariance Coefficients

Description

Produces posterior draws of time varying error covariance coefficients.

Usage

post_normal_covar_tvp(y, u_omega_i, v_sigma_i, psi_init)

Arguments

y

a K×TK \times T matrix of data with KK as the number of endogenous variables and TT the number of observations.

u_omega_i

matrix of error variances of the measurement equation. Either a K×KK \times K matrix for constant variances or a KT×KTKT \times KT matrix for time varying variances.

v_sigma_i

matrix of error variances of the state equation. Either an M×MM \times M matrix for constant variances or an MT×MTMT \times MT matrix for time varying variances, where MM is the number of estimated variables.

psi_init

a vector of inital values of the state equation.

Details

For the multivariate model A0,tyt=utA_{0,t} y_t = u_t with utN(0,Ωt)u_t \sim N(0, \Omega_t) the function produces a draw of the lower triangular part of A0,tA_{0,t} similar as in Primiceri (2005), i.e., using

yt=Ztψt+ut,y_t = Z_t \psi_t + u_t,

where

Zt=[00y1,t000y[1,2],t000y[1,...,K1],t]Z_{t} = \begin{bmatrix} 0 & \dotsm & \dotsm & 0 \\ -y_{1, t} & 0 & \dotsm & 0 \\ 0 & -y_{[1,2], t} & \ddots & \vdots \\ \vdots & \ddots & \ddots & 0 \\ 0 & \dotsm & 0 & -y_{[1,...,K-1], t} \end{bmatrix}

and y[1,...,K1],ty_{[1,...,K-1], t} denotes the first to (K1)(K-1)th elements of the vector yty_t.

The algorithm of Chan and Jeliazkov (2009) is used to obtain time varying coefficients.

Value

A matrix.

References

Chan, J., & Jeliazkov, I. (2009). Efficient simulation and integrated likelihood estimation in state space models. International Journal of Mathematical Modelling and Numerical Optimisation, 1(1/2), 101–120. doi:10.1504/IJMMNO.2009.030090

Primiceri, G. E. (2005). Time varying structural vector autoregressions and monetary policy. The Review of Economic Studies, 72(3), 821–852. doi:10.1111/j.1467-937X.2005.00353.x

Examples

# Load example data
data("e1")
y <- log(t(e1))

# Generate artificial draws of other matrices
u_omega_i <- diag(1, 3)
v_sigma_i <- diag(1000, 3)
psi_init <- matrix(0, 3)

# Obtain posterior draw
post_normal_covar_tvp(y, u_omega_i, v_sigma_i, psi_init)


[Package bvartools version 0.2.4 Index]