Probm, Sta, Snoa

Is there a way to apply P123 metrics to bankruptcy potential? There have been studies on this and the title suggests a few acronyms of these.

Bryan

Ok, here is a short description of the three items.

Probm is short for probablility of manipulation using:

DSRI - Days’ sales in receivables index. Measured as the ratio of days’ sales in receivables in year t to year t-1. Large increases could indicate attempts by management to inflate revenues.

GMI - gross margin index. Measured as the ratio of gross margin in year t-1 to gross margin in year t. Gross margin has deteriorated when the index is above 1. All else being equal, a firm with poor prospects is more likely to engage in manipulation.

AQI - asset quality index. Asset quality is measured as the ratio of noncurrent assets other than plant, prperty and equipment to total assets. AQI measures the proportion of total assets where future benefits are more opaque and the assets are considered intangible. The measure may indicate attempts at cost deferrals in the form of intangible assets on the balance sheet.

SGI - sales growth index. Ratio of sales in year t to sales in year t-1. Sales growth does not indicate manipulation; however, high sales growth does create certain expectations for management - many of which are unsustainable. Managers who face decelerating fundamentals and who currently manage high-expected-growth firms have high incentive to manipulate earnings.

DEPI - depreciation index. Measured as the ratio of the rate of depreciation in year t-1 to the corresponding rate in year t. DEPI greater than 1 indicatres that assets are being depreciated at a slower rate. Managers may be adjusting depreciation methods to temporarily inflate earnings.

SGAI - sales general and administratrive expedcnses index. The ratio of SGA expenses in year t realtive toyear to-1. Firms with growing SGA may indicatre managers who are capturing firm value via higher salaries.

LVGI - leverage index. The ratio of total debt to total assets in year t relative to year t-1. An LVGI greater than 1 indicates an increase in leverage, which may increase the probablility that a firm will breach a debt covenant. All else being equal, the probablility of manipulation is higher in the face of a potential covenant breach.

TATA - total accruals to total assets. Total accruals calculated as the change in working capital accounts other than cash less depreciation. High accruals indicate a higher likelihood of earnings manipulation.

The formula putting these together is

PROBM = -4.84 + 0.92DSRI + 0.528GMI + 0.4404 * AQI + 0.892*SGI + 0.115 * DEPI - 0.172 * SGAI + 4.679 *TATA - 0.327 *LVGI

PMAN then = CDF(PROBM) where CDF is the cumulative densigty function for a normal (0,1) variable. PMAN is the chance of manipulation. A PMAN value of zero implies no chance of manipulation, while a PMAN value of one indicates that manipulation is certain.


STA - Scaled total accruals
This was published by Richard Sloan.

STA - (CA - CL - DEP)/Total Assets

CA - Change in current assets minus change in cash and equivalents

CL - Change in current liabilities minus change in Long term debt included in current liablilities minus change in income taxes payable.

DEP - depreciation and amortization expense

An accrual measure can be expressed as:

STA - (Net Income minus Cash flow from Operations)/Total Assets


SNOA - Scaled net operating assets

SNOA = (Operating Assets minus Operating Liabilities)/Total Assets

OA - total assets minus cash and equivaletns
OL - total assets minus Short term debt minus long term debt minus minuority interest minus preferered stock minus book common equity

For STA and SNOA, low values indicate buys and high values indicate sells.

From the book (not verbatim), Quantitative Value, Wesley Gray, PhD and Tobias Carlisle, LLB.


Are there any approaches from P123 that can address serious problems that the company is hiding?


Bryan

Bryan,

Thank you for these posts. You bring up a fascinating and important topic and one that has been attracting my attention.

If you check the spreadsheet showing available data items (in the Help section), you’ll notice that there are now quite a few data items that allow you to create many earnings quality metrics on your own, on the fly or as custom formulas. That said, many members won’t feel comfortable constructing this items, so I’m working on a set of relevant portfolio123 factor/functions. There are now quite a few different measures out there and more are likely to be forthcoming, so I can’t say “yes” to any specific model. But I am hoping to provide a strong and usable set of items.

You seem to be up on this topic. If you have further thoughts, feel free to ping me via p123’s EMAIL USER feature; that way, we can be sure I won’t miss seeing something on the forum. Ditto for others who are interested in this topic. If others want to participate I this and it looks as if e-mail will be impractical, I’ll set up a P123 Group.

Along similar lines, I’d also like to give some attention to how we can work with the SpclItems and ExpNonOp line items to flag unusuals that distort EPS; a huge problem when dealing with financial databases but one we’re now much better positioned to address thanks to our having Compustat data, as opposed to Thomson Reuters, which buried all that stuff in OpInc, EBIT and EBITDA.

