Second Thoughts
Wednesday, December 31, 2008 at 3:57PM New Stock Trading Simulation

Trading Rules
Below you can see the trading rules / simulation setup.
I have used my standard liquidity rules for this system, same as previous systems:
For risk management I used my previous technique of limiting industry weight (IndWeight) at time of stock purchase to 10% of the trading capital and sector weight (SecWeight) to 25%.
(IndWeight < 10) AND (SecWeight < 25)
Of course the weightings of the stock holdings will change over time. To limit risk for any given industry group I used a sell rule to liquidate 33% of stock holdings within an industry when the industry weight exceeds 15% of the trading capital.
Eval(IndWeight > 15,0.333,0)
I used my favored industry breakout rule RSI(7) for filtering stock purchases - see previous posts if you are not up to speed on this:
(FMedian("RSI(7)",#Industry)>60) AND (NoConst > 25)
Then I applied some market timing logic based upon the S&P500 benchmark:
(BenchClose(0) > BenchClose(5)) AND (BenchClose(0) > BenchClose(10)) AND (BenchClose(0) > BenchClose(20))
The market timing is fairly straightforward. The benchmark index (SP500) has to be up for 1 week, 2 weeks and 4 weeks. Now for the remaining sell rules. First the system looks for a drop in rank of 4 points over the previous week.
Rank <= RankPrev(1) - 4
The system also has a market timing exit rule when the benchmark exhibits a certain amount of weakness.
BenchClose(0) < 0.97*WMA(10,5,#Bench)
Those are the rules in a nutshell. And by the way the
ranking system is one of Oliver Keating's babies: his
latest version of his Fourth Generation with unfollowed
Smallcaps. I have renamed the ranking system because
there are too many with similar titles floating around.
I get confused easily.
For Portfolio123
members, the public simulation can be found here: Industry
Breakout 19DEC2008
The ranking system can be found here: Olikea's
BrainChild 19DEC2008
The stock universe is same as before and can be found
here: Baseline_Universe
So there you have it!
Preliminary Analysis of the
System
Now what don't I like about
it?
After I made the previous post I decided to do some
further testing. I found out that 99% of the performance
had to do with the ranking system and nothing to do with
my industry breakout rule. The breakout rule brought the
max drawdown from ~15% down to ~12%. It also reduced the
annual profit by a few percent per year. The second
issue is that the system is very much dependent upon the
finely tuned market timing. For example, if I choose the
Russell 2000 as the benchmark then I get a significant
drawdown at the end.
One alteration I have been looking at is replacing the market timing sell rule with a sector weakness rule such as:
This rule appears to be quite nice reducing the sensitivity of the benchmark index for exit timing. But the %profit per trade also goes down substantially.
Next post I am going to
really scrutinize this system to see what the good and
bad things are. Everyone please have a Happy New Year!.
Steve





Reader Comments (2)
It's very interesting watching you work through this system. After defining the target universe, the challenge for me has been whether to focus on the Screening or the Ranking. I usually start with Screening to capture the big picture of what I am trying to build and include some kind of "regime switching" protocol. Within a successful screen, the candidates can be ranked. This is where it becomes challenging... do you echo your Screen's metrics in the ranking or do you rank on other factors such as momentum? One large fund manager likes Value with Momentum, so you screen for value and then rank on momentum.
Looking forward to your next post.
Thanks for the comments Shaun. I haven't really thought about using (partially) independent factors for the screen versus the ranking. i.e. value and momentum. I see some interesting prospects in that.
What I did do was use the screener to find some industry and stock-based formulae - it turns out they are all momentum-type. And I also used the screener to quickly find what ranking system(s) worked well with the factors.
Each of these formula gave a slight to moderate advantage:
- Fmedian("Close(0)/Close(220)", #Industry) > ....
- Fmedian(RSI(7),#Industry) > 60 ...
- Close(0) / Close(250) > 1 ....
With the new system I got away from my original ideas too much. I grasped onto a really good ranking system and made some very optimal market timing but lost the concept of industry breakout. I think you will see me get back to the original industry breakout idea as I move forward. I am a firm believer that the development process is as important as backtest results.