Friday, February 12, 2016

Rolling Regression

Rolling approaches (also known as rolling regression, recursive regression or reverse recursive regression) are often used in time series analysis to assess the stability of the model parameters with respect to time.

A common assumption of time series analysis is that the model parameters are time-invariant. However, as the economic environment often changes, it may be reasonable to examine whether the model parameters are also constant over time. One technique to assess the constancy of the model parameters is to compute the parameter estimates over a rolling window with a fixed sample size through the entire sample. If the parameters are truly constant over the entire sample, then the rolling estimates over the rolling windows will not change much. If the parameters change at some point in the sample, then the rolling estimates will show how the estimates have changed over time.

EViews does not have an extensive rolling regression functionality built-in, but it does offer different ways to perform rolling regressions:

  1. Write an EViews program: we can estimate an equation for each sample in the roll, and then save the results. The following EViews forum posts provided detailed examples.

You can also find more detailed examples of rolling regression under your Help menu in EViews. Go to: Help/Quick Reference/Sample Programs & Data/ then click the roll link for detailed examples.
  1. The "Roll" Add-In is a simple EViews program that is integrated into EViews, allowing you to execute the rolling regression program from a single equation object.
  1. Use the EViews rolling regression User Object: EViews allows us to create a new roll object and store various coefficients or statistics from each iteration of the roll. 

Download and Install Roll User Object

To download and install the object class definitions from the EViews website, go to EViews file menu and select Add-ins/Download User Objects, and select the Roll user object from the list box. Click on the Install button to download the Roll user object.

After completing the automatic installation procedure, EViews will report the status of the installation:

Once we have registered the roll user object, we can think of it as a built-in EViews object. More information about registering user objects can be found at our online help site.

Rolling Regression User Object Applied Example

In the following example, we will use the EViews workfile “Demo.wf1” that was saved to your computer when EViews was installed. The file can be found on your hard drive at: \EViews 9\Example Files\EV9 Manual Data\Chapter 02 - A Demonstration.

Consider the least square analysis of an univariate time series LOG(M1) using a sample from 1952Q2 to 1992Q4 in EQ01. To assess the constancy of the parameters of C, LOG(GDP), RS and DLOG(PR), we will create a new Roll object by clicking on Object/New Object and then select roll in the list of object types:

Click on OK, EViews will ask users to create a new Roll object from an existing equation or manually:

Since we will use the existing equation EQ01 in our workfile, click OK to accept the default. Then, we will see the next dialog which asks us to select the type of rolling regression:

Rolling Type

Fixed window: the window size specifies the fixed number of observation in each window and the step size specifies how far ahead the window is moved each time:

Anchored at start (recursive rolling analysis): the starting date is fixed, and the window size grows as the ending date is advanced:

Anchored at end (reverse recursive rolling analysis): the ending date is fixed, and the window size shrinks as the starting date is advanced.
Select Fixed window and click OK to continue:

Click OK, EViews will display basic estimation information of the rolling regression:

In addition to the summary view, EViews will display information about the coefficient statistics, residual statistics, likelihood statistics, members of the object, and the standard label information view for the Roll object. Click on View/View rolling coefficient statistics to display a dialog prompting users to select the coefficients and statistics to display:

Since we would like to see the fluctuations in the coefficients over the sample period, select Point estimates and Standard errors:

There are considerable variations in the rolling estimates.

Click on Proc/Extract rolling coefficient statistics, this will allows users to save various coefficients or statistics from each iteration of the roll.


  1. I have used an eviews program to estimate rolling betas for 1200 stocks. however, the estiamtes are stores in a separate file for each stock. How can I view them together so I can copy into excel?


    2. Did you roll it for 1200 stocks at a go Or separately?

  2. sir

    How we want to know the size of the windows?


  3. Please how can you provide us with an example of how to estimate a state space VAR with the following variables GDP CPI FDI

  4. I am using student version of eviews. Would you please help me to get rolling function as it is not on my menu bar. Important function to perform various model.Is their any way to install add ins (roll function) in eviews as I think student version is not providing the same?

    1. The Student Version of EViews (no longer for sale) does not allow programming or add-ins, so you cannot use the add-in. The University Edition ( does allow add-ins and programming.

  5. This comment has been removed by the author.

  6. Thanks for this easy to understand thread on running rolling regressions on EViews. However, can the same be done if there's a lagged dependent variable (LDV)? It states that the rolling coefficients for LDV is not defined. Is there any way to get around this issue?

  7. please can some one tell me how to apply a rolling regression techniques .It would be big favour to me .Thank you in advance.Waiting for your favourable reply.please respond to my email

  8. Hi, I got a message suggest that "_group is not defined" after I rolled a regression and started to forecast, can you please help to fix it?