bekk_spec {BEKKs}R Documentation

BEKK specification method


Method for creating a N-dimensional BEKK model specification object prior to fitting and/or simulating.


  model = list(type = "bekk", asymmetric = FALSE),
  init_values = NULL,
  signs = NULL,
  N = NULL



A list containing the model type specification: Either "bekk" "dbekk" or "sbekk". Moreover it can be specified whether the model should be estimated allowing for asymmetric volatility structure.


initial values for bekk_fit during BHHH algorithm. It can be either a numerical vector of suitable dimension, 'NULL' (default) to use a simple grid search algorithm, or a character vector i.e. "random" to use a random starting value generator (set a seed in advance for reproducible results), or "simple" for relying on a simple initial values generator based on typical values for BEKK parameter found in the literature. If the object from this function is passed to simulate, "init_values" are used as parameters for data generating process.


An N-dimensional vector consisting of "1" or "-1" to indicate the asymmetric effects to be considered. Setting the i-th element of the vector to "1" or "-1" means that the model takes into account additional volatility if the returns of the i-th column in the data matrix are either positive or negative. If "asymmetric = TRUE", the default is set to "rep(-1, N)" i.e. it is assumed that excess volatility occurs for all series if the returns are negative.


Integer specifying the dimension of the BEKK model. Only relevant when this object of class "bekkSpec"" is used for simulating BEKK processes by applying it to simulate.


Returns a S3 class "bekkSpec" object containing the specifications of the model to be estimated.



# Fitting a symmetric BEKK model using default starting values
# - i.e. fixed values
obj_spec_fixed <- bekk_spec(init_values = NULL)
x1 <- bekk_fit(obj_spec_fixed, StocksBonds, QML_t_ratios = FALSE,
max_iter = 50, crit = 1e-9)
# Fitting a symmetric BEKK model using initial values originating from a
# random grid search algorithm
obj_spec_random <- bekk_spec(init_values = "random")
x2 <- bekk_fit(obj_spec_random, StocksBonds, QML_t_ratios = FALSE,
max_iter = 50, crit = 1e-9)
# Fitting an asymmetric BEKK model with default starting values
obj_spec_fix <- bekk_spec(model = list(type = "bekk", asymmetric = TRUE),
init_values = NULL)
x1 <- bekk_fit(obj_spec_fix, StocksBonds)
obj_spec_random <- bekk_spec(model = list(type = "bekk", asymmetric = TRUE),
init_values = "random")
x2 <- bekk_fit(obj_spec_random, StocksBonds)

[Package BEKKs version 1.4.4 Index]