Which Stochastic Volatility Specification Should My VAR Use?
Based on Chan (2023)
[ Journal Version | Working Paper | Code | Full tutorial on GitHub ]
In this tutorial we compare five specifications of the error covariance matrix of a Bayesian VAR by their marginal likelihoods: constant volatility (VAR-NCP), one common volatility factor (VAR-CSV), one volatility process per equation under a Cholesky parameterization (VAR-SV), a few volatility factors (VAR-FSV), and VAR-SV with an outlier component (VAR-SVO). Chan (2023) estimates the marginal likelihoods by integrating out the VAR coefficients analytically and the log-volatilities by adaptive importance sampling.
The application is a five-variable quarterly VAR of the unemployment rate, PCE inflation, the federal funds rate, financial conditions and GDP growth from 1973 to 2024. VAR-SVO has the highest log marginal likelihood, -1008.8. VAR-SV is 9.9 below it, VAR-FSV 13.2, VAR-CSV 120.9 and VAR-NCP 578.6. The outlier component marks three quarters as outliers with posterior probability 0.97 or more: 2008Q4, 2020Q2 and 2020Q3.
Part of the difference between VAR-SV and VAR-CSV comes from the prior. Restricting VAR-SV to a single shrinkage hyperparameter for own and other lags lowers its log marginal likelihood by 65.7, three fifths of the 111 between the two.

Figure 1: The posterior mean of the common standard-deviation multiplier eht/2 under VAR-CSV (top) and the posterior probability that a quarter is an outlier under VAR-SVO (bottom), 1973Q1 to 2024Q4. The two panels come from two models, so the figure shows which quarters each one marks and leaves open what either would do without the other's component. The multiplier runs from 0.36 in 2018Q2 to 10.64 in 2020Q2; the outlier probability passes one half in 2008Q4, 2020Q2 and 2020Q3.
Try it
In MATLAB, from the root of a copy of bvar-toolkit:
run tutorials/sv_specification/your_data.m: the comparison on the same five series with short chains, and the exported report (under a minute)run tutorials/sv_specification/build.m: every number and figure in the full tutorial (14 minutes)