kalman_loglikelihood¶
Defined in fynance.features.filters
- kalman_loglikelihood(e, S)[source]
Prediction-error decomposition log-likelihood.
Computes:
L = -0.5 * sum_t [ log|S_t| + e_t^T S_t^{-1} e_t + n log(2π) ]
- Parameters:
- enp.ndarray of shape (T, n)
Innovations from
kalman_filter.- Snp.ndarray of shape (T, n, n)
Innovation covariances from
kalman_filter.
- Returns:
- float
Log-likelihood value (higher is better).
Examples
>>> import numpy as np >>> rng = np.random.default_rng(0) >>> y = rng.standard_normal((20, 1)) >>> G = F = W = V = np.eye(1) >>> m, C, a, R, e, S = kalman_filter(y, G, F, W, V) >>> ll = kalman_loglikelihood(e, S) >>> isinstance(ll, float) True >>> ll < 0 True