weightfun_parscheck_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).