Statistics and Algorithms / GARCH Models / GARCH Models (Univariate) / UV GARCH Graphing Variances |
If you want to graph volatility estimates, it’s usually better to graph the estimated standard deviations rather than the variances themselves—detail on much of the data range (where the variance is relatively low) will be lost in comparison to the expected peaks if you do the variances directly. (100-1 ratios from high to low in variance aren’t that uncommon, which converts to a more manageable 10-1 in standard deviation form). Also, graphing variances across an entire (sometimes very long) data range can also lose detail.
GARCHUV.RPF computes and graphs standard deviations from three models over roughly 100 data points. The HSERIES option is used in each model to save the variances (into separately named series), and those are transformed to standard deviations for the graph.
garch(p=0,q=6,hseries=hh06) / dlogdm
garch(p=1,q=1,hseries=hh11) / dlogdm
garch(p=1,q=1,exp,asymm,hseries=hhea) / dlogdm
set h06 = sqrt(hh06)
set h11 = sqrt(hh11)
set hea = sqrt(hhea)
graph(key=below,header="Estimated Standard Deviations",$
klabels=||"ARCH6","EGARCH11","GARCH11"||) 3
# h06 1770 *
# hea 1770 *
# h11 1770 *
Graph
This is the graph done in the example code about (standard deviations over about 100 observations).
This is a graph of the variances over the whole range. Obviously, it loses the detail to compare the estimates.
Copyright © 2025 Thomas A. Doan