Back testing individual metric performance
One of the most powerful features that we have on sharpely is the ability to back-test the performance of individual metrics (you may also call them “factors”) on the fly.
In this article, we will discuss the methodology used for back-testing metric historical performance. Since we have already covered broad methodology and bias avoidance, we will just focus on the construct of metric performance backtest.
To back-test a metric, we first select a universe (Nifty 500 by default). We then split the universe into 5 “quintile” portfolios and back-test their performance.
Stocks in the universe are sorted in ascending order and then portfolios are created based on percentiles. So, Quintile 1 will have stocks in 0 – 20 percentiles while Quintile 5 will have stocks in 80 – 100 percentiles. For each portfolio, stocks are assigned an equal weight in the portfolio.
Note that sorting is always done in ascending order regardless of the metric. Hence, Quintile 1 will always have stocks with the lowest value for that metric while Quintile 5 will always have stocks with the highest value.
For example, if the metric is P/E ratio, Quintile 1 will correspond to the cheapest stocks in the universe while Quintile 5 will correspond to the most expensive stocks in the universe. On the other hand, if the metric is earnings yield (E/P), Quintile 1 will correspond to the most expensive stocks in the universe and Quintile 5 will correspond to the cheapest stocks in the universe.
Using our standard walk-forward framework, 5 such portfolios are constructed every quarter (based on quintile splitting), and they are rebalanced to new stocks.
We then show the historical performance along with many other important metrics of these quintile portfolios. Users can change the universe to back-test the metric on any of our defined universes.