Combining Trading Signals with Forecast Models and Portfolio Allocations
Summary
The document discusses combining forecasts from different trading methods, including sentiment measures, signal processing, and neural networks. One recommendation is to express forecasts in comparable units, such as expected returns or event probabilities, before combining them. Possible approaches include weighting signals, using entropy pooling to form a posterior distribution, or treating signals as predictors in regression, principal component, hierarchical, or ensemble models.
It also outlines practical cautions and alternatives. Predictors may be correlated or non-stationary, and strategy return streams are often dependent; these issues should be considered in modeling and Monte Carlo tests. Equal-dollar or equal-risk allocations with periodic rebalancing offer simple starting points. Machine-learning ensembles can combine models through voting, bagging, boosting, or stacking. The discussion is a set of suggestions rather than a comparative empirical study, and it does not establish that any one combination method will improve performance.
Key ideas
- Forecasts can be combined more readily when they use comparable units, such as returns or event probabilities.
- Entropy pooling can integrate signal confidence into a posterior distribution.
- Regression, principal component analysis, hierarchical models, and ensembles can use signals as predictors.
- Correlated and non-stationary signals require care in model design and evaluation.
- Monte Carlo simulations and real data can provide complementary checks, while simple equal-dollar or equal-risk allocations are useful baselines.
Tags
Full text
# How to combine multiple trading algorithms? # How to combine multiple trading algorithms? Is it possible to combine different algorithms so as to improve trading performance? In particular, I have read that social media sentiment tracking, digital signal processing and neural networks all can be used for trading algorithms. Would it be possible to create a trading algorithm that combines elements from these three areas or are these methods mutually exclusive in that they are incompatible with each other? If you commit to one, can you use the other? ## Answer by Ram Ahluwalia (score 20, accepted) https://quant.stackexchange.com/a/2333 Yes. First, it is much easier to proceed if you standardize the output of your forecast so they are in the same units (returns, for example, or probabilities of an event/condition occurring). After you have done this, there are 3 general approaches: - Entropy-pooling: Instead of weighing signals you can also integrate signals using entropy-pooling. Here you would assign confidence scores to each signal and develop a new posterior distribution. Entropy-pooling will mix signals in a way that imposes the least spurious structure on your forecast. Atillio Meucci has a paper on how to do this. - Build a model using these independent signals as predictor variables. You might try PCA, regression, a hierarchical model, or an ensemble technique. You also do not have to ensure the signals are in the same units although it would aid your intuition. Naturally, you'd have to proceed thru some modelling procedure and consider co-linearity, non-stationarity, etc. ## Answer by shabbychef (score 6) https://quant.stackexchange.com/a/2335 Whatever method you use, I recommend you test your implementation with Monte Carlo simulations as well as real data (although doing the latter subjects you to data mining bias, it can give a sanity check on your Monte Carlo simulations.) For most instances of multiple algorithms, the returns streams will not be independent, and you should take this into account in your tests. As far as the combination method to use, I would suggest you start simple with an equal dollar allocation (akin to the 1/n rule which seems to work well for equity portfolios), or at least an 'equal risk' allocation. By this I mean something along the lines of "put a fixed amount of money into each strategy you are trading, let them hold their own portfolios, and rebalance the money on e.g. a monthly schedule." ## Answer by Flake (score 6) https://quant.stackexchange.com/a/2342 As you mention neural network, in general, you may like to look further into various machine learning techniques. On that side, Quant Guy also mentioned ensemble learning which is the general term to combine different learning models. I'd like to elaborate on this point a bit further: In machine learning, traditional ways to combine models are simple voting committee, bagging, boosting (adaboost), etc. All these, you can simply google the term to get a lot of information. Stacking generalization, also called blending lately, is getting more and more popular in practical machine learning tasks. For example, both top two teams in the famous Netflix prize (1 million $) applied blending heavily, often optimizing the models with thousands of model combined by blending. For blending, you could refer to this blogpost, from the Netflix winning team. And also, and the original paper by D. H. Wolpert.
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.