Skip to contents

The class BSVAR presents complete specification for the homoskedastic bsvar model.

Public fields

p

a non-negative integer specifying the autoregressive lag order of the model.

identification

an object IdentificationBSVAR with the identifying restrictions.

prior

an object PriorBSVAR with the prior specification.

data_matrices

an object DataMatricesBSVAR with the data matrices.

starting_values

an object StartingValuesBSVAR with the starting values.

Methods


Method new()

Create a new specification of the homoskedastic bsvar model BSVAR.

Usage

specify_bsvar$new(
  data,
  p = 1L,
  B,
  exogenous = NULL,
  stationary = rep(FALSE, ncol(data))
)

Arguments

data

a (T+p)xN matrix with time series data.

p

a positive integer providing model's autoregressive lag order.

B

a logical NxN matrix containing value TRUE for the elements of the structural matrix \(B\) to be estimated and value FALSE for exclusion restrictions to be set to zero.

exogenous

a (T+p)xd matrix of exogenous variables.

stationary

an N logical vector - its element set to FALSE sets the prior mean for the autoregressive parameters of the Nth equation to the white noise process, otherwise to random walk.

Returns

A new complete specification for the homoskedastic bsvar model BSVAR.


Method get_data_matrices()

Returns the data matrices as the DataMatricesBSVAR object.

Usage

specify_bsvar$get_data_matrices()

Examples

data(us_fiscal_lsuw)
spec = specify_bsvar$new(
   data = us_fiscal_lsuw,
   p = 4
)
spec$get_data_matrices()


Method get_identification()

Returns the identifying restrictions as the IdentificationBSVARs object.

Usage

specify_bsvar$get_identification()

Examples

data(us_fiscal_lsuw)
spec = specify_bsvar$new(
   data = us_fiscal_lsuw,
   p = 4
)
spec$get_identification()


Method get_prior()

Returns the prior specification as the PriorBSVAR object.

Usage

specify_bsvar$get_prior()

Examples

data(us_fiscal_lsuw)
spec = specify_bsvar$new(
   data = us_fiscal_lsuw,
   p = 4
)
spec$get_prior()


Method get_starting_values()

Returns the starting values as the StartingValuesBSVAR object.

Usage

specify_bsvar$get_starting_values()

Examples

data(us_fiscal_lsuw)
spec = specify_bsvar$new(
   data = us_fiscal_lsuw,
   p = 4
)
spec$get_starting_values()


Method clone()

The objects of this class are cloneable with this method.

Usage

specify_bsvar$clone(deep = FALSE)

Arguments

deep

Whether to make a deep clone.

Examples

data(us_fiscal_lsuw)
spec = specify_bsvar$new(
   data = us_fiscal_lsuw,
   p = 4
)
#> The identification is set to the default option of lower-triangular structural matrix.


## ------------------------------------------------
## Method `specify_bsvar$get_data_matrices`
## ------------------------------------------------

data(us_fiscal_lsuw)
spec = specify_bsvar$new(
   data = us_fiscal_lsuw,
   p = 4
)
#> The identification is set to the default option of lower-triangular structural matrix.
spec$get_data_matrices()
#> <DataMatricesBSVAR>
#>   Public:
#>     X: -10.6660327703266 -10.6935259109068 -8.41420587851191 -1 ...
#>     Y: -10.6725356416822 -10.6388624265757 -8.42993325328991 -1 ...
#>     clone: function (deep = FALSE) 
#>     get_data_matrices: function () 
#>     initialize: function (data, p = 1L, exogenous = NULL) 


## ------------------------------------------------
## Method `specify_bsvar$get_identification`
## ------------------------------------------------

data(us_fiscal_lsuw)
spec = specify_bsvar$new(
   data = us_fiscal_lsuw,
   p = 4
)
#> The identification is set to the default option of lower-triangular structural matrix.
spec$get_identification()
#> <IdentificationBSVARs>
#>   Public:
#>     VB: list
#>     clone: function (deep = FALSE) 
#>     get_identification: function () 
#>     initialize: function (N, B) 
#>     set_identification: function (N, B) 


## ------------------------------------------------
## Method `specify_bsvar$get_prior`
## ------------------------------------------------

data(us_fiscal_lsuw)
spec = specify_bsvar$new(
   data = us_fiscal_lsuw,
   p = 4
)
#> The identification is set to the default option of lower-triangular structural matrix.
spec$get_prior()
#> <PriorBSVAR>
#>   Public:
#>     A: 1 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  ...
#>     A_V_inv: 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0  ...
#>     B_V_inv: 1 0 0 0 1 0 0 0 1
#>     B_nu: 3
#>     clone: function (deep = FALSE) 
#>     get_prior: function () 
#>     hyper_a_A: 10
#>     hyper_a_B: 10
#>     hyper_nu_A: 10
#>     hyper_nu_AA: 10
#>     hyper_nu_B: 10
#>     hyper_nu_BB: 1
#>     hyper_s_AA: 10
#>     hyper_s_BB: 100
#>     initialize: function (N, p, d = 0, stationary = rep(FALSE, N)) 


## ------------------------------------------------
## Method `specify_bsvar$get_starting_values`
## ------------------------------------------------

data(us_fiscal_lsuw)
spec = specify_bsvar$new(
   data = us_fiscal_lsuw,
   p = 4
)
#> The identification is set to the default option of lower-triangular structural matrix.
spec$get_starting_values()
#> <StartingValuesBSVAR>
#>   Public:
#>     A: 0.86933144275099 0 0 0 0.0450389527250081 0 0 0 0.129346 ...
#>     B: 1 0 0 0 1 0 0 0 1
#>     clone: function (deep = FALSE) 
#>     get_starting_values: function () 
#>     hyper: 10 10 10 10 10 10 10 10 10 10 10 10 10 10
#>     initialize: function (N, p, d = 0) 
#>     set_starting_values: function (last_draw)