BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
kennyip
Calcite | Level 5

How would I program a Garch in mean model that also has a moving average term?

1 ACCEPTED SOLUTION

Accepted Solutions
dw_sas
SAS Employee

Hi,

 

I assume the MA term is to be specified in the model for the mean.  If my assumption is correct, then you might want to consider using PROC MODEL.  An example of a GARCH-in-mean model specified in PROC MODEL can be found at the following link:

 

http://support.sas.com/kb/60/808.html#ets_webex.garchex.garchm

 

PROC MODEL also supports a %MA macro, which can be used to model an MA error process.  For more details on fitting a moving average model in PROC MODEL, please see the following documentation link:

 

http://go.documentation.sas.com/?docsetId=etsug&docsetTarget=etsug_model_sect153.htm&docsetVersion=1... 

 

PROC AUTOREG might be another alternative for you to consider.  The first link above includes an example of fitting a GARCH-in-mean model in PROC AUTOREG.  The NLAG= option on the MODEL statement in PROC AUTOREG is used to specify an autoregressive error process.  The autoregressive error model is an MA(infinite) model as shown below:

 

y_t = x_t*beta + u_t = x_t*beta + (I-Phi*L)^(-1)*eps_t

 

You would need to determine the appropriate NLAG= value, since you are using an MA(infinite) to mimic an MA(q), where MA(infinite) is the inverse of AR(NLAG).  More details on PROC AUTOREG can be found at the following documentation link:

 

http://go.documentation.sas.com/?docsetId=etsug&docsetTarget=etsug_autoreg_toc.htm&docsetVersion=14....

 

I hope this helps!

DW

 

View solution in original post

1 REPLY 1
dw_sas
SAS Employee

Hi,

 

I assume the MA term is to be specified in the model for the mean.  If my assumption is correct, then you might want to consider using PROC MODEL.  An example of a GARCH-in-mean model specified in PROC MODEL can be found at the following link:

 

http://support.sas.com/kb/60/808.html#ets_webex.garchex.garchm

 

PROC MODEL also supports a %MA macro, which can be used to model an MA error process.  For more details on fitting a moving average model in PROC MODEL, please see the following documentation link:

 

http://go.documentation.sas.com/?docsetId=etsug&docsetTarget=etsug_model_sect153.htm&docsetVersion=1... 

 

PROC AUTOREG might be another alternative for you to consider.  The first link above includes an example of fitting a GARCH-in-mean model in PROC AUTOREG.  The NLAG= option on the MODEL statement in PROC AUTOREG is used to specify an autoregressive error process.  The autoregressive error model is an MA(infinite) model as shown below:

 

y_t = x_t*beta + u_t = x_t*beta + (I-Phi*L)^(-1)*eps_t

 

You would need to determine the appropriate NLAG= value, since you are using an MA(infinite) to mimic an MA(q), where MA(infinite) is the inverse of AR(NLAG).  More details on PROC AUTOREG can be found at the following documentation link:

 

http://go.documentation.sas.com/?docsetId=etsug&docsetTarget=etsug_autoreg_toc.htm&docsetVersion=14....

 

I hope this helps!

DW

 

SAS Innovate 2025: Register Now

Registration is now open for SAS Innovate 2025 , our biggest and most exciting global event of the year! Join us in Orlando, FL, May 6-9.
Sign up by Dec. 31 to get the 2024 rate of just $495.
Register now!

Multiple Linear Regression in SAS

Learn how to run multiple linear regression models with and without interactions, presented by SAS user Alex Chaplin.

Find more tutorials on the SAS Users YouTube channel.

Discussion stats
  • 1 reply
  • 992 views
  • 0 likes
  • 2 in conversation