HMmdl {MSTest} | R Documentation |
Hidden Markov model
Description
This function estimates a Hidden Markov model with k
regimes.
Usage
HMmdl(Y, k, Z = NULL, control = list())
Arguments
Y |
a |
k |
integer determining the number of regimes to use in estimation. Must be greater than or equal to |
Z |
an otpional |
control |
List with model options including:
|
Value
List of class HMmdl
(S3
object) with model attributes including:
y: a
(T x q)
matrix of observations.fitted: a
(T x q)
matrix of fitted values.resid: a
(T x q)
matrix of residuals.mu: a
(k x q)
matrix of estimated means of each process.beta: if
q=1
, this is a((1 + qz) x k)
matrix of estimated coefficients. Ifq>1
, this is a list containingk
separate((1 + qz) x q)
matrix of estimated coefficients for each regime.betaZ: a
(qz x q)
matrix of estimated exogenous regressor coefficients.intercept: a
(k x q)
matrix of estimated intercept of each process. If Z is Null, this is the same as mu.stdev: If
q=1
, this is a(k x 1)
matrix with estimated standard. Ifq>1
, this is a List withk
(q x q)
matrices with estimated standard deviation on the diagonal.sigma: If
q=1
, this is a(k x 1)
matrix with variances. Ifq>1
, this is a List withk
(q x q)
estimated covariance matrix.theta: vector containing:
mu
andvech(sigma)
.theta_mu_ind: vector indicating location of mean with
1
and0
otherwise.theta_sig_ind: vector indicating location of variance and covariances with
1
and0
otherwise.theta_var_ind: vector indicating location of variances with
1
and0
otherwise.theta_P_ind: vector indicating location of transition matrix elements with
1
and0
otherwise.n: number of observations (same as
T
).q: number of series.
k: number of regimes in estimated model.
P: a
(k x k)
transition matrix.pinf: a
(k x 1)
vector with limiting probabilities of each regime.St: a
(T x k)
vector with smoothed probabilities of each regime at each timet
.deltath: double with maximum absolute difference in vector
theta
between last iteration.iterations: number of EM iterations performed to achieve convergence (if less than
maxit
).theta_0: vector of initial values used.
init_used: number of different initial values used to get a finite solution. See description of input
maxit_converge
.msmu: Boolean. If
TRUE
model was estimated with switch in mean. IfFALSE
model was estimated with constant mean.msvar: Boolean. If
TRUE
model was estimated with switch in variance. IfFALSE
model was estimated with constant variance.control: List with model options used.
logLike: log-likelihood.
AIC: Akaike information criterion.
BIC: Bayesian (Schwarz) information criterion.
Hess: Hessian matrix. Approximated using
hessian
and only returned ifgetSE=TRUE
.info_mat: Information matrix. Computed as the inverse of
-Hess
. If matrix is not PD then nearest PD matrix is obtained usingnearest_spd
. Only returned ifgetSE=TRUE
.nearPD_used: Boolean determining whether
nearPD
function was used oninfo_mat
ifTRUE
or not ifFALSE
. Only returned ifgetSE=TRUE
.theta_se: standard errors of parameters in
theta
. Only returned ifgetSE=TRUE
.trace: List with Lists of estimation output for each initial value used due to
use_diff_init > 1
.
References
Dempster, A. P., N. M. Laird, and D. B. Rubin. 1977. “Maximum Likelihood from Incomplete Data via the EM Algorithm.” Journal of the Royal Statistical Society. Series B 39 (1): 1–38..
Hamilton, James D. 1990. “Analysis of time series subject to changes in regime.” Journal of econometrics, 45 (1-2): 39–70.
Krolzig, Hans-Martin. 1997. “The markov-switching vector autoregressive model.”. Springer.