My question is how to make code when I model GARCH volatility by adding explanatory variable.
For example, I would like to add variable X(short-term interest rate) in the conditional variance equation of stock market return (Y). This means that the volatility of stock market returns at time t is affected by short-term interest rate at time t. Please let me know the code sample, assuming simple GARCH(1,1) model.
Yes. The equivalent AUTOREG code for the MODEL code I supplied is:
proc autoreg data=drate;
model y = / garch=(p=1,q=1);
hetero x / coef=nonneg;
run;
Here's an example of a GARCH(1,1) model using PROC MODEL which includes a simple linear dependence of the volatility on interest rate. The data set 'drate' would contain an endogenous variable 'y' of stock market returns, and 'x' of interest rates.
proc model data=dratee;
/* Mean model */
y = sret;
/* Variance model ----------------*/
h.y = b*x
+ arch0 + arch1*xlag(resid.y**2, mse.y) + garch1*xlag(h.y, mse.y);
bounds b arch0 arch1 garch1 >= 0;
fit y / fiml;
quit;
Thanks a lot. Then can I also try PROC AUTOREG with HETERO option?
For example,
PROC AUTOREG DATA=RETURN;
MODEL Y=A B / GARCH=(P=1,Q=1);
HETERO TBOND;
RUN;
Yes. The equivalent AUTOREG code for the MODEL code I supplied is:
proc autoreg data=drate;
model y = / garch=(p=1,q=1);
hetero x / coef=nonneg;
run;
April 27 – 30 | Gaylord Texan | Grapevine, Texas
Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and lock in 2025 pricing—just $495!