I am building a trading strategy that predicts the current period returns using historical returns (think e.g. using an estimated OLS model to predict next weeks return based on this weeks return). However, I am at loss in picking the window I should use for estimating the model.

The way I see it, there are two ways I can do this: a) pick a fixed window length - e.g. 1 year (52 weekly observations), and re-estimate the model every week. However, depending on the asset the slope of the regression tends to change, and is especially suspect to few 'outlier' cases, which makes me question whether the model is still theoretically sound. b) use all available data, and roll to window forward every week, re-estimating the model. However, if the relationship is time variant, I think this approach will lead to extended periods of negative returns if there is a break in the model that a shorter window might capture better.

How should I go about determining which method to use? I could of course back test different filtering strategies based on these two, but the more complicated, the more risk of overfitting IMO, and hence I'd prefer a more simplistic but statistically sound method for determining which way to go.

Any suggestions? Would also love to read good papers that deal with this issue if any come to mind.

  • $\begingroup$ I would always uae as many observations as possible, so in rolling window update the model after a week feeding it all the data. $\endgroup$
    – Jan Sila
    Aug 5, 2016 at 23:22
  • $\begingroup$ Also if outliers are an issue, look into robust methods of least squares, ifor bootstrapping(" (randomly selecting say 80% of data, estimate the model and save the beta, then do it again few hundred times). But there isnt be any universally 'correct way' to estimate returns.... $\endgroup$
    – Jan Sila
    Aug 5, 2016 at 23:25
  • $\begingroup$ Have you tried testing which window length and update frequency is optimal under some metric? EDIT: Using a training and hold-out sample. $\endgroup$
    – dmanuge
    Aug 6, 2016 at 4:06
  • $\begingroup$ @JanSila, regarding your first comment, this is called expanding window. Meanwhile, while rolling window has fixed lenght, so it drops the oldest observation once a new one becomes available. $\endgroup$ Aug 8, 2016 at 19:39

1 Answer 1


Which strategy will work better is an empirical question that depends on the data at hand. That is, you cannot prove theoretically that one approach is better than the other without some extra assumptions.

I could of course back test different filtering strategies based on these two, but the more complicated, the more risk of overfitting IMO

As long as you properly split the sample into a training and test subsamples, model complexity does not play a role. A model that overfits in the training sample will perform poorly in the test sample, and you will see it.

(Of course, if you have a large number of alternative models, one or a few of them may perform well in both the training and the test subsample due to pure luck; but it does not seem you are facing this kind of setting.)


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.