G-Score ROA 5-Year Variance Backtest Part 3

As I previously mentioned in Mohanram G-Score Backtest Part 2, I decided to dig deeper into the individual components of the G-Score. I find the G4 component that looks at a firm’s earnings variability as compared to the industry median at the time to be the most interesting factor. The idea here is that firms with highly variable earnings are often hard for analysts to predict future earnings, and this often lead to disappointment when actual earnings miss these naive earnings forecasts. Mohanram uses the 5-year variance of return on assets (ROA) to measure income variability for his G-Score G4 component.

I ran the following backtest rules on Portfolio123 to test the 5-year variance of ROA on stock performance:

ROA 5-Year Variance Backtest Filer Rules

These rules are based on my standard backtest rules, but I did add a few extra filters. First, I wanted to make sure a company had at least 3-years of filings before calculating the variance (#APeriods >= 3) and I wanted to be sure the variance of the return on assets (ROA) was available (@VarROAcalcA != NA). Then I ranked the income variability of each company within its industry and then sorted then in ascending order. The example rule list above shows the formula for the 4th quintile, rank 60 to 80th percentile. Finally, I also calculated the median ROA variance for each quintile.

Summary of Results for G4: ROA 5-Year Variance

Backtest Results for G4: ROA 5-Year Variance (2002 – 2020)
19-Year Backtest Results for G4 (2002 – 2020)

* Average excess returns were analyzed starting in each month with 12-month holding periods (230 sample periods). This avoids the potential for seasonal reporting bias.

Average annual excess returns from 2002 to 2020 for G4: ROA 5-Year Variance
Average annual excess returns from 2002 to 2020 for G4

The above results clearly indicate that high variance (1st and 2nd quintiles) are associated with lower returns over the 19-year testing period. The positive average excess returns for the 5th quintile of 0.45% are not that impressive, but this component of the G-Score does seem to be very good at identifying the losers. In 74% of the test years, the 1st quintile under-performed the S&P 500 equal weight benchmark.  

Mohanram G-Score: G4 Returns (2002 – 2020)

ROA 5-Year Variance Backtest 1st Quintile
ROA 5-Year Variance Backtest 2nd Quintile
ROA 5-Year Variance Backtest 3rd Quintile
ROA 5-Year Variance Backtest 4th Quintile
ROA 5-Year Variance Backtest 5th Quintile

The charts clearly show a fairly consistent underperformance of the 1st and 2nd quintile of the ROA variance backtests. This factor might be something to consider as a filter for your own investment process. What are your thought on this backtest? Please share them in the comments section below.

I will likely test sales or revenue variability (G5) in my next backtest post. My guess is that it will similar to the income variability backtest.

2 thoughts on “G-Score ROA 5-Year Variance Backtest Part 3

  • July 28, 2020 at 9:53 am

    Great article! What’s your formula for @incomevariabilityA?

  • July 28, 2020 at 10:05 am

    I meant to add that formula to the article. I guess I forgot to include it. The incomevariabilityA formula is as follows:

    $incomevariabilityA = Pow(LoopStdDev(“ROA%(CTR,ANN, KEEPNA)”,5,0,1,0,1), 2)

Leave a Reply

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.