Learn R Programming

uGMAR (version 3.1.0)

loglikelihood_int: Compute the log-likelihood of GMAR, StMAR or G-StMAR model

Description

loglikelihood_int computes the log-likelihood value of the specified GMAR, StMAR or G-StMAR model for the given data.

Usage

loglikelihood_int(data, p, M, params, model = c("GMAR", "StMAR",
  "G-StMAR"), restricted = FALSE, constraints = NULL,
  conditional = TRUE, parametrization = c("intercept", "mean"),
  boundaries = TRUE, checks = TRUE, to_return = c("loglik", "mw",
  "mw_tplus1", "loglik_and_mw", "terms", "regime_cmeans", "regime_cvars",
  "total_cmeans", "total_cvars"), minval)

Arguments

data

a numeric vector class 'ts' object containing the data. NA values are not supported.

p

a positive integer specifying the order of AR coefficients.

M
For GMAR and StMAR models:

a positive integer specifying the number of mixture components.

For G-StMAR model:

a size (2x1) vector specifying the number of GMAR-type components M1 in the first element and StMAR-type components M2 in the second. The total number of mixture components is M=M1+M2.

params

a real valued parameter vector specifying the model.

For non-restricted models:

For GMAR model:

Size \((M(p+3)-1x1)\) vector \(\theta\)\(=\)(\(\upsilon_{1}\),...,\(\upsilon_{M}\), \(\alpha_{1},...,\alpha_{M-1}\)), where \(\upsilon_{m}\)\(=(\phi_{m,0},\)\(\phi_{m}\)\(, \sigma_{m}^2)\) and \(\phi_{m}\)=\((\phi_{m,1},...,\phi_{m,p}), m=1,...,M\).

For StMAR model:

Size \((M(p+4)-1x1)\) vector (\(\theta, \nu\))\(=\)(\(\upsilon_{1}\),...,\(\upsilon_{M}\), \(\alpha_{1},...,\alpha_{M-1}, \nu_{1},...,\nu_{M}\)).

For G-StMAR model:

Size \((M(p+3)+M2-1x1)\) vector (\(\theta, \nu\))\(=\)(\(\upsilon_{1}\),...,\(\upsilon_{M}\), \(\alpha_{1},...,\alpha_{M-1}, \nu_{M1+1},...,\nu_{M}\)).

With linear constraints:

Replace the vectors \(\phi_{m}\) with vectors \(\psi_{m}\) and provide a list of constraint matrices C that satisfy \(\phi_{m}\)\(=\)\(R_{m}\psi_{m}\) for all \(m=1,...,M\), where \(\psi_{m}\)\(=(\psi_{m,1},...,\psi_{m,q_{m}})\).

For restricted models:

For GMAR model:

Size \((3M+p-1x1)\) vector \(\theta\)\(=(\phi_{1,0},...,\phi_{M,0},\)\(\phi\)\(, \sigma_{1}^2,...,\sigma_{M}^2,\alpha_{1},...,\alpha_{M-1})\), where \(\phi\)=\((\phi_{1},...,\phi_{M})\).

For StMAR model:

Size \((4M+p-1x1)\) vector (\(\theta, \nu\))\(=(\phi_{1,0},...,\phi_{M,0},\)\(\phi\)\(, \sigma_{1}^2,...,\sigma_{M}^2,\alpha_{1},...,\alpha_{M-1}, \nu_{1},...,\nu_{M})\).

For G-StMAR model:

Size \((3M+M2+p-1x1)\) vector (\(\theta, \nu\))\(=(\phi_{1,0},...,\phi_{M,0},\)\(\phi\)\(, \sigma_{1}^2,...,\sigma_{M}^2,\alpha_{1},...,\alpha_{M-1}, \nu_{M1+1},...,\nu_{M})\).

With linear constraints:

