Simulate Markov-switching vector autoregressive process
Simulate Markov-switching vector autoregressive process
This function simulates a Markov-switching vector autoregressive process.
simuMSVAR(mdl_h0, burnin =100)
Arguments
mdl_h0: List containing the following DGP parameters
n: Length of series.
k: Number of regimes.
mu: A (k x q) matrix of means.
sigma: List with k (q x q) covariance matrices.
phi: A (q x qp) matrix of autoregressive coefficients.
p: Number of autoregressive lags.
q: Number of series.
P: A (k x k) transition matrix (columns must sum to one).
eps: An optional (T+burnin x q) matrix with standard normal errors to be used. Errors will be generated if not provided.
burnin: Number of simulated observations to remove from beginning. Default is 100.
Returns
List with simulated vector autoregressive series and its DGP parameters.
Examples
set.seed(1234)# Define DGP of MS VAR processmdl_msvar2 <- list(n =1000, p =1, q =2, mu = rbind(c(5,-2), c(10,2)), sigma = list(rbind(c(5.0,1.5), c(1.5,1.0)), rbind(c(7.0,3.0), c(3.0,2.0))), phi = rbind(c(0.50,0.30), c(0.20,0.70)), k =2, P = rbind(c(0.90,0.10), c(0.10,0.90)))# Simulate process using simuMSVAR() functiony_msvar_simu <- simuMSVAR(mdl_msvar2)plot(y_msvar_simu)