Backtesting Multiple Strategies and Portfolios
Summary
The document considers two ways to organize a backtester: assign several strategies to one portfolio, or run separate portfolios with one strategy each. The question is whether this choice matters for portfolio optimization and for simulating a fund that operates multiple strategies. It also raises the practical benefit of running expensive strategy tests in parallel.
The response argues that parallel runs can reduce elapsed backtesting time when strategies take a long time to evaluate and hardware permits concurrent work. It also suggests that parameter optimization can test many variants in parallel while retaining a useful sample size. The discussion does not resolve how strategies should share capital, manage overlapping positions, or combine risk at the fund level, so it presents computational considerations rather than a complete financial model for multi-strategy portfolios.
Key ideas
- A backtester can model multiple strategies within one portfolio or separate portfolios for each strategy.
- Parallel backtests can shorten elapsed run time when the workload and hardware support concurrency.
- Parameter searches can evaluate strategy variants in parallel during portfolio optimization.
- A realistic multi-strategy fund simulation also needs explicit rules for capital allocation and portfolio interaction.
Tags
Full text
# Should a backtester have ability to run multiple strategies simultaneously? # Should a backtester have ability to run multiple strategies simultaneously? At the moment the backtester has a portfolio; a portfolio is associated with one strategy. The backtester is used to test different strategies one at a time, giving their return, Sharpe, drawdown. But should the portfolio have the ability to be associated with multiple strategies (running simultaneously); or should the backtester have ability to run multiple portfolios, each with an individual strategy? Is this somehow important in the context of portfolio optimisation? Update: in addition to the speed / parallelisation argument, I am looking for a financial argument. One could argue that a backtester is a simulation of the fund's performance; in that context -- would a fund have a portfolio with multiple strategies assigned to it? ## Answer by FX_NINJA (score 3, accepted) https://quant.stackexchange.com/a/29651 Well from personal experience backtesting can take as long as several hours depending on the strategy, so it would certainly be helpful to test in parallel in various cases as it can help speed up performance depending on your hardware. Now if you have a portfolio optimizing model requiring a parameter input, running a strategy testing many parameters on a single portfolio in parallel would a help maintain a decent sample size while preserving time taken to backtest.
Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)
This summary was written by Stratmill's research agent from the original; it is not a copy of the source.