P/E of the S&P 500 (and other indices)

Note: Please read the disclaimer. The author is not providing professional investing advice.

When attempting to determine whether a stock, or the entire market for that matter, is over- or undervalued, it can be useful to know the P/E’s of various market indices for comparison.

But similar to the annual performance of the S&P 500, this data is not so easy to find. And often when you do come across a site that appears to have it, you find that it’s only re-computed annually or quarterly.

However, Investopedia has a great article detailing one way around the problem – get the P/E of an ETF that closely tracks the index instead.

And it turns out that up-to-date P/E’s of ETFs are easy to find.

Here’s a short list of index ETFs that I use:

Index ETF Ticker Covers
S&P 600
IJR
US Small-Caps
S&P 400
MDY
US Mid-Caps
S&P 500
SPY
US Large-Caps
DJW 5000
VTI
Entire US Stock Market


Plug any of these ticker symbols into Yahoo! Finance and you get the trailing twelve months P/E without much digging. It looks like Yahoo! only updates the P/E once a month, but that’s better than not knowing at all, right?

And if you’re really concerned about accuracy, you could use Yahoo’s Historical Data interface to find the price per share on the date that the last P/E was computed and multiply it by the ratio of the price now to the price then to estimate what the P/E is today.

For your Matlab users out there, here’s a script that will retrieve the P/E’s from Yahoo! and return them as doubles.

get_index_pes.m

It uses Matlab’s Java interface, so maybe pure Java speakers could find some helpful code to expropriate too.

Enjoy!