Thursday, March 13, 2014

The AOM System

A long, long, time ago, I wrote up code to help facilitate stock selection.  Well it really wasn't long ago, it was as recent as 2012.  

It all started with Jack Barnes, a twitter acquaintance, sending me a file that scored several key ratio's for one stock against another.  Today, Jack is an old friend, as well as someone I don't know from Adam.  Well he's a friend, and since he is pushing towards the start of his sixth decade, he is old.  And I know him well, but only in the virtual world.  Since nothing seems real in the world anymore, I suppose that is okay.

Anyway, we called it Alpha Omega Mathematica (AOM).  And today, we publish AOM rankings at GetAOM.  We also publish stock specific quotes together with AOM scores.

I thought I'd run a note documenting the agony of the build-out of the system so that you understand broadly how it works.

When I first saw the file which Jack sent to me, I saw several key indicators scored one against the other, for two stocks.   It was quite a wonderful selection of indicators: we had value, growth, momentum, and quality (ownership quality - insider & institutional & corporate quality - return on equity) indicators: thirty-eight in all.  Something for everyone.

 Yet I thought, hmmmm.  It really did not work for me at all.  And I wondered why it worked for him.  I figured it did not work for me because I have a value bias, and only some of the key indicators were value indicators.  While I have a value bias in my stock selection style, Jack was completely style agnostic: he didn't give a monkey's about the investor stock selection style.  

So I left the model with each of the key indicators equal weighted, in investor stock selection style agnostic mode for Jack.  And I added a module which gave higher weightage to the value indicators included in the selection for myself.  Then I thought, what about the momentum gang: there is nothing here for them.  So I build another module.  One which gave higher weightage to momentum indicators in the selection.  And then I thought, what about the growth guys.  And I added a module giving higher weightage to the growth indicators.  And then there was the poor old balanced investor who diligently works through value, growth, momentum and quality before making a balanced stock selection decision.  For them I built a module weighting  value, growth, momentum and quality equally.  So I ended up with five modules covering the typical stock selection bias different investors lean towards - value, growth, momentum, balanced and agnostic.

So now I had the modules which allowed a person to compare two stocks and satisfy their stock selection bias.  But there was a problem.  There was nothing in the model which helped a person decide which stocks to compare!  That is when I started looking at different investor capital allocation styles.  Some investors like to select what they see as the best stock in a sector, others prefer to select what they see as the best stock in an industry.  And there are yet others, who simply want to own what they see as the best stock available, without regard to the sector or industry in which it operates.  These are the three main capital allocation styles.  So I built a module for each of the five investor stock selection style, which bench-marked the key indicators versus the market capitalization weighted average key indicators for the three capital allocation styles (all stocks in the coverage universe, all stocks in its sector of operations, and all stocks in its industry of operations).  In total we ended up fifteen modules, based on three capital allocation styles and five stock selection styles.  Each model provides statistical scores (AOM Score) to satisfy every conceivable stock selection and capital allocation style.  And then I added a sixteenth model which produced a fifteen strategy average of the statistical scores.  We could run each module for any range of market capitalization we chose, and so we had large, small, mid, micro capitalization style preferences covered too.

Then came the final challenge.  We have the market, which reflects the combined wisdom of all participants.  And we have fifteen models, which reflect the wit of several different investors following different stock selection and capital allocation styles, and we have a sixteenth which is the fifteen strategy average.  We came up with the AOM Overall Score, which is a neuro rating of the fifteen strategy combinations, to arrive at a single score, which is intended to reflect the wisdom of the market.

This model is a point-in-time model.  It tells you the position at a point-in-time.  It seeks to outperform markets by selecting stocks which are perceived as the best at a point-in-time.  And because prices and performance move rapidly, the scores change continually.  While this is by no means a short-term trading tool, the churn in a portfolio could end up being quite high.  Be clear about one thing: this is a package aimed at generating ideas, it does not intend to, and nor does it replace the due diligence we must do as investors.  The AOM system can guide you where to look, but make no mistake about it - it cannot look for you.  I started out calling it Idea Central, for that is all it is.  And after you have done your due diligence, remember to risk adjust your expectations: two similar stocks can have very different multiples for good reason - beta, pay-out ratios, growth, return on equity, and market return expectations are all important components of the math of the multiple.

In an ideal world, we should be able to benchmark a stock not only against other stocks, its sector, industry, or all stocks in the market, but against itself too.  The only way to do this is to build a time layered model - a model which gives you a comparison of a stocks score today, against a range of scores it has held over a longer period of time.  We are not there yet.  There is scope for further development!