# loglikelihood: Compute the log-likelihood of GMAR, StMAR, or G-StMAR model In uGMAR: Estimate Univariate Gaussian and Student's t Mixture Autoregressive Models

## Description

`loglikelihood` computes the log-likelihood of the specified GMAR, StMAR, or G-StMAR model. Exists for convenience if one wants to for example plot profile log-likelihoods or employ other estimation algorithms. Use `minval` to control what happens when the parameter vector is outside the parameter space.

## Usage

 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13``` ```loglikelihood( data, p, M, params, model = c("GMAR", "StMAR", "G-StMAR"), restricted = FALSE, constraints = NULL, conditional = TRUE, parametrization = c("intercept", "mean"), return_terms = FALSE, minval = NA ) ```

## 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. `conditional` a logical argument specifying whether the conditional or exact log-likelihood function should be used. `parametrization` is the model parametrized with the "intercepts" φ_{m,0} or "means" μ_{m} = φ_{m,0}/(1-∑φ_{i,m})? `return_terms` should the terms l_{t}: t=1,..,T in the log-likelihood function (see KMS 2015, eq.(13) or MPS 2018, eq.(15)) be returned instead of the log-likelihood value? `minval` this will be returned when the parameter vector is outside the parameter space and `boundaries==TRUE`.

## Value

Returns the log-likelihood value or the terms described in `return_terms`.

## 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

`fitGSMAR`, `GSMAR`, `quantile_residuals`, `mixing_weights`, `calc_gradient`
 ```1 2 3 4 5 6 7 8``` ```# GMAR model params12 <- c(1.70, 0.85, 0.30, 4.12, 0.73, 1.98, 0.63) loglikelihood(simudata, p=1, M=2, params=params12, model="GMAR") # G-StMAR-model 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) loglikelihood(M10Y1Y, p=4, M=c(1, 1), params=params42gs, model="G-StMAR") ```