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 2024

Innovate_SAS_Blue.png

Registration is open! SAS is returning to Vegas for an AI and analytics experience like no other! Whether you're an executive, manager, end user or SAS partner, SAS Innovate is designed for everyone on your team. Register for just $495 by 12/31/2023.

If you are interested in speaking, there is still time to submit a session idea. More details are posted on the website. 

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
  • 608 views
  • 0 likes
  • 2 in conversation