# cond_moments: Calculate conditional moments of GMAR, StMAR, or G-StMAR... In uGMAR: Estimate Univariate Gaussian and Student's t Mixture Autoregressive Models

## Description

`cond_moments` calculates the regime specific conditional means and variances and total conditional means and variances of the specified GMAR, StMAR or G-StMAR model.

## Usage

 ``` 1 2 3 4 5 6 7 8 9 10 11``` ```cond_moments( data, p, M, params, model = c("GMAR", "StMAR", "G-StMAR"), restricted = FALSE, constraints = NULL, parametrization = c("intercept", "mean"), to_return = c("regime_cmeans", "regime_cvars", "total_cmeans", "total_cvars") ) ```

## Arguments

 `data` a numeric vector or class `'ts'` object containing the data. `NA` values are not supported. `p` a positive integer specifying the autoregressive order of the model. `M` For GMAR and StMAR models:a positive integer specifying the number of mixture components. For G-StMAR models:a size (2x1) integer vector specifying the number of GMAR type components `M1` in the first element and StMAR type components `M2` in the second element. The total number of mixture components is `M=M1+M2`. `params` a real valued parameter vector specifying the model. For non-restricted models: Size (M(p+3)+M-M1-1x1) vector θ=(υ_{1},...,υ_{M}, α_{1},...,α_{M-1},ν) where υ_{m}=(φ_{m,0},φ_{m},σ_{m}^2) φ_{m}=(φ_{m,1},...,φ_{m,p}), m=1,...,M ν=(ν_{M1+1},...,ν_{M}) M1 is the number of GMAR type regimes. In the GMAR model, M1=M and the parameter ν dropped. In the StMAR model, M1=0. If the model imposes linear constraints on the autoregressive parameters: Replace the vectors φ_{m} with the vectors ψ_{m} that satisfy φ_{m}=C_{m}ψ_{m} (see the argument `constraints`). For restricted models: Size (3M+M-M1+p-1x1) vector θ=(φ_{1,0},...,φ_{M,0},φ, σ_{1}^2,...,σ_{M}^2,α_{1},...,α_{M-1},ν), where φ=(φ_{1},...,φ_{p}) contains the AR coefficients, which are common for all regimes. If the model imposes linear constraints on the autoregressive parameters: Replace the vector φ with the vector ψ that satisfies φ=Cψ (see the argument `constraints`). Symbol φ denotes an AR coefficient, σ^2 a variance, α a mixing weight, and ν a degrees of freedom parameter. If `parametrization=="mean"`, just replace each intercept term φ_{m,0} with the regimewise mean μ_m = φ_{m,0}/(1-∑φ_{i,m}). In the G-StMAR model, the first `M1` components are GMAR type and the rest `M2` components are StMAR type. Note that in the case M=1, the mixing weight parameters α are dropped, and in the case of StMAR or G-StMAR model, the degrees of freedom parameters ν have to be larger than 2. `model` is "GMAR", "StMAR", or "G-StMAR" model considered? In the G-StMAR model, the first `M1` components are GMAR type and the rest `M2` components are StMAR type. `restricted` a logical argument stating whether the AR coefficients φ_{m,1},...,φ_{m,p} are restricted to be the same for all regimes. `constraints` specifies linear constraints imposed to each regime's autoregressive parameters separately. For non-restricted models:a list of size (pxq_{m}) constraint matrices C_{m} of full column rank satisfying φ_{m}=C_{m}ψ_{m} for all m=1,...,M, where φ_{m}=(φ_{m,1},...,φ_{m,p}) and ψ_{m}=(ψ_{m,1},...,ψ_{m,q_{m}}). For restricted models:a size (pxq) constraint matrix C of full column rank satisfying φ=Cψ, where φ=(φ_{1},...,φ_{p}) and ψ=ψ_{1},...,ψ_{q}. The symbol φ denotes an AR coefficient. Note that regardless of any constraints, the autoregressive order is always `p` for all regimes. Ignore or set to `NULL` if applying linear constraints is not desired. `parametrization` is the model parametrized with the "intercepts" φ_{m,0} or "means" μ_{m} = φ_{m,0}/(1-∑φ_{i,m})? `to_return` calculate regimewise conditional means (`regime_cmeans`), regimewise conditional variances (`regime_cvars`), total conditional means (`total_cmeans`), or total conditional variances (`total_cvars`)?

## Value

Note that the first p observations are taken as the initial values so the conditional moments start form the p+1:th observation (interpreted as t=1).

if `to_return=="regime_cmeans"`:

a size ((n_obs-p)xM) matrix containing the regime specific conditional means.

if `to_return=="regime_cvars"`:

a size ((n_obs-p)xM) matrix containing the regime specific conditional variances.

if `to_return=="total_cmeans"`:

a size ((n_obs-p)x1) vector containing the total conditional means.

if `to_return=="total_cvars"`:

a size ((n_obs-p)x1) vector containing the total conditional variances.

## References

• Galbraith, R., Galbraith, J. 1974. On the inverses of some patterned matrices arising in the theory of stationary time series. Journal of Applied Probability 11, 63-71.

• Kalliovirta L. (2012) Misspecification tests based on quantile residuals. The Econometrics Journal, 15, 358-393.

• Kalliovirta L., Meitz M. and Saikkonen P. 2015. Gaussian Mixture Autoregressive model for univariate time series. Journal of Time Series Analysis, 36, 247-266.

• Meitz M., Preve D., Saikkonen P. 2021. A mixture autoregressive model based on Student's t-distribution. Communications in Statistics - Theory and Methods, doi: 10.1080/03610926.2021.1916531

• Virolainen S. 2021. A mixture autoregressive model based on Gaussian and Student's t-distributions. Studies in Nonlinear Dynamics & Econometrics,doi: 10.1515/snde-2020-0060

Other moment functions: `get_regime_autocovs()`, `get_regime_means()`, `get_regime_vars()`, `uncond_moments()`
 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13 14``` ```# GMAR model, regimewise conditional means and variances params12 <- c(1.70, 0.85, 0.30, 4.12, 0.73, 1.98, 0.63) cond_moments(simudata, p=1, M=2, params=params12, model="GMAR", to_return="regime_cmeans") cond_moments(simudata, p=1, M=2, params=params12, model="GMAR", to_return="regime_cvars") # G-StMAR-model, total conditional means and variances params42gs <- c(0.04, 1.34, -0.59, 0.54, -0.36, 0.01, 0.06, 1.28, -0.36, 0.2, -0.15, 0.04, 0.19, 9.75) cond_moments(M10Y1Y, p=4, M=c(1, 1), params=params42gs, model="G-StMAR", to_return="total_cmeans") cond_moments(M10Y1Y, p=4, M=c(1, 1), params=params42gs, model="G-StMAR", to_return="total_cvars") ```