I have designed 2 strategies that I am trying to combine and test in a book and have noticed that from time to time both strategies select the same stock.
2 related questions:
Is there a way for me to understand how often this overlap happens (without manually going over all transactions)?
Is there a way to separate out the performance of the stocks selected by both strategies and compare to performance of stocks selected by only one strategy (win rate, average return, etc)? I wonder if it is worth to overweight these stocks in my portfolio.
If this functionality does not exist, it would be great to add it as a new feature.
It depends upon how independent the crowd is. I am running 12 small strategies with small number of positions in each. This week there are 58 positions with different weights and only 46 unique names -- much more overlap than normal. My experience is moderately positive.
However, when considering adding a screen to my production set, I look very closely for overlaps and if there are too many either bench the new one or replace the old one if it is the primary overlap.
By reading the "Account" function definition I read the following "If you are using these functions in strategies to exclude stocks owned in other strategies...".
Does anyone know how to use the function to exclude stocks from other strategies?
You could add the "Account" function to your buy and sell rules, so that you don't buy stocks held in another account and you sell stocks that are held in another account.
I was able to solve the issue by creating screen of screens using Screen function.
Screen("StrategyA", 10) and Screen("StrategyB", 10)
This approach isolates the stocks selected by both strategies and helps measure their performance.
Interestingly, in my specific case, while their return is really good, they also suffer from higher drawdowns when market drops. Not something I would have expected.
I now wonder how to:
exclude those stocks from the joint screen to check the impact on the overall performance.
set different weights to each one of the screens and potentially to the set of common stocks
If anyone has any idea how to do it, please let me know.
I am struggling with the syntax. I tried with the !inlist function and the portfolio function in the simulated strategies with no success. I anyone would know how to draft it.
To see how a strategy performs when not buying stocks held by other simulated strategies I have done it like this -
It's not perfect, the other strategies could very well have bought whatever this new simulated strategy is alredy holding later on, but it gives me an idea...