bsvars / bsvars

Bayesian Estimation of Structural Vector Autoregressive Models
http://bsvars.org/bsvars/
Other
43 stars 9 forks source link

Number of variables #95

Closed AndrewGuiseppe closed 1 week ago

AndrewGuiseppe commented 2 months ago

Dear Tomasz Wozniak @donotdespair

First of all, thanks so much for the fantastic updates you have included in the "bsvars" package.

I have a question regarding the number of variables we include in the Bayesian SVAR model. Would estimating a model with five variables instead of six variables affect the results? So, should I always care about reducing the number of variables included in my BSVAR model?

Thanks, Andrew

donotdespair commented 2 months ago

Hi @AndrewGuiseppe

Thanks so much for reaching out and for your kind words about the package!

Now, your questions is about the empirical modelling and an issue of data. The answer is yes, inclusion of a variable might change the results substantially. The reason is the regular missing variable bias: if you miss an important variable in your econometrics model then you might be introducing bias to your estimates. In other words, all the relevant factors/variables must be included in the model to claim reliability of your results.

One should never aim at reducing the number of variables in the model. The academic literature in th last 15 years was rather looking at how to include as many variables as possible with some examples of using around 120 variables in a BVAR.

The question is how you introduce the variable in your model. Your case seems like an obvious example that you need to include it amongst endogenous variables. For instance, let's consider a homoskedastic SVAR. To include a new variable in the model you need to expand the matrix provided to argument data of the specify_bsvar$new() function.

However, with some other variables that you must control for, but are not crutial to address your question of interest, you might consider including them amongst exogenous variables. In such a case, provide a matrix with these variables (and their lags) to argument exogenous of the specify_bsvar$new() function.

Please, let me know how it goes and if I could be more helpful.

Best Regards, Tomasz @donotdespair