Class InformationCriteria

java.lang.Object
com.quantfinlib.volatility.InformationCriteria

public final class InformationCriteria extends Object
AIC / BIC — the two numbers that keep model shopping honest. Every extra parameter raises the maximized log-likelihood by construction; these criteria charge admission for it:
   AIC = 2k - 2 ln L          (Akaike: prediction-oriented)
   BIC = k ln n - 2 ln L      (Schwarz: consistency-oriented)
 
LOWER is better for both. BIC's penalty grows with the sample size, so on large samples it picks smaller models than AIC — BIC will recover the true model as n grows (consistency) while AIC minimizes out-of-sample prediction error even when no candidate is "true". The rule of thumb: AIC for forecasting, BIC for identifying structure.

Both criteria only rank models fitted to the SAME data with likelihoods on the same scale — comparing an AIC computed on returns against one computed on squared returns is meaningless, and this class cannot detect that for you. Made for the volatility-model zoo here (Garch11 vs GjrGarch11 vs Egarch11: does the leverage parameter pay its way?), but the arithmetic is model-agnostic. Research lane.

  • Method Summary

    Modifier and Type
    Method
    Description
    static double
    aic(double logLikelihood, int parameters)
    Akaike information criterion 2k - 2 ln L.
    static double
    bic(double logLikelihood, int parameters, int observations)
    Bayesian (Schwarz) information criterion k ln n - 2 ln L.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Method Details

    • aic

      public static double aic(double logLikelihood, int parameters)
      Akaike information criterion 2k - 2 ln L.
      Parameters:
      logLikelihood - maximized log-likelihood ln L (finite)
      parameters - number of fitted parameters k, ≥ 0
    • bic

      public static double bic(double logLikelihood, int parameters, int observations)
      Bayesian (Schwarz) information criterion k ln n - 2 ln L.
      Parameters:
      logLikelihood - maximized log-likelihood ln L (finite)
      parameters - number of fitted parameters k, ≥ 0
      observations - sample size n the likelihood was computed over, ≥ 1