There are several simple dependent data bootstrap algorithms that make no parametric assumptions. These are fairly standard in the quant finance community. Why aren't they implemented as part of the backtest toolset? Just curious.
There are several simple dependent data bootstrap algorithms that make no parametric assumptions. These are fairly standard in the quant finance community. Why aren't they implemented as part of the backtest toolset? Just curious.
I'm not familiar with the bootstrap algorithms you mention. Can you point me to a link where I can read more about them?
Thanks, Dan
The material on this website is provided for informational purposes only and does not constitute an offer to sell, a solicitation to buy, or a recommendation or endorsement for any security or strategy, nor does it constitute an offer to provide investment advisory services by Quantopian. In addition, the material offers no opinion with respect to the suitability of any security or specific investment. No information contained herein should be regarded as a suggestion to engage in or refrain from any investment-related course of action as none of Quantopian nor any of its affiliates is undertaking to provide investment advice, act as an adviser to any plan or entity subject to the Employee Retirement Income Security Act of 1974, as amended, individual retirement account or individual retirement annuity, or give advice in a fiduciary capacity with respect to the materials presented herein. If you are an individual retirement or other investor, contact your financial advisor or other fiduciary unrelated to Quantopian about whether any given investment idea, strategy, product or service described herein may be appropriate for your circumstances. All investments involve risk, including loss of principal. Quantopian makes no guarantees as to the accuracy or completeness of the views expressed in the website. The views are subject to change, and may have become unreliable for various reasons, including changes in market conditions or economic circumstances.
Hi Dan,
You would essentially use circular block bootstrap with the method from Corrections to "Automatic block length selection for the dependent bootstrap" to generate synthetic price series and compute a distribution of returns. You then take the mean to get an approximate expectation of returns.
This is different than the standard iid evaluation, which is useful for hypothesis testing,
http://www.automated-trading-system.com/bootstrap-test/
because what I'm suggesting tests the sequential decision making while retaining the dependency structure within the data. Further, the standard test only reveals the single period performance, while this method can be used to evaluate the multiperiod performance.
Kevin Sheppard from Oxford-Mann has some nice slides with code examples:
https://www.kevinsheppard.com/images/6/64/AFE_Week_1_handout.pdf
Here's a nice review of methods in general:
Kreiss, J. P., & Lahiri, S. N. (2012). Bootstrap methods for time series. Handbook of Statistics: Time Series Analysis: Methods and Applications, 30, 1.
http://www.kevinsheppard.com/images/0/0a/Kreiss_and_lahiri.pdf
You should also take a look at this:
Bailey, D. H., Borwein, J. M., de Prado, M. L., & Zhu, Q. J. (2014). Pseudomathematics and financial charlatanism: The effects of backtest over fitting on out-of-sample performance. Notices of the AMS, 61(5), 458-471.
http://www.ams.org/notices/201405/rnoti-p458.pdf
Best,
Amir
yes, rigorous traders should use statistical back test. I come here because of the jez's review for David Aronson's book "Evidence Based Technical Analysis".
It seems to Timothy Masters, Monte Carlo permutation is better than bootstrap, he published a new book "Testing and Tuning Market Trading Systems: Algorithms in C++" on 2018-2-23.