weightfun_pars
check_weightfun_pars
checks that the argument weightfun_pars
.
is correctly set, if not, tries to correct them.
check_weightfun_pars(
data,
p,
M,
d,
weight_function = c("relative_dens", "logistic", "mlogit", "exponential", "threshold",
"exogenous"),
weightfun_pars = NULL,
cond_dist = c("Gaussian", "Student", "ind_Student", "ind_skewed_t")
)
Does checks the argument weightfun_pars
and throws an error if something is wrong; returns
a corrected version of the argument if possible.
a matrix or class 'ts'
object with d>1
columns. Each column is taken to represent
a univariate time series. Missing values are not supported.
a positive integer specifying the autoregressive order
a positive integer specifying the number of regimes
What type of transition weights \(\alpha_{m,t}\) should be used?
"relative_dens"
:\(\alpha_{m,t}= \frac{\alpha_mf_{m,dp}(y_{t-1},...,y_{t-p+1})}{\sum_{n=1}^M\alpha_nf_{n,dp}(y_{t-1},...,y_{t-p+1})}\), where \(\alpha_m\in (0,1)\) are weight parameters that satisfy \(\sum_{m=1}^M\alpha_m=1\) and \(f_{m,dp}(\cdot)\) is the \(dp\)-dimensional stationary density of the \(m\)th regime corresponding to \(p\) consecutive observations. Available for Gaussian conditional distribution only.
"logistic"
:\(M=2\), \(\alpha_{1,t}=1-\alpha_{2,t}\), and \(\alpha_{2,t}=[1+\exp\lbrace -\gamma(y_{it-j}-c) \rbrace]^{-1}\), where \(y_{it-j}\) is the lag \(j\) observation of the \(i\)th variable, \(c\) is a location parameter, and \(\gamma > 0\) is a scale parameter.
"mlogit"
:\(\alpha_{m,t}=\frac{\exp\lbrace \gamma_m'z_{t-1} \rbrace} {\sum_{n=1}^M\exp\lbrace \gamma_n'z_{t-1} \rbrace}\), where \(\gamma_m\) are coefficient vectors, \(\gamma_M=0\), and \(z_{t-1}\) \((k\times 1)\) is the vector containing a constant and the (lagged) switching variables.
"exponential"
:\(M=2\), \(\alpha_{1,t}=1-\alpha_{2,t}\), and \(\alpha_{2,t}=1-\exp\lbrace -\gamma(y_{it-j}-c) \rbrace\), where \(y_{it-j}\) is the lag \(j\) observation of the \(i\)th variable, \(c\) is a location parameter, and \(\gamma > 0\) is a scale parameter.
"threshold"
:\(\alpha_{m,t} = 1\) if \(r_{m-1}<y_{it-j}\leq r_{m}\) and \(0\) otherwise, where \(-\infty\equiv r_0<r_1<\cdots <r_{M-1}<r_M\equiv\infty\) are thresholds \(y_{it-j}\) is the lag \(j\) observation of the \(i\)th variable.
"exogenous"
:Exogenous nonrandom transition weights, specify the weight series in weightfun_pars
.
See the vignette for more details about the weight functions.
weight_function == "relative_dens"
:Not used.
weight_function %in% c("logistic", "exponential", "threshold")
:a numeric vector with the switching variable \(i\in\lbrace 1,...,d \rbrace\) in the first and the lag \(j\in\lbrace 1,...,p \rbrace\) in the second element.
weight_function == "mlogit"
:a list of two elements:
$vars
:a numeric vector containing the variables that should used as switching variables in the weight function in an increasing order, i.e., a vector with unique elements in \(\lbrace 1,...,d \rbrace\).
$lags
:an integer in \(\lbrace 1,...,p \rbrace\) specifying the number of lags to be used in the weight function.
weight_function == "exogenous"
:a size (nrow(data) - p
x M
) matrix containing the exogenous
transition weights as [t, m]
for time \(t\) and regime \(m\). Each row needs to sum to one and only weakly positive
values are allowed.
specifies the conditional distribution of the model as "Gaussian"
, "Student"
, "ind_Student"
,
or "ind_skewed_t"
, where "ind_Student"
the Student's \(t\) distribution with independent components, and
"ind_skewed_t"
is the skewed \(t\) distribution with independent components (see Hansen, 1994).