Learn R Programming

MSTest (version 0.1.5)

simuMSVAR: Simulate Markov-switching vector autoregressive process

Description

This function simulates a Markov-switching vector autoregressive process.

Usage

simuMSVAR(mdl_h0, burnin = 100)

Value

List with simulated vector autoregressive series and its DGP parameters.

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.

Examples

Run this code
set.seed(1234)
# Define DGP of MS VAR process
mdl_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() function
y_msvar_simu <- simuMSVAR(mdl_msvar2)

plot(y_msvar_simu)

Run the code above in your browser using DataLab