I am trying to test a hypothesis of a statistic calculated from portfolio returns. To do so I estimate a model on the original returns series and want to obtain 100 bootstrapped series using parametric bootstrap. I am conflicted about two approaches. But first let me say that I obtain the new returns as a mean plus a series of resampled residuals

$r = \mu + \varepsilon$

So the two approaches I am considering:

    • Estimate the model using the original returns
    • Obtain a new series of returns by using the mean and resampled residuals from the model
    • Estimate the model on the new series
    • Obtain the new series and so on...

In short I am resampling the new returns each time, so I am obtaining a single new series with each iteration.

    • Estimate the model on the original returns
    • Obtain 100 new return series by using the mean and resampled residuals from the model (each resampled series is different of course)

I am wondering which of the approaches is a correct method of parametric bootstrap. I am not including any details on the models and test statistics to keep the post simple, as only the method of obtaining the new return series is important here.

edit: To give some more info. The whole process simplified looks like this: I have a series of returns, I estimate a GARCH model, create two asset allocation strategies in-sample, calculate a statistic that shows which strategy is better. And now I want to know if the result is statistically significant. To do so I want to do a parametric bootstrap using the estimated GARCH model. I take the $\mu$ from the model and add resampled standardized residuals to it to obtain $n$ new series of returns. On each of the bootstrapped series I once again estimate the GARCH model, once again solve the asset allocation problem (and obtain different weights for the asset than in the initial run), calculate the statistic and from all $n$ statistics I calculate the final p-value to see, whether the result is statistically significant.

Just a follow-up question to be sure: after having solved the initial asset allocation problem and obtained the weights I do the bootstrap to obtain $n$ new series of returns. Do I apply the same weights to those series and see if one asset allocation strategy outperforms the other or do I solve the problem for each bootstrapped series from scratch, thus obtaining different set of weights each time?

edit2: I have found a paper that is doing a similar thing to my research, however, it uses a strange bootstrap method, as in some steps it uses the original returns and in some the bootstrapped ones. Equation (1)-(3) mentioned in the fragment are those of a GJR-GARCH model. Is this iterative approach, somehow similar to the one I described as point 1. correct, with taking the original returns in some steps and the new bootstrapped series in other steps?

enter image description here


1 Answer 1


The correct procedure for parametric bootstrap is:

1) fit the data with a distribution of the parametric family (normal, Student's t, etc.; you should choose the one that fits the data in the best way, using some criteria to choose, such as Akaike Information Criteria or others);

2) draw n random samples from the fitted distribution, and estimate the quantity of interest for each sample;

3) take the sample mean of these quantities.

Is this what you need?

  • $\begingroup$ So in other words this is the same as the second approach I have described, with a small difference in the order of the steps. I obtain the residuals, sample from them n times and add them to the mean, thus creating the fitted values. So I assume that is the same thing you have described. If so, this is indeed what I have been looking for. Thank you for your help. $\endgroup$
    – Masher
    Commented Mar 7, 2016 at 19:32
  • $\begingroup$ If you want, write in a comment what you have to do with your data, so I (the community, actually) can be more precise in the answer, without being unprecise or leading you in mistakes. $\endgroup$
    – simmy
    Commented Mar 8, 2016 at 11:03
  • $\begingroup$ I added a description of the whole process in the edit. I hope this sheds some light on what I am trying to do with the data. $\endgroup$
    – Masher
    Commented Mar 8, 2016 at 11:50
  • $\begingroup$ I comment here since I still haven't enough reputation to comment on the question. What I would do is to simulate n times for every set of weights. Better: 1) you obtain a set of weights; 2) you simulate n times with that weights and get every time the statistic you need. Repeat 1) and 2) for m times. If you prefer, put in a "programming way", it can be seen as a double "for" cycle, where in the outer one you estimate the new weights and in the inner one, you estimate the model and the statistic you need with that weights. $\endgroup$
    – simmy
    Commented Mar 8, 2016 at 15:49
  • 1
    $\begingroup$ Probably you will end up with a better estimation by creating different residuals every iteration, since it creates a greater variety of cases. In any case, I would use at least thousands iterations in a simulation. $\endgroup$
    – simmy
    Commented Mar 9, 2016 at 18:49

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.