BookmarkSubscribeRSS Feed
Obsidian | Level 7

I am trying to understand following algorithm, but am having some trouble understanding what's happening under the hood in step 3, i.e regression under yule-walker framework and obtaining significance levels through that. Would appreciate any insight into how this works.


The STEPAR Algorithm
The STEPAR method consists of the following computational steps:

 1. Fit the trend model as specified by the TREND= option by using
    ordinary least-squares regression. This step detrends the data. The
    default trend model for the STEPAR method is TREND=2, a linear trend
 2. Take the residuals from step 1 and compute the autocovariances to
        the number of lags specified by the NLAGS= option.
 3. Regress the current values against the lags, using the
        autocovariances from step 2 in a Yule-Walker framework. Do not bring
        in any autoregressive parameter that is not significant at the level
        specified by the SLENTRY= option. (The default is SLENTRY=0.20.) Do
        not bring in any autoregressive parameter that results in a
        nonpositive-definite Toeplitz matrix.
 4. Find the autoregressive parameter that is least significant. If the
        significance level is greater than the SLSTAY= value, remove the
        parameter from the model. (The default is SLSTAY=0.05.) Continue
        this process until only significant autoregressive parameters
        remain. If the OUTEST= option is specified, write the estimates to
        the OUTEST= data set.

 5. Generate the forecasts by using the estimated model and output to
        the OUT= data set. Form the confidence limits by combining the trend
        variances with the autoregressive variances.




Just reflecting on your title, containing 'PROC FORECAST'.

The FORECAST procedure is obsolete and has been superseded by newer SAS/ETS procedures. These newer procedures provide more powerful and flexible versions of the forecasting methods that PROC FORECAST uses, and they also provide additional forecasting methods that are not available in PROC FORECAST.

See the documentation for things to be aware of and alternatives (before choosing to use PROC FORECAST).

Do you want me to find out the appropriate alternative (in other PROCs) for the PROC FORECAST STEPAR method?? I think you might find hits in other procedures documentation by searching after 'stepwise autoregression' or 'stepwise autoregressive' but that might not be exactly the same as STEPAR method from PROC FORECAST.



Obsidian | Level 7
Hi @sbxkoenk,
Understand your point on better alternatives on PROC FORECAST.
However, the model was built by a separate group and I'm running some tests on it. Just wanted to get more details or reference on STEPAR as I'm not able to grasp the details from the documentation in its current form.


Which part of the documentation is not clear: The Yule-Walker framework (aka the Yule-Walker equations)?

I may help you if you specify exactly what subject / topic you need more elaborate information on.

Just copy/paste what is not clear from this page:


Obsidian | Level 7
Hi Koen, sorry for not clarifying better. Yes, I was asking about the Yule-Walker framework:
"Regress the current values against the lags, using the autocovariances from step 2 in a Yule-Walker framework"

Do you have any documentation that specifies the framework in more detail?



I guess with the Yule-Walker framework,
the documentation is referring to the rather famous Yule-Walker (set of simultaneous) equations.

I have documentation, but unfortunately only in hardcopy-format (not online). And it's a bit cumbersome to describe in a communities post.

Do you have the Forecasting book of Makridakis et al.? There this topic is (briefly) introduced.

In that book, for the Yule-Walker equations, they also refer to:
"Box and Jenkins (1976), pp. 55, 60, 64, 68 and further details are also available in Appendix 9-A."

Box and Jenkins are the "fathers" of the ARIMA-methodology, hence Yule-Walker is already quite old (but still heavily used!!!!). I would think lots of information is on the Internet. But you need to find a site that has a good balance between depth and readability of course. That's not always easy 😕😕.


Maybe others can chime in?


Good luck,


Obsidian | Level 7

Thanks Koen,


Appreciate the info. What threw me off was the line:

Regress the current values against the lags, using the autocovariances from step 2 in a Yule-Walker framework

But according to what you're saying, it looks like straightforward application of Yule-Walker equations.

It looks like with every iteration of the backstep process, subsets of the toeplitz matrix P & p (from PΦ = -p) are taken according to the remaining lags.


Just an additional clarification, how are significance values being calculated for these parameters?


Hello @promo_at_work ,


I THINK (!) it's a straightforward application of Yule-Walker equations.


  > Just an additional clarification, how are significance values being calculated for these parameters?

Unfortunately I don't know (without me doing some research) what the test-statistic of the hypothesis is and what the distribution of the test statistic is for a null hypothesis being true.


I hope you can sort it out.

Good luck,




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
  • 7 replies
  • 2 in conversation