Other Forms of the Model
Yield-Only Model
You may want to use yield-only models in which macros is an empty set. In such instances, set macros = [] and rho = [] for all functions.
Unrestricted JSZ model
Our model is the three-factor JSZ(Joslin, Singleton, and Zhu, 2011) model. Under our default option, the JSZ model is constrained by the AFNS(Christensen, Diebold, and Rudebusch, 2011) restriction. Under this restriction, the eigenvalues of the risk-neutral slope matrix are [1, exp(-kappaQ), exp(-kappaQ)].
The package also allows you to estimate three distinct eigenvalues through an option. However, in this case, you must specify prior distributions for the three eigenvalues. These prior distributions should be in the form of Distribution objects from the Distributions.jl package. For example, the following prior distributions can be specified:
kappaQ_prior_pr = [truncated(Normal(0.9, 0.05), -1, 1), truncated(Normal(0.9, 0.05), -1, 1), truncated(Normal(0.9, 0.05), -1, 1)]The kappaQ_prior_pr containing the prior distributions is a vector of length 3, and each entry is an object from the Distributions.jl package. kappaQ_prior_pr[i] is the prior distribution of the i-th diagonal element of the slope matrix of the VAR system under the risk-neutral measure.
After constructing kappaQ_prior_pr, it should be input as a keyword argument in functions that require the kappaQ_prior_pr variable (notably tuning_hyperparameter and posterior_sampler). If kappaQ_prior_pr is not provided, the model automatically operates under the AFNS constraint.
Note that when setting prior distributions, "the prior expectation of the slope matrix[1:3, 1:3] of the first lag of the VAR model under the physical measure" is set to diagm(mean.(kappaQ_prior_pr)) under the unrestricted JSZ model. Therefore, the prior distributions of the eigenvalues should be set to reflect the prior expectations under the physical measure to some extent.
The notation for the three eigenvalues is kappaQ. Therefore, kappaQ is a three-dimensional vector under the unrestricted JSZ model. In contrast, kappaQ is a scalar that represents the DNS decay parameter under the AFNS restriction.