Error on number of shares outstanding and market cap

Please can you ckeck number of shares outsdanding and market cap of AE (NYSE stock). Adams Resources & Energy, Inc.
I believe there is an error. Real number of shares outstanding is 2,5M, and you are indicating 4.4M, so Market cap should be around 97M, and you are indicating around 175M. I believe number of shares should be updated every quarter (balance sheet) or when company makes new issue,repurchase… but market cap should be updated daily alongside daily price.
I have checked with other different sources, like Bloomberg, and all of them report around 97M market cap
Thank you.

This is a problem that keeps coming up.

According to the 10-Q filing, there were a total of 4,355,001 shares of common stock outstanding as of the end of the quarter on September 30, 2022 but that went down to 2,452,404 shares at November 1, 2022.

Obviously, the later number is more accurate, but MktCap is based on the stale figure.

This is a very interesting example on why we should finally prioritize this problem. Thanks for bringing this up.

AE Buyback

AE repurchased like 44% of their shares, an extremely bullish signal, but it’s not reflected yet in the financial line item. More specifically it’s not reflected in the line items for SharesQ or SharesFDQ. Those are still 4.39M and 4.42M. But the new number of 2.45M is shown in several footnotes, and the front page, of the filing

In P123 you can get to the 2.54M shares using SharesCur(0). It’s given to us via the pricing data which tells us it’s kind of a separate data collection mechanism. What I mean is that this number can change in between filings due to dilutions or buybacks, so it’s not always found in the filing (not the case for AE, 2.54M is reported in the text of the filing).

Back to P123

A long time ago we decided to use SharesQ and SharesFDQ from the line items for all our ratios which include Market Cap. I believe there were some issues with stocks with multiple classes that were very hard to solve at that time if we used SharesCur(0). Also fully diluted shares is only available from the line items.

I think it’s time to revisit how we compute MktCap, prioritize SharesCur(0) over line item values, and probably do the same for the rest of the valuation ratios (it’s a bit trickier for other rations since they use fully diluted shares which only comes from line items).

We’ll discuss internally. Let me know if you have other questions.


On a side note. We have several sample strategies that use “Share Buyback” as a ratio of for example SharesQ/SharesPQ. We (and you) should revisit them and use something like SharesCur(0)/SharesCur(61) which would have worked great for AE. You would have probably still missed the first jump around Nov 1 2022, but not this recent, and ongoing upward trend.

1 Like

Some more info…

I confirmed it with FactSet (all vendors do this) that the most recent # of shares outstanding used to calculate market cap is in fact sourced from different places: press releases, exchange, etc. This number can and does change in between filings. And it is not trivial with some companies.

But we cannot use this number because it is not reproduceable historically. Some companies like Visa for example have non-listed shares, so they are nowhere to be found in the historical tables like SharesCur(). Since we are a backtest engine we used the safe choice which is the # shares from the filings, which includes all shares, but it is not the most current value.

What we can do perhaps is create new factors like SharesMR and SharesFDMR to represent the Most Recent number of shares and Fully Diluted shares using a combination of the line item data and the change in SharesCur. This should approximate “most recent shares outstanding” in backtests.

We’ll do some tests.


1 Like

Great points. I sometimes will use a max function to pick the max out of the two (Q vs Cur) in case there is issuance and stay away sometimes from the pure Cur because there might be multiple share kinds so def an important matter for per share analysis