Sunday, April 17, 2011

Effectiveness Of Fundamental Ranking

The T-Rank 2.0 was designed as a fundamental ranking system, but so far I used it as a stock screener. All my previous blog posts, except one, talked about only the top 20 stocks returned by the T-Rank 2.0. I know the discussion was not complete. This posts will quantify the effectiveness of T-Rank 2.0.

To quantifies effectiveness, I looked into the relationship between the rank of a stock and its short term, such as 1 week, return. For each week, I computed the ranks of all the stocks that satisfy the liquidity requirements as discussed here. There were around more than 3000 stocks that satisfy the liquidity requirements every week. So this is a very large stock universe. And I put the stocks in groups by their ranks. Each group has 100 stocks. That is, the first group contains the top 100 stocks returned by T-Rank 2.0, the second group contains the next 100 stocks, and so on. Then I calculated each group's weekly return over the past 10 years. Intuitively, the group with higher ranks shall have better return than one with lower rank. Thus I define the effectiveness to be the difference of return between the k-th group and the (k+1)-th group.

To make the number easier to comprehend, I use annualized return instead of weekly return. The estimated annualized return is simply the weekly return times 52, the number of weeks per year. This estimation is a little bit conservative as it didn't compound the return. But the benefit is this is easy to compute. It also gives a simple way to compute the annualized standard error of the return, which is the weekly standard error divided by square root of 52, assuming the return follows normal distribution. It's worth to point out that modern portfolio theory suggested that investors can reduce standard error by holding a portfolio of multiple stocks. Assuming certain independence, the standard error of the portfolio is the standard error of the individual stocks divided by the square root of the size of the portfolio.

To summarize all the formulas:
  • Estimated Annualized Return = Weekly Return * 52
  • Annualized Standard Error = Weekly Standard Error / SQRT(52)
  • Portfolio Standard Error = Individual Standard Error / SQRT(Size of Portfolio)
T-Rank 2.0 uses a numerical rank from 0 to 100. The stock universe contains more than 3000 stocks, so a group of 100 stocks covers, roughly speaking, 3 rank points. That is, the first group contains stocks with ranks from 97 to 100, the second group contains stocks with rank from 94 to 97, and so on.

With this, the chart below shows the relationship between the rank of a stock with its annualized 1 week return.

The x axis is the ranks, the y axis is the estimated annualized return in percentage. The center points of the red bars are the estimated annualized average return of a group over past 10 years. The height of the red bars is their annualized standard error, which is about 5%.

The chart says that if an investor picks a stock with rank above 97, holds it for one week, and repeats this for a year, his return should be around 24% and the standard error of the return should be around 5%. Considering we have a giant bear market in the past 10 year and the data are derived from the past 10 years, the result is fairly good.

As discussed above, holding a portfolio of multiple stocks can reduce the standard error. The height of the green bar is estimated standard error of a portfolio of 20 stocks, which is about 1%. So if an investor picks instead of 20 stocks with rank above 97, the standard error of the return will drop to only 1%, meaning his annualized return of 24% is quite consistent. This matches with the annualized return discussed here.

To quantify the effectiveness, I want to fit the points into a function curve. The chart suggests that a straight line may not be a good fit. I tried to fit the points to several simple functions using the least square method, and calculated their accumulated error. The one with minimum accumulated error is 1/x^4. The blue line in the chart above is the fitted curve. The functions and their accumulated error are listed in the table below.

Now I have a little bit problem with the definition of the effectiveness. When I was thinking about the definition, I thought it would be a straight line so for any k, the difference of return between group k and group k+1 should be the same. But now it turns out to be not a straight line.

So I define
  • The maximum effectiveness is the difference between the 1st group and the 2nd group, and
  • The average effectiveness is the average difference between groups.
So the maximum effectiveness of T-Ranks 2.0, as shown on the chart, is 1.6%. And the average effectiveness is 0.5%. Since one group covers roughly 3 rank points, the data implies that if an investor moves up 10 rank points, his annualized return should improve 1.7%. If he moves from rank 80 to 90 to rank 90 to 100, his annualized return should improve 3.6%.

As mentioned before, most of the data I have here are based on the assumption that the return follows normal distribution. The chart below shows there distribution of the return of the top 100 stocks over the past 10 years, which suggests that normal distribution is not a bad approximation. The green line is the curve fit by a normal distribution.

No comments:

Post a Comment