Forecasting using SAS Forecast Server, SAS/ETS, and more

How does Forecast server computes _FORECAST_ values

Accepted Solution Solved
Reply
Occasional Contributor
Posts: 5
Accepted Solution

How does Forecast server computes _FORECAST_ values

Hi,

 

In the attachement you can find the output of an ARIMA model with 4 parameters (no intercept): AR1, AR7, MA1 & MA7. I calculated the Yt-1, Yt-7, et-1 & et-7 by myself & multiplied with the parameter estimates:

 

This is my equation:

Yt = 0.91689*Yt-1 + 0.99625*Yt-7 - 0.734927Et-1 - 0.78277Et-7

 

The issue is now that my outcome is not the same as the outcome sas provides. For the first 10 observations however I have the same result, both afterwards I have a big difference.

 

Can anyone help me understanding the difference?

 

 

Kind regards,

Olivier

 

 


Accepted Solutions
Solution
‎05-20-2016 05:41 PM
SAS Super FREQ
Posts: 79

Re: How does Forecast server computes _FORECAST_ values

AR((1) (7)) = (1 - ar1*B)(1 - ar7*B**7)Yt

                  = (1 - ar1*B - ar7*B**7 + ar1*ar7*B**8)Yt

                  =  Yt - ar1*Yt-1 - ar7*Yt-7 + ar1*ar7*Yt-8

 

Same applies to MA. So the equation should be

 

Yt = 0.91689*Yt-1 + 0.99625*Yt-7 -(0.91689 * 0.99625)*Yt-8

      - 0.734927Et-1 - 0.78277Et-7 +(0.734927 * 0.78277)*Et-8

View solution in original post


All Replies
SAS Super FREQ
Posts: 79

Re: How does Forecast server computes _FORECAST_ values

Could you take a look at the Modeling View table and see the exact ARIMA specification for this model? Also what is the interval for t? It goes from 1 to 838 and then back to 1 again? 

thanks

alex

Occasional Contributor
Posts: 5

Re: How does Forecast server computes _FORECAST_ values

Hi Alex thx for the reply,

Below some more details + prints from the modeling view:

[image: Inline image 1]

*Name:* LEAF_4COPY1
*Description:* ""
*Details:* "ARIMA: NBR_SALES ~ P = ((1)(7)) Q = ((1)(7)) NOINT"
*Model family:* ARIMA
*Model type:* SUBSETARIMA
*Source:* FSUI *Intercept: *None
*Forecast variable:* NBR_SALES
*Delay:* 0
*Differencing:* ( 0 )
*P:* ( 1 ) ( 7 )
*Q:* ( 1 ) ( 7 )
Estimation Options *Method:* CLS
*Convergence criterion:* 0.001
*Number of iterations:* 50
*Delta:* 0.001
*Singularity criterion:* 1E-7
*Grid value:* 0.005
*Restrict parameters to stable values:* Yes
* NOLS:* 0

##- Please type your reply above this line. Simple formatting, no
attachments. -##
Occasional Contributor
Posts: 5

Re: How does Forecast server computes _FORECAST_ values

Hi Alex,

 

Below you can find a printscreen of the modeling view. I suppose the parameter estimates is what you interests most?

 

Kind regards,

 

Olivier

SAS Super FREQ
Posts: 79

Re: How does Forecast server computes _FORECAST_ values

It looks like the forecast server is picking a factored ARIMA models. For example, P((1)(7)) = (1-ar1*B)*(1-ar7*B**7), not (1-ar1*B - ar7*B**7). 

 

Below is some more info about the factored ARIMA models.

 

Subset, Seasonal, and Factored ARMA Models

Factored Models

A factored model (also referred to as a multiplicative model) represents the ARIMA model as a product of simpler ARIMA models. For example, you might model SALES as a combination of an AR(1) process that reflects short term dependencies and an AR(12) model that reflects the seasonal pattern.

It might seem that the way to do this is with the option P=(1 12), but the AR(1) process also operates in past years; you really need autoregressive parameters at lags 1, 12, and 13. You can specify a subset model with separate parameters at these lags, or you can specify a factored model that represents the model as the product of an AR(1) model and an AR(12) model. Consider the following two ESTIMATE statements:

      identify var=sales;
      estimate p=(1 12 13);
      estimate p=(1)(12);

The mathematical form of the autoregressive models produced by these two specifications are shown in Table 8.2.

 

Table 8.2: Subset versus Factored Models

Option

Autoregressive Operator

P=(1 12 13)

${(1-{\phi }_{1}{B}-{\phi }_{12}{B}^{12}-{\phi }_{13}{B}^{13})}$

P=(1)(12)

${(1-{\phi }_{1}{B})(1-{\phi }_{12}{B}^{12})}$

 

Both models fit by these two ESTIMATE statements predict SALES from its values 1, 12, and 13 periods ago, but they use different parameterizations. The first model has three parameters, whose meanings may be hard to interpret.

The factored specification P=(1)(12) represents the model as the product of two different AR models. It has only two parameters: one that corresponds to recent effects and one that represents seasonal effects. Thus the factored model is more parsimonious, and its parameter estimates are more clearly interpretable.

Occasional Contributor
Posts: 5

Re: How does Forecast server computes _FORECAST_ values

Hi Alex,

I am not really familiar with this notation, how would you rewrite the
equation below?


Yt = 0.91689*Yt-1 + 0.99625*Yt-7 - 0.734927Et-1 - 0.78277Et-7

Kind regards,
Olivier


##- Please type your reply above this line. Simple formatting, no
attachments. -##
Solution
‎05-20-2016 05:41 PM
SAS Super FREQ
Posts: 79

Re: How does Forecast server computes _FORECAST_ values

AR((1) (7)) = (1 - ar1*B)(1 - ar7*B**7)Yt

                  = (1 - ar1*B - ar7*B**7 + ar1*ar7*B**8)Yt

                  =  Yt - ar1*Yt-1 - ar7*Yt-7 + ar1*ar7*Yt-8

 

Same applies to MA. So the equation should be

 

Yt = 0.91689*Yt-1 + 0.99625*Yt-7 -(0.91689 * 0.99625)*Yt-8

      - 0.734927Et-1 - 0.78277Et-7 +(0.734927 * 0.78277)*Et-8

Occasional Contributor
Posts: 5

Re: How does Forecast server computes _FORECAST_ values

Thx!

##- Please type your reply above this line. Simple formatting, no
attachments. -##
☑ This topic is SOLVED.

Need further help from the community? Please ask a new question.

Discussion stats
  • 7 replies
  • 748 views
  • 0 likes
  • 2 in conversation