Skip to contents

Computes the GOGARCH log-likelihood given estimated GARCH parameters and ICA transformation matrices. This function is used in the E-step of the EM algorithm for Markov-Switching GOGARCH models.

Usage

compute_gogarch_loglik_ms(
  residuals,
  garch_pars,
  ica_info,
  distribution = "norm",
  return_vector = FALSE
)

Arguments

residuals

Numeric matrix of residuals with dimensions T x k.

garch_pars

List of GARCH parameters for each component.

ica_info

List containing ICA transformation matrices (A, W, K).

distribution

Character string specifying the component distribution.

return_vector

Logical; if TRUE, return per-observation log-likelihoods. Default is FALSE.

Value

Scalar total log-likelihood, or vector of per-observation values if return_vector = TRUE.

Details

The GOGARCH log-likelihood consists of two parts:

1. Component Log-Likelihoods

For each independent component \(i\) and time \(t\): $$LL_{i,t} = \log f(s_{i,t} | \sigma_{i,t})$$

2. Jacobian Adjustment

The ICA transformation introduces a Jacobian term: $$LL_{jacobian} = \log |det(K)|$$ where \(K\) is the pre-whitening matrix from ICA.

Total Log-Likelihood $$LL = \sum_t \sum_i LL_{i,t} + \log |det(K)|$$

See also