Two weeks ago I wrote a blog about my quest to create an algorithm, partially human-aided, that tries pick a portfolio of stocks to attempt generating Alpha. In summary, I try to rank stocks according to the ratio of my calculated "Graham Valuation" and the current stock price, and then through a manual process of eliminating companies with undesirable traits or statistics, I pick a list of potential winners.
Probably the most important question, among many that I do not answer in the first post is, how well has this algorithm performed over time? The reason this is so important is: if you cannot consistently beat the S&P 500 index over an extended period of time, then there is no reason to invest in anything other than an Index Fund. In other words, stock picking would be a fools game. Please Note: This is different than "timing" or "trading" the market, which will be the subject of a future blog. It was also the subject of this blog that I wrote.
So I've been collecting stock statistics on most of the stocks in the Russell 3000 for a little over a year now. There are ways to get larger datasets, but I'm working on a frugal budget, and what little time I have to write code and analyze the results. After writing the previous blog, I decided to do some of the work and analysis as the subject of this blog. Side note, making your work public can be a good motivator to answer some of the questions that come up.
For those following along, I posted a bunch of statistics from May 1, 2018 here: http://www.operative.cc/stocks_20180501.htm Per the previous blog, the stocks are ranked according to the value ratio that I described. Since we'd have to wait into the future, testing this current ranking wouldn't make much sense as of today.
Luckily, I have a similar spreadsheet that my code generated from 2017 that we can use for our analysis.
Drumroll: http://www.operative.cc/stocks_20170211_results.htm
So my algorithm, using data from February 11, 2017, ranked the stocks according to the same value ratio described previously. I added an additional column "Price Change to May 5 2018" to show how each ranked stock performed from February 11, 2017 to May 5, 2018.
To my surprise and at first glance, there seems to me no discernible pattern on an individual basis of stocks that performed well versus stocks that didn't, at least according to just the value ratio ranking. The results look somewhat scattered. This is where aggregation and averaging may matter though. Let's see if we can't dive in a little deeper and see what may be going on. Interestingly, if we average
the performance of stocks by decile, we have something to show.
It looks like the first decile are largely "throwaways", which my manual analysis accounts for by throwing away stocks with "one-time" earnings boosts and other anomalies. One of the things my algorithm doesn't account for is weighting. Interestingly, while I don't have all of the data from all Russell 3000 stocks from February 11, 2017, I have about 2219 of them. The actual performance of the Russell 2000 over this period was about 15.2% whereas the aggregate average of all stocks in my list is only about 5.52%. The reason for this is that the Russell 2000 and Russell 3000, and the S&P 500 are actually market capitalization weighted. In case this is not intuitive for you, the premise is that bigger companies with larger market capitalization are a larger portion of the total index.
I will take weighting into account in the future when I do my calculations, but the result here is nonetheless interesting. Over this period, from February 11, 2017 thru May 5, 2018, I see significant clustering of performance in the 2nd, 3rd, and 4th deciles. While there is a significant performance gain that was achieved during the same period by weighting with "larger" companies like Amazon, Netflix, Google, etc., there seems to be a strong correlation with my calculated Value Ratio and performance.
Awesome! Happy Investing!
Robinhood is one of the greatest financial innovations of the past 100 years. No longer do you need to buy 100 shares in order to moderate the cost of commissions on each trade. Robinhood transactions have absolutely no commissions, allowing small investors to dollar cost average with as little as 1 share at a time. This is amazing!
If you like this post, consider signing up for a Robinhood account at https://share.robinhood.com/nathanl801
Probably the most important question, among many that I do not answer in the first post is, how well has this algorithm performed over time? The reason this is so important is: if you cannot consistently beat the S&P 500 index over an extended period of time, then there is no reason to invest in anything other than an Index Fund. In other words, stock picking would be a fools game. Please Note: This is different than "timing" or "trading" the market, which will be the subject of a future blog. It was also the subject of this blog that I wrote.
The Backtest:
So I've been collecting stock statistics on most of the stocks in the Russell 3000 for a little over a year now. There are ways to get larger datasets, but I'm working on a frugal budget, and what little time I have to write code and analyze the results. After writing the previous blog, I decided to do some of the work and analysis as the subject of this blog. Side note, making your work public can be a good motivator to answer some of the questions that come up.
For those following along, I posted a bunch of statistics from May 1, 2018 here: http://www.operative.cc/stocks_20180501.htm Per the previous blog, the stocks are ranked according to the value ratio that I described. Since we'd have to wait into the future, testing this current ranking wouldn't make much sense as of today.
Luckily, I have a similar spreadsheet that my code generated from 2017 that we can use for our analysis.
Drumroll: http://www.operative.cc/stocks_20170211_results.htm
So my algorithm, using data from February 11, 2017, ranked the stocks according to the same value ratio described previously. I added an additional column "Price Change to May 5 2018" to show how each ranked stock performed from February 11, 2017 to May 5, 2018.
To my surprise and at first glance, there seems to me no discernible pattern on an individual basis of stocks that performed well versus stocks that didn't, at least according to just the value ratio ranking. The results look somewhat scattered. This is where aggregation and averaging may matter though. Let's see if we can't dive in a little deeper and see what may be going on. Interestingly, if we average
the performance of stocks by decile, we have something to show.
It looks like the first decile are largely "throwaways", which my manual analysis accounts for by throwing away stocks with "one-time" earnings boosts and other anomalies. One of the things my algorithm doesn't account for is weighting. Interestingly, while I don't have all of the data from all Russell 3000 stocks from February 11, 2017, I have about 2219 of them. The actual performance of the Russell 2000 over this period was about 15.2% whereas the aggregate average of all stocks in my list is only about 5.52%. The reason for this is that the Russell 2000 and Russell 3000, and the S&P 500 are actually market capitalization weighted. In case this is not intuitive for you, the premise is that bigger companies with larger market capitalization are a larger portion of the total index.
I will take weighting into account in the future when I do my calculations, but the result here is nonetheless interesting. Over this period, from February 11, 2017 thru May 5, 2018, I see significant clustering of performance in the 2nd, 3rd, and 4th deciles. While there is a significant performance gain that was achieved during the same period by weighting with "larger" companies like Amazon, Netflix, Google, etc., there seems to be a strong correlation with my calculated Value Ratio and performance.
Awesome! Happy Investing!
Robinhood is one of the greatest financial innovations of the past 100 years. No longer do you need to buy 100 shares in order to moderate the cost of commissions on each trade. Robinhood transactions have absolutely no commissions, allowing small investors to dollar cost average with as little as 1 share at a time. This is amazing!
If you like this post, consider signing up for a Robinhood account at https://share.robinhood.com/nathanl801


Comments