Replace the vector \(\phi\) with vector \(\psi\) and provide a constraint matrix \(C\) that satisfies \(\phi\)\(=\)\(R\psi\), where \(\psi\)\(=(\psi_{1},...,\psi_{q})\).

Symbol \(\phi\) denotes an AR coefficient, \(\sigma^2\) a variance, \(\alpha\) a mixing weight and \(\nu\) a degrees of freedom parameter. If parametrization=="mean" just replace each intercept term \(\phi_{m,0}\) with regimewise mean \(\mu_m = \phi_{m,0}/(1-\sum\phi_{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 parameter \(\alpha\) is dropped, and in the case of StMAR or G-StMAR model the degrees of freedom parameters \(\nu_{m}\) have to be larger than \(2\).

model

is "GMAR", "StMAR" or "G-StMAR" model considered? In 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 \(\phi_{m,1},...,\phi_{m,p}\) are restricted to be the same for all regimes.

constraints

specifies linear constraints applied to the autoregressive parameters.

For non-restricted models:

a list of size \((pxq_{m})\) constraint matrices \(C_{m}\) of full column rank satisfying \(\phi_{m}\)\(=\)\(C_{m}\psi_{m}\) for all \(m=1,...,M\), where \(\phi_{m}\)\(=(\phi_{m,1},...,\phi_{m,p})\) and \(\psi_{m}\)\(=(\psi_{m,1},...,\psi_{m,q_{m}})\).

For restricted models:

a size \((pxq)\) constraint matrix \(C\) of full column rank satisfying \(\phi\)\(=\)\(C\psi\), where \(\phi\)\(=(\phi_{1},...,\phi_{p})\) and \(\psi\)\(=\psi_{1},...,\psi_{q}\).

Symbol \(\phi\) denotes an AR coefficient. Note that regardless of any constraints, the nominal order of AR coefficients is alway 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" \(\phi_{m,0}\) or "means" \(\mu_m = \phi_{m,0}/(1-\sum\phi_{i,m})\)?

boundaries

a logical argument. If TRUE then loglikelihood returns minval if...

  • any component variance is not larger than zero,

  • any parametrized mixing weight \(\alpha_{1},...,\alpha_{M-1}\) is not larger than zero,

  • sum of the parametrized mixing weights is not smaller than one,

  • if the model is not stationary,

  • or if model=="StMAR" or model=="G-StMAR" and any degrees of freedom parameter \(\nu_{m}\) is not larger than two.

Argument minval will be used only if boundaries==TRUE.

checks

an (optional) logical argument defining whether argument checks are made. If FALSE then no argument checks such as stationary checks etc are made. The default is TRUE.

to_return

should the returned object be the log-likelihood value, mixing weights, mixing weights including value for \(alpha_{m,T+1}\), a list containing log-likelihood value and mixing weights, the terms \(l_{t}: t=1,..,T\) in the log-likelihood function (see KMS 2015, eq.(13)), regimewise conditional means, regimewise conditional variances, total conditional means or total conditional variances? Default is the log-likelihood value ("loglik").

minval

this will be returned when the parameter vector is outside the parameter space.

Value

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

By default:

log-likelihood value of the specified model,

If to_return=="mw":

a size ((n_obs-p)xM) matrix containing the mixing weights: for m:th component in m:th column.

If to_return=="mw_tplus1":

a size ((n_obs-p+1)xM) matrix containing the mixing weights: for m:th component in m:th column. The last row is for \(\alpha_{m,T+1}\).

if to_return=="loglik_and_mw":

a list of two elements. The first element contains the log-likelihood value and the second element contains the mixing weights.

If to_return=="terms":

a size ((n_obs-p)x1) numeric vector containing the terms \(l_{t}\).

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., 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. 2018. A mixture autoregressive model based on Student's t-distribution. arXiv:1805.04010 [econ.EM].

  • There are currently no published references for the G-StMAR model, but it's a straightforward generalization with theoretical properties similar to the GMAR and StMAR models.