Simulate simple autoregressive MIDAS model
Given the predictor variable, the weights and autoregressive coefficients, simulate MIDAS regression response variable.
midas_auto_sim( n, alpha, x, theta, rand_gen = rnorm, innov = rand_gen(n, ...), n_start = NA, ... )
n
: sample size.alpha
: autoregressive coefficients.x
: a high frequency predictor variable.theta
: a vector with MIDAS weights for predictor variable.rand_gen
: a function to generate the innovations, default is the normal distribution.innov
: an optional time series of innovations.n_start
: number of observations to omit for the burn.in....
: additional arguments to function rand_gen
.a ts
object
theta_h0 <- function(p, dk) { i <- (1:dk-1)/100 pol <- p[3]*i + p[4]*i^2 (p[1] + p[2]*i)*exp(pol) } ##Generate coefficients theta0 <- theta_h0(c(-0.1,10,-10,-10),4*12) ##Generate the predictor variable xx <- ts(arima.sim(model = list(ar = 0.6), 1000 * 12), frequency = 12) y <- midas_auto_sim(500, 0.5, xx, theta0, n_start = 200) x <- window(xx, start=start(y)) midas_r(y ~ mls(y, 1, 1) + fmls(x, 4*12-1, 12, theta_h0), start = list(x = c(-0.1, 10, -10, -10)))
Virmantas Kvedaras, Vaidotas Zemlys