No. of Recommendations: 8
take a screen you like and compare:
gtr1.net: GTR1 Backtester - Geo_PHL05_2Stock_SPY325
200 days:
cagr 27.2%
beta .87
sharpe .74
mdd -61.5
One of the sayings that we had back in the early days of the MI board on TMF was "Don't attack people, but thrash every idea soundly." With close attention to avoiding fallacies like data dredging.
"The answer you like the most is the one you should trust the least.""The first principle is that you must not fool yourself—and you are the easiest person to fool." --Richard FeynmanDemosthenes (384-22 BC): “Nothing is easier than self-deceit. For what each man wishes, that he also believes to be true.” In other words, there’s a powerful tendency to believe that which could make one rich if it were true.The idea is to come up with good screens that are robust and reasonably actionable by us amateurs.
This is not a personal contest between screens I like and screens you like.
In that spirit I will offer my comments critiquing the above screen. None of this is an attack on you.
- A month is 21 market days, not 20. (252/12 = 21)
- A 2 stock screen is too few holdings.
-- Changing this to a larger number, like 3, 4, or 5, gets a weird GTR1 output. I don't see any obvious reason for this. Perhaps it's something in the BCC?
- Friction of 0% is unrealistic. Especially in a screen with a lot of trading.
- Timing should not be attempted in GTR1 for a number of reasons.
-- It is done on a daily basis. This is unrealistic for an amateur investor.
-- You cannot see what is going on. You cannot see the IN or OUT signals. Even the "Count Stocks" screen does not show the OUT days.
-- Speaking of which, why does Count Stocks show some days as having more than 2 stocks when the last rule is "... bottom 2"? It shows 929 days with 3 stocks, 50 days with 4, and 2 days with 5.
---- Is the count wrong or is GTR1 sometimes holding more stocks than the screen specifies?
-- You can't (at least, not that I can see) have different thresholds for getting IN and getting OUT. This will cause many whiplashes when the SMA of BCC is right at the crossover point.
---- A quick-and-dirty look at daily ^GSPC shows 266 trades (133 round-trips) in this period. Of these 133 round-trips, 74 were a whiplash, which is defined as an opposite signal within 5 days.
- I think that doing a full rebalance every holding period is unrealistic. More realistic would be either never rebalance existing positions or rebalance maybe once a year.
- Seeing an average CAGR near 30% should be a strong sign that it is likely to be unrealistic.
- The last step "linear(1, GeoRank, .5,PHLRank)" is a sum-of-ranks with the PHL ranking double-weighted. This makes the PHL ranking predominant and it becomes almost a PHL-only screen.
-- Changing this to equally weight the sums-of-ranks "linear(1,GeoRank, 1,PHLRank)" brings CAGR to 29.1% and MDD to -60.5%.
-- Reversing the weights "linear(.5,GeoRank,1,PHLRank)" brings CAGR 29.7% and MDD -56.7%.
-- The momentum value is product of 5 overlapping lookback periods, with the more recent months weighted higher.
-- Why 5 momentum periods? This feels like data overtuning.
---- Why not just one period?
---- Actually, just changing GeoMom to "trm(1,252)" bumps CAGR from 27.2% to 32.4% and drops MDD from -61.5% to -56.0%. The product of the 5 periods seems like needless complexity for the sake of complexity.
============================================================
So, anyway, here is a (slightly modified) screen I like better:
CAGR 30.9%
Sharpe 0.81
MDD -56.0%
Though I would never trade this screen.