As of 10/07/2024
Indus: 41,954 -398.51 -0.9%
Trans: 15,783 -31.37 -0.2%
Utils: 1,027 -24.05 -2.3%
Nasdaq: 17,924 -213.95 -1.2%
S&P 500: 5,696 -55.13 -1.0%
|
YTD
+11.3%
-0.7%
+16.5%
+19.4%
+19.4%
|
43,500 or 41,600 by 10/15/2024
16,800 or 15,700 by 10/15/2024
1,125 or 1,025 by 10/15/2024
19,000 or 17,600 by 10/15/2024
5,900 or 5,600 by 10/15/2024
|
As of 10/07/2024
Indus: 41,954 -398.51 -0.9%
Trans: 15,783 -31.37 -0.2%
Utils: 1,027 -24.05 -2.3%
Nasdaq: 17,924 -213.95 -1.2%
S&P 500: 5,696 -55.13 -1.0%
|
YTD
+11.3%
-0.7%
+16.5%
+19.4%
+19.4%
| |
43,500 or 41,600 by 10/15/2024
16,800 or 15,700 by 10/15/2024
1,125 or 1,025 by 10/15/2024
19,000 or 17,600 by 10/15/2024
5,900 or 5,600 by 10/15/2024
| ||
This study is the second part of two that discusses stock relative price strength, whether stock performance when compared to its peers is a good indicator of future results. This page tests various methods to see how well they work.
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.
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.
Buy at a high relative strength rank and sell when it falls to a lower rank.
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 |
Buy | Sell | Avg hold | # of | Avg | S&P | Profit |
>= | < | Time (days) | Trades | Profit | Profit | Factor |
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 second 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.
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.
Buy at a given rank and sell when it rises to a higher rank. Exclude those not rising to the sell rank.
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 |
250 | 225 | 50 | 316 | 1.7% | 1.3% | 1.3 |
250 | 220 | 59 | 315 | 1.9% | 1.5% | 1.3 |
250 | 215 | 67 | 315 | 2.0% | 1.7% | 1.2 |
250 | 210 | 70 | 314 | 2.5% | 1.8% | 1.4 |
250 | 205 | 76 | 312 | 2.8% | 1.9% | 1.5 |
450 | 445 | 18 | 258 | 0.9% | 0.7% | 1.3 |
450 | 440 | 25 | 257 | 1.3% | 1.0% | 1.3 |
450 | 435 | 34 | 257 | 1.0% | 1.1% | 0.9 |
450 | 430 | 38 | 255 | 1.2% | 1.2% | 1.0 |
450 | 425 | 44 | 255 | 1.5% | 1.3% | 1.2 |
450 | 420 | 46 | 254 | 1.9% | 1.3% | 1.5 |
450 | 415 | 52 | 253 | 1.9% | 1.4% | 1.4 |
450 | 410 | 57 | 253 | 1.9% | 1.5% | 1.3 |
450 | 405 | 60 | 252 | 2.0% | 1.6% | 1.3 |
Buy | Sell | Avg hold | # of | Avg | S&P | Profit |
= | >= | Time (days) | Trades | Profit | Profit | Factor |
The idea behind the test was to determine if you should buy a high ranked stock, mid ranked, or low ranked one for the best performance. Do low ranked stocks climb faster and represent a better value? No. The numbers show that the mid and low ranked stocks don't move much at all. Only the top ranked stocks perform well.
For example, the worst performance of the top tier stocks, buy at 50 and sell at 45, is substantially better than all of the tests in the middle or lower groups. The best they could muster is 2.8% for 250/205 and 1.6% for 450/405.
The results assume you pick stocks that reach the sell rank. Many will not, so the results overestimate performance. Do not use this method to trade stocks. Test 3 is a more realistic test.
Buy at a lower rank and ride the stock as the performance rank climbs. If the rank peaks and declines, then sell.
The test uses a "high water mark" to determine the peak rank, which is the best rank reached before it sinks. Sell the stock when the rank drops below the high water mark.
For example, the first line in the table shows that the program buys a stock when it reaches 50 or better. As price climbs, so does the rank. When the rank peaks and then drops by at least 5, the stock is sold. In this example, the average hold time was six days in the 1,431 trades. Profit was 0.2% and the average rank peaked at 38. The stock was sold as it declined to a rank of 38 (or whatever the high water mark was for that stock) plus 5 or 43. Notice that in the first group, performance is about even or slightly better than the change in the S&P 500 over that same test period.
Group 2 (buy at 250) and group 3 (buy at 450), also showed flat (250 group) to worse (450 group) performance when compared to the S&P 500. Based on the numbers, it suggests that picking stocks from the top group results in slightly better performance than picking them from the middle of the list and certainly better than picking them from the bottom of the list.
For the last group in the table, I used a large rank swing: 150. If you bought a bottom ranked stock, 450, and held it until price peaked and then dropped by 150 ranks, you would have made 5.9% compared to the 5.5% delivered by the S&P 500. The average hold time for the trade was about six months (187 days).
Picking stocks from any of the other groups and holding for a 150 rank give back resulted in performance worse than the S&P 500.
Buy | Sell | Avg hold | # of | Avg | S&P | Profit | Avg High |
>= | >HWM + x | Time (days) | Trades | Profit | Profit | Factor | Water mark |
50 | 5 | 6 | 1431 | 0.2% | 0.2% | 1.0 | 38 |
50 | 10 | 10 | 1691 | 0.3% | 0.3% | 1.0 | 36 |
50 | 15 | 15 | 1657 | 0.5% | 0.4% | 1.3 | 34 |
50 | 20 | 21 | 1563 | 0.6% | 0.5% | 1.2 | 33 |
50 | 25 | 26 | 1452 | 0.5% | 0.5% | 1.0 | 32 |
50 | 30 | 30 | 1336 | 0.6% | 0.6% | 1.0 | 32 |
50 | 35 | 36 | 1241 | 0.9% | 0.8% | 1.1 | 31 |
50 | 40 | 40 | 1163 | 1.0% | 1.0% | 1.0 | 30 |
50 | 45 | 44 | 1080 | 1.3% | 1.1% | 1.2 | 30 |
250 | 5 | 4 | 2226 | 0.0% | 0.1% | 0.0 | 214 |
250 | 10 | 5 | 3290 | 0.1% | 0.1% | 1.0 | 209 |
250 | 15 | 6 | 3831 | 0.1% | 0.1% | 1.0 | 204 |
250 | 20 | 7 | 4026 | 0.1% | 0.2% | 0.5 | 200 |
250 | 25 | 9 | 4113 | 0.2% | 0.2% | 1.0 | 196 |
250 | 30 | 11 | 4110 | 0.3% | 0.3% | 1.0 | 191 |
250 | 35 | 13 | 4038 | 0.3% | 0.3% | 1.0 | 187 |
250 | 40 | 16 | 3916 | 0.4% | 0.4% | 1.0 | 183 |
250 | 45 | 18 | 3822 | 0.4% | 0.4% | 1.0 | 179 |
450 | 5 | 5 | 1466 | 0.0% | 0.1% | 0.0 | 421 |
450 | 10 | 8 | 1677 | 0.0% | 0.1% | 0.0 | 411 |
450 | 15 | 11 | 1597 | 0.0% | 0.2% | 0.0 | 401 |
450 | 20 | 15 | 1488 | -0.1% | 0.3% | -0.3 | 391 |
450 | 25 | 19 | 1372 | -0.2% | 0.4% | -0.5 | 380 |
450 | 30 | 24 | 1264 | -0.2% | 0.5% | -0.4 | 369 |
450 | 35 | 30 | 1163 | 0.0% | 0.7% | 0.0 | 355 |
450 | 40 | 36 | 1087 | 0.4% | 0.9% | 0.4 | 343 |
450 | 45 | 43 | 990 | 0.6% | 1.0% | 0.6 | 328 |
450 | 150 | 187 | 503 | 5.9% | 5.5% | 1.1 | 140 |
300 | 150 | 101 | 1861 | 1.7% | 2.7% | 0.6 | 150 |
200 | 150 | 89 | 1875 | 1.0% | 2.3% | 0.4 | 104 |
150 | 150 | 91 | 1543 | 1.0% | 2.3% | 0.4 | 77 |
Buy | Sell | Avg hold | # of | Avg | S&P | Profit | Avg High |
>= | >HWM + x | Time (days) | Trades | Profit | Profit | Factor | Water mark |
Notes: HWM is high water mark. X is sell rank.
While the idea of buying a stock with a lower rank, riding it upward and selling when the rank deteriorated had merit, the test showed that it resulted in performance no better than the S&P 500. Do not use this method to trade stocks.
Go back to part 1.-- Thomas Bulkowski
Support this site! Clicking any of the books (below) takes you to
Amazon.com If you buy ANYTHING while there, they pay for the referral.
Legal notice for paid links: "As an Amazon Associate I earn from qualifying purchases."
My Stock Market Books
|
My Novels
|
An Apple a day keeps Windows away.