Marc Gerstein

Hi Bryan and Marc,

Absolutely an interesting topic. You can count me in!

I assume that the Piotroski F-Score and Altman Z-score are related to this topic as well.

Regards,
Ewoud

For those interested, a recent (2011), highly readable review of the accrual anomaly by Dechow et al is available at The Accrual Anomaly by Patricia Dechow, Natalya V. Khimich, Richard G. Sloan :: SSRN

Best
Rob

I downloaded the paper and will go through it; things related to accruals are high on my priority list. I wonderif this is included in the Mitch Zacks anthology on anomolies; I’ll have to check.

There’s also what looks to be a very interesting book: “What’s Behind the Numbers?” by John Del Vecchio and Tom Jacobs. “Quantiataitve Value” by Wes Grey and Tobias Carlisle has some material on PROBM (although I caught an editorial error that I’ll report as soon as I figureout how to contact the publisher; the book gives the coefficient for GMI as 0.4.404, which is obviously impossible (it should be 0.404).

Ewoud,

Re: your e-mail; I didn’t know what you were referring to RE: P Score, but from the post here, it seems to be Piotroski; yes I definitey plan to include his metric.

I laso have all three versions of Altman’s Z-score

Marc,

Mitch Zacks anthology does have a chapter (chapter2) on accruals. The anomaly has had much less of an effect since it was first published and became well known. Wes Gray also has good information on this in his “Quantitiavie Value: a Practitioner’s Guide to Automating Investment and Eliminating Behavioral Errors”

Jim

I looked into STA a while ago. Richard Sloan’s paper is called “Do Stock Prices Fully Reflect Information in Accruals and Cash Flows about Future Earnings?”.

The paper describes the following formula:
STA = ((deltaCA - deltaCash) - (deltaCL - deltaSTD - deltaTP) - Dep) / TotalAssets
where
deltaCA = change in current assets = Compustat #4 = Current Assets Total = ACT = AstCur
deltaCash = change in cash/cash equivalents = Compustat #1 = Cash and Short-Term Investments = CHE = CashEquiv
deltaCL = change in current liabilities = Compustat #5 = Current Liabilities Total = LCT = LiabCur
deltaSTD = change in debt included in current liabilities = Compustat #34 = Debt in Current Liabilities - Total = DLC = DbtST
deltaTP = change in income taxes payable = Compustat #71 = Income Taxes Payable = TXP = TxPayable
Dep = depreciation and amortization expense = Compustat #14 = Depreciation and Amortization = DP = DepAmortIS
TotalAssets = Compustat #6 = AT = AstTot

(The above list includes the compustat item numbers mentioned in the paper, the compustat name from the mapping table at http://www.crsp.chicagobooth.edu/documentation/product/ccm/cross/annual_data.html, and the P123 name from the mapping in the Line Item Reference. All items are annual.)

Putting this together in a P123 formula gives:
$STA = (((AstCur(0,TTM)-AstCur(1,TTM)) - (CashEquiv(0,TTM)-CashEquiv(1,TTM))) - ((LiabCur(0,TTM)-LiabCur(1,TTM)) - (DbtST(0,TTM)-DbtST(1,TTM)) - (TxPayable(0,TTM)- TxPayable(1,TTM))) - (DepAmortIS(0,TTM)-DepAmortIS(1,TTM))) / AstTot(0,TTM)

Lower STA is better.

Backtesting performance
From the paper: “The study, therefore, employs financial statement data for the 30 years beginning in 1962 and ending in 1991. Finally, the financial statement data required to compute operating accruals are not available for all firms. In particular, these data are not available on Compustat for banks, life insurance or property and casualty companies.”

From Quantitative Value: “[…] shows what happens when an academic takes an idea to Wallstreet - the effect vanishes or dimishes. […] after 1996 there is a decidedly worse run [for the long/short STA strategy]”.

From my quick and dirty ranking system performance test 2008 - 2013: it doesn’t seem to work. For microcaps, the top bucket (of 20) with lowest STA loses money while all other buckets make money. For other caps, all buckets perform about the same, there is no slope or extreme top or bottom bucket. About half of the stocks have NA values.

Simpler version
Since around 1990, companies need to report additional data that allows a simpler formula according to Quantitative Value: STA = Net Income minus Cashflow from operations / Total assets. I’m not 100% sure which “Net income” variation is meant here, since I don’t have the compustat item numbers or names. In a P123 formula:

$STA_simple = (NetIncCFStmt(0,TTM) - OperCashFl(0,TTM)) / AstTot(0,TTM)

Quantitative Value does not backtest this formula and uses the more complicated version.

In a ranking system with $STAsimple as the only factor and using “lower is better”, the top bucket (of 20) has a -50% return! With 200 buckets, the top 10 buckets all lose a lot of money, some buckets over 75%. (When I change the ranking system to higher is better, I don’t get such extreme returns in the lower bucket, no idea why).

So it seems like a good idea to avoid the 5% with the lowest $STA_simple like the plague.

Btw, it’s not too hard to do a similar exercise for PROBM and SNOA. Quantative Value mentions that SNOA also works a lot worse nowadays, similar to Sloan’s STA.

I also looked at SNOA and PROBM (the 5 factor variant) and came up with these formulas. I have not double checked the compustat items like I did for STA in my post above and I have not backtested these formulas yet.

$SNOA = ((AstTot(0,TTM) - CashEquiv(0,TTM)) - (AstTot(0,TTM) - DbtST(0,TTM) - DbtLT(0,TTM) - NonControlInt(0,TTM) - PfdEquity(0,TTM) - BookVal(0,TTM))) / AstTot(0,TTM)

$PROBM5 = 0.823 * (Recvbl(1,ANN) / Sales(1,ANN)) / (Recvbl(0,ANN) / Sales(0,ANN)) +
0.906 * ((Sales(0,ANN) - CostG(0,ANN)) / Sales(0,ANN)) / ((Sales(1,ANN) - CostG(1,ANN)) / Sales(1,ANN)) +
0.593 * (AstNonCurOther(1,ANN) / AstTot(1,ANN)) / (AstNonCurOther(0,ANN) / AstTot(0,ANN)) +
0.717 * Sales(1,ANN) / Sales(0,ANN) +
0.107 * (DepAmortIS(0,ANN) / (DepAmortIS(0,ANN) + GrossPlant(0,ANN))) / (DepAmortIS(1,ANN) / (DepAmortIS(1,ANN) + GrossPlant(1,ANN)))

       = 0.823*(Recvbl(1,ANN)/Sales(1,ANN))/(Recvbl(0,ANN)/Sales(0,ANN))+0.906*((Sales(0,ANN)-CostG(0,ANN))/Sales(0,ANN))/((Sales(1,ANN)-CostG(1,ANN))/Sales(1,ANN))+0.593*(AstNonCurOther(1,ANN)/AstTot(1,ANN))/(AstNonCurOther(0,ANN)/AstTot(0,ANN))+0.717*Sales(1,ANN)/Sales(0,ANN)+0.107*(DepAmortIS(0,ANN)/(DepAmortIS(0,ANN)+GrossPlant(0,ANN)))/(DepAmortIS(1,ANN)/(DepAmortIS(1,ANN)+GrossPlant(1,ANN)))

I guess you can substitute ANN with TTM in the PROBM5 definition above.

The -50% return in the top bucket for STA_simple seems to be coming from OTC stocks only. The backtest for Non-OTC stocks looks very different.

Pvdb,

Thanks for sharing your work.

You probably noticed that if you add the node, EBITA/EV, you get a very nice stair step. However, the to results are not spectacular. 19% with equal weights (20 buckets).

Jim

I see a lot of uses of TTM with offset 1 (1,TTM). Please note that TTM uses interim periods, so offset 1 is trailing 12 months offset by 1 quarter. To calculate PTM you need (4,TTM)

Also , TTM for a balance sheet item does an average of 4 periods

Marco,

Thanks for spotting my mistakes and clarifying TTM.

The online help page is very (too) sparse on this though. Do you have a better explanation of the definitions available somewhere?

If not, I’ve still got a couple of questions:

  1. Does TTM calculate the sum of the 4 quarters for cashflow and P&L statements (as opposed to average for balance sheets)?
  2. Does (0,QTR) for balance sheet items have the most recent numbers available?
  3. Does (0,QTR) for cashflow/P&L items have the number for the most recent quarter only?
  4. Does ANN always give the numbers for exactly one fiscal year? So the data for (0,ANN) might be out of date for almost a year, right? Are the numbers averaged for balance sheet items or not?

Thanks!

  1. Does TTM calculate the sum of the 4 quarters for cashflow and P&L statements (as opposed to average for balance sheets)?

Yes, that is correct.

  1. Does (0,QTR) for balance sheet items have the most recent numbers available?

Yes, the operative word being “available.” On Apr. 1, we won’t have a qtr ending 3/31, but the 3/31 qtr will be available as soon as the data is filed with the SEC and picked up by Compustat.

  1. Does (0,QTR) for cashflow/P&L items have the number for the most recent quarter only?

Right. qtr is a singlular item in all cases. It’s most often used “as is” when looking at balance sheets, but it does also have uses in the other statements and can be used as such.

  1. Does ANN always give the numbers for exactly one fiscal year? So the data for (0,ANN) might be out of date for almost a year, right? Are the numbers averaged for balance sheet items or not?

You are correct. ANN is a single fiscal year and it does get out of date. That’s why (TTM,…) items are more oftenused in models. They allow us to work with annual numbers, but stay as up-to-date as possible as the calendar marches on.

Thanks!

I double checked the SNOA and PROBM formulas using the original papers and the compustat translation tables, and I changed them to use QTR and TTM and the right offsets. Except for mistakes or typos in the translation process, I’m pretty sure these formulas are correct now.

These are the results:

STA = (((AstCur(0,QTR)-AstCur(4,QTR)) - (CashEquiv(0,QTR)-CashEquiv(4,QTR))) - ((LiabCur(0,QTR)-LiabCur(4,QTR)) - (DbtST(0,QTR)-DbtST(4,QTR)) - (TxPayable(0,QTR)- TxPayable(4,QTR))) - (DepAmortIS(0,TTM)-DepAmortIS(4,TTM))) / AstTot(0,QTR)

STAsimple = (NetIncBXor(0,TTM) - OperCashFl(0,TTM)) / AstTot(0,QTR)

SNOA = ((AstTot(0,QTR) - CashEquiv(0,QTR)) - (AstTot(0,QTR) - DbtST(0,QTR) - DbtLT(0,QTR) - NonControlInt(0,QTR) - PfdEquity(0,QTR) - ComEq(0,QTR))) / AstTot(0,QTR)

PROBM7 = .92Recvbl(0,QTR)/Sales(0,TTM)/(Recvbl(4,QTR)/Sales(4,TTM))+.528(Sales(4,TTM)-CostG(4,TTM))/Sales(4,TTM)/((Sales(0,TTM)-CostG(0,TTM))/Sales(0,TTM))+.404*(1-(AstCur(0,QTR)+NetPlant(0,QTR))/AstTot(0,QTR))/(1-(AstCur(4,QTR)+NetPlant(4,QTR))/AstTot(4,QTR))+.892Sales(0,TTM)/Sales(4,TTM)-.172SGandA(0,TTM)/Sales(0,TTM)/(SGandA(4,TTM)/Sales(4,TTM))+4.679*(NetIncBXor(0,TTM)-OperCashFl(0,TTM))/AstTot(0,QTR)-.327*(DbtLT(0,QTR)+LiabCur(0,QTR))/AstTot(0,QTR)/((DbtLT(4,QTR)+LiabCur(4,QTR))/AstTot(4,QTR))

(note: I left DEPI out of my PROBM formula because a custom formula can have at most 500 characters, and I could only squeeze 7 factors into 498 characters; DEPI only contributes 2% to the final value anyway)

One interesting thing I noticed is that the factor that contributes almost 60% to PROBM7 is exactly equal to STAsimple.

Peter,

Thanks for sharing!

You can circumvent the 500 limit by splitting the custom formula in two or more pieces:

E.g. PROBM7 = $PROBM7_PART1 + $PROBM7_PART2

Regards,
Ewoud

BTW How are the backtest results for these formula’s? Are they interesting to investigate further in your opinion?

Ewoud,

That’s right. For completeness, this is the DEPI part of the formula:

0.115 * DepAmortIS(4,TTM) / (DepAmortIS(4,TTM) + NetPlant(4,QTR)) / (DepAmortIS(0,TTM) / (DepAmortIS(0,TTM) + NetPlant(0,QTR)))

Please note that this is the only factor that I could not accurately reproduce on P123, because the amortization is not available as a separate data item (compustat name AM). This is the full formula in the paper: ((#14p - #65p) / (#14p - #65p + #8p)) / ((#14t - #65t) / (#14t - #65t + #8t)), where #14=DepAmortIS, #65=“AM”, #8=NetPlant, the suffix t means this year and the suffix p means previous year (that’s my own notation, not in the paper).

I haven’t done a lot of backtesting yet. The little testing I did showed it “might work reasonably”. You’d want to avoid the lower bucket in most cases, but not always, and the other buckets don’t have a clear pattern. I’d use these formulas to screen out the worst cases, like Quantitative Value does, and not use it to rank the companies that pass the screen.

Also be aware that the weights of the PROBM formula were found by regressing on the data of 70 or so “problem” companies (failed, fraud) in a universe of over 2500 companies. That’s pretty much the definition of data mining I think.

pvdb,

Your scaling formulas use AstTot(0,qtr). Actually, it should be an average: (AstTot(0,qtr)+AstTot(4,qtr)/2) or with the p123 Avg function, it would be: Avg(AstTot(0,qtr),AstTot(4,qtr)).

Marc

I started this thread. Has anyone tried out the formulas and gotten better results?

Bryan