Dear Prof. Pfeifer,
I am having a bit of trouble understanding how the welfare cost of business cycle works.
I attach two folders (BC_cost_1 and BC_cost_2) containing code that generate different welfare costs but I am not entirely sure why this is the case because they both have the same steady state values. The difference between the models in ‘BC_cost_1’ and ‘BC_cost_2’ is that in the former, the variable ‘ub’ evolves according to a rule but it is fixed in the latter. I am concerned because I am getting a negative business cycle cost in BC_cost_1’, and a positive cost in the other solely owing to this one variable (ub).
The calculation of the welfare cost happens in welfare.m between lines 5 to 13. In order to generate the welfare values, kindly please run the run.m file, and then welfare.m immediately after which then gives you the values for the business cycle cost.
The run.m file should run cycle_moments.mod and second_moments.m as it is set up. I placed identical ‘readme’ files in each folder which clarifies what each model file does.
The difference in BC costs appear to be driven by ‘correctionWelf’ – line 7 in welfare.m. But I don’t understand why this value is different given that they both have the same initial value of ‘Welf’ (welfare). This must be driven by the variable ‘ub’ but I am not sure how. Although the two models have the same steady states, I notice that they have different second moments which I also don’t understand. Is it because they react differently to technology shocks?
Any light you could shed would be much appreciated.