Summary
Buy a stock with high relative price strength and sell it when performance (when the rank) drops. Buying a lower ranked stock,
watching it climb up the rank scale, and then drop results in worse average performance. Concentrate buying high ranked stocks
(those with the best price relative strength) and avoid those with worse relative performance.
Background
This document discusses tests which show how to use stock relative price strength to improve trading results. All tests use
a database that begins on May 18, 2005 and ends on December 6, 2007. The intent was to split the period after the end of the 2000-2002
bear market into two equal pieces for in-sample and out-of-sample tests. However, preliminary results were dismal and did not warrant
additional testing beyond the most recent bull market. None of the tests include dividends, commissions, or other fees.
Test 1
Buy at a high relative strength rank and sell when it falls to a lower rank.
Test 1 Analysis
A stock with high relative price strength means it outperformed its peers over the prior six months, close to close. I used a buy
rank of at least 5 or better (meaning stocks ranked 1 to 5) and sold them when the rank dropped to 10, 15, 20, and so on. I measured
the average profit for the group and compared it to the performance of the S&P 500 over the same hold time. The following table shows the results.
|
Buy |
Sell |
Avg hold |
# of |
Avg |
S&P |
Profit |
|
>= |
< |
Time (days) |
Trades |
Profit |
Profit |
Factor |
|
5 |
10 |
38 |
165 |
2.3% |
0.9% |
2.6 |
|
5 |
15 |
55 |
129 |
1.9% |
1.2% |
1.6 |
|
5 |
20 |
68 |
114 |
3.3% |
1.4% |
2.4 |
|
5 |
25 |
75 |
108 |
3.3% |
1.7% |
1.9 |
|
5 |
30 |
81 |
102 |
2.6% |
1.9% |
1.4 |
|
5 |
35 |
90 |
98 |
3.2% |
2.0% |
1.6 |
|
5 |
40 |
98 |
95 |
4.5% |
2.4% |
1.7 |
|
5 |
45 |
100 |
94 |
4.2% |
2.5% |
1.9 |
|
5 |
50 |
108 |
91 |
5.0% |
2.7% |
1.9 |
|
|
|
|
|
|
|
|
|
10 |
50 |
90 |
190 |
4.9% |
2.3% |
2.1 |
|
15 |
50 |
81 |
264 |
6.3% |
2.2% |
2.9 |
|
20 |
50 |
69 |
368 |
5.2% |
1.9% |
2.7 |
|
25 |
50 |
60 |
484 |
4.3% |
1.5% |
2.9 |
|
30 |
50 |
51 |
633 |
3.3% |
1.3% |
2.5 |
|
35 |
50 |
39 |
901 |
2.0% |
0.9% |
2.2 |
|
40 |
50 |
31 |
1254 |
1.4% |
0.8% |
1.8 |
|
50 |
100 |
69 |
822 |
2.1% |
1.8% |
1.2 |
I split the tests into two groups. The first group buys at a rank of 5 or better and sells at ranks of 10 through 50. For example,
in the 508 stocks I looked at with relative strength ranks between 1 and 5, I bought and held them until the rank dropped below 10. That
took an average of 38 days, and the profit averaged 2.3%. The S&P, over the same hold time, gained 0.9%. That means the stocks performed
2.6 times better than the S&P.
In the group, I changed the buy rank but kept most of the sell rank steady. For example, I bought when the rank was 10 or better and sold
when the rank dropped below 50. The average hold time was 90 days, and the 190 trades made an average of 4.9% compared to 2.3% returned by the S&P 500.
Test 1 Summary
The profit factor shows which tests performed best when compared to the S&P 500. They are buy at rank 5 and sell at either ranks 10 (profit
factor 2.6) or 20 (profit factor 2.4). The second group shows the best performance when buying at ranks 15 and 25 and selling at rank 50. Both
have profit factors of 2.9.
In the first group, as the sell rank drops, the hold time increases as you might expect. The number of completed trades drop, because fewer
stocks actually fall to the lower rank. Since the hold time is just over a month for the buy at 5/sell at 10 test, that would be the preferred
choice for trading. In words, buy any stock with a relative strength rank of 5 or better (1 to 5) and sell it when the rank drops to 11.
If you want a longer-term holding, then buy stocks ranked 15 or better (1 to 15) and sell when they drop to 51. That gives the highest
average profit (6.3%) and highest profit factor, 2.9. The hold time decreases for the second group as the table shows and that’s because
the difference between the ranks (10 to 50, 15 to 50, and so on) narrows as you move down the list until the 50/100 line.
Test 2
Buy at a given rank and sell when it rises to a higher rank. Exclude those not rising to the sell rank.
Test 2 Analysis
After I completed the test, I discovered a flaw: The test throws out stocks that fail to rise to the sell rank. However, it does show interesting results.
I split the database into three groups: buy ranks of 50, 250, and 450. Each of the sell ranks are the same distance from the buy. That means
the buy/sell rank of 50/45 has a difference of 5 as does the 250/245 and 450/445 pairs. The ranks of 50/40 are the same distance as 250/240 and
450/440. And so on.
For the first test in the series, I bought a stock when the rank hit 50 and sold it when it climbed to a rank of 45 or better. The average
hold time for the 249 trades was 42 days, and the profit was 4.4% compared to 1.2% for the S&P 500. This gave a profit factor of 3.7.
The following table shows the results.
|
Buy |
Sell |
Avg hold |
# of |
Avg |
S&P |
Profit |
|
= |
>= |
Time (days) |
Trades |
Profit |
Profit |
Factor |
|
50 |
45 |
42 |
249 |
4.4% |
1.2% |
3.7 |
|
50 |
40 |
57 |
230 |
6.1% |
1.5% |
4.1 |
|
50 |
35 |
82 |
197 |
9.1% |
2.1% |
4.3 |
|
50 |
30 |
112 |
165 |
17.6% |
3.1% |
5.7 |
|
50 |
25 |
133 |
142 |
23.8% |
3.5% |
6.8 |
|
50 |
20 |
157 |
124 |
32.6% |
4.2% |
7.8 |
|
50 |
15 |
177 |
101 |
39.8% |
4.9% |
8.1 |
|
50 |
10 |
209 |
82 |
42.1% |
6.1% |
6.9 |
|
50 |
5 |
280 |
45 |
73.7% |
8.9% |
8.3 |
|
|
|
|
|
|
|
|
|
250 |
245 |
27 |
323 |
0.9% |
0.7% |
1.3 |
|
250 |
240 |
32 |
321 |
1.3% |
0.8% |
1.6 |
|
250 |
235 |
38 |
320 |
1.6% |
1.0% |
1.6 |
|
250 |
230 |
45 |
318 |
1.6% |
1.3% |
1.2 |
|
|