MCGRAPHIRF Procedure |
@MCGRAPHIRF takes a set of impulse response functions generated through some Monte Carlo process, saved properly into the %%RESPONSES array of series and generates a standard set of graphs with upper and lower confidence bands.
If you need more flexibility that this provides, use @MCPROCESSIRF instead and then do the graphs the way you want.
@MCGRAPHIRF( options )
Options
MODEL=model used in generating responses [you need to use this, since it's the source of other information]
SHOCKLABELS=VECT[STRINGS] of labels for the shocks [dependent variables of model]
VARLABELS=VECT[STRING] of labels for the variables [dependent variables of model]
INCLUDE=||list of dependent variables to show (in order, by position in model)|| [all]
INCLUDE can be used to eliminate some variables which aren't of special interest or to rearrange the panes on a graph. For instance, in a 6 variable VAR, INCLUDE=||6,1,3,4|| will show only the responses of those four variables (based upon their positions in the model) and will put the 6th variable in the top left.
ONLYSHOCKS=||list of shocks to show (in order, by position in %%responses)|| [all]
ONLYSHOCKS can be used to eliminate some shocks which aren't of special interest or to rearrange the panes on a graph. For instance, in a 6 variable VAR, ONLYSHOCKS=||5,1|| will show only the responses to the 5th and 1st shocks.
ACCUMULATE=||list of variables (by original position) to accumulate|| [none]
If you already did accumulation when you generated the impulse responses, don't repeat it here.
CENTER=[MEAN]/MEDIAN/INPUT
IMPULSES=RECT[SERIES] of central impulse responses for the graph
The CENTER option chooses what is shown as the "estimate" of the IRF. CENTER=MEAN and CENTER=MEDIAN are the mean and median of the drawn responses. If CENTER=INPUT, you must input the desired point estimates using the IMPULSES option—typically those would be the impulse responses at the original estimates for the VAR.
PERCENTILES=||percentiles for lower and upper bounds|| [||.16,.84||]
STDDEV=# of standard deviations from mean for lower and upper bounds [not used]
STDDEV is used for doing error bands based upon multiples of the sample standard deviations. For instance, STDDEV=1.0 will give upper and lower bounds that are one standard deviation above and below the central response. PERCENTILES is the default. It can give either two or four values, which should be ordered from low to high.
HEADER="title for graph"
FOOTER="footer for graph"
PAGE=[ALL]/ONE/BYSHOCK/BYVARIABLE
COLUMNS=# of columns on a page [depends upon number of graphs]
The PAGE option selects the layout of a single page of graphs.
PAGE=ALL (the default) does all responses to all shocks on a single page (shocks in columns, dependent variables in rows). Note that the panes get a bit small when you get more than four variables.
PAGE=ONE does one combination of shock and variable per page.
PAGE=BYSHOCK does a separate page for each shock, with all responses arranged in one or more columns.
PAGE=BYVARIABLE does a separate page for each variable, with all shocks arranged in one or more columns.
WEIGHTS=series of (relative) weights on the draws (from importance sampling) [equal weights]
Note that this can dramatically slow down the calculation if you ask for percentiles and have many (5000+) draws.
[COMMONSCALE]/NOCOMMONSCALE
COMMONSCALE uses a common graph scale for all graphs on a single page (for PAGE=BYSHOCK or PAGE=BYVARIABLE), or in a single row for PAGE=ALL. NOCOMMONSCALE allows each graph to have its own scale.
Examples
@MCGraphIRF(model=varmodel,center=mean,page=all,shocklabels=||"P","U","I"||)
graphs responses of all variables to all shocks on a single page (3 x 3 layout of graphs) using the means of the simulated values as the responses, with the default of .16 and .84 quantiles for the upper and lower bounds.
@MCGraphIRF(model=varmodel,shocklabels=shocklabels,varlabels=varlabels,$
center=input,impulses=baseirfs,percent=||.025,.16,.84,.975||,$
footer="Figure 7. Pointwise 68% and 95% Posterior Bands, B-Q Model")
graphs responses of all variables to all shocks on a single page (in this case, a 2 x 2 layout of graphs) using input responses (from the original estimates), with both 95% (the .025 and .975 quantiles) and 68% (.16 and .84) bands.
Copyright © 2025 Thomas A. Doan