The S&P 500 is a price index, right? How well does the dynamic information equilibrium approach (previous link) describe the S&P 500? Remarkably well, actually:
There are only four major "shocks". Three are negative: 1971.9, 2001.7, and 2008.5. The former is a very broad slow shock that may well be related to the high inflation of the 1970s (that's pure speculation on my part at this point). The latter two are the so-called "dot-com bust" and the global financial crisis.
There is one positive shock associated with the dot-com boom: 1997.6.
The second graph smooths the S&P 500 data slightly (a local average derivative) since the index is noisy and well-resolved (daily measurements).
But really, the stock market is highly complex .
Update 1 February 2017
I decided to do a bit more with this. If we look a the difference between the series (difference of the logs, i.e. a geometric random process) we can see the dynamic equilibrium takes out nearly all of the drift:
As expected, it passes all the unit root tests (although they have low power). What if we use this series to estimate a process? Mathematica chooses a second order ARMA process ‒ ARMA(2,1) to be precise ‒ if you use TimeSeriesModelFit with default options on the last 7 years of data . Taking that forecast into the future we basically figure out that the S&P 500 should return to the dynamic equilibrium trend:
So now we have a test. Since I only grabbed Mathematica's financial data up to 1 January 2017, we actually have a few data points (black, above) to show against the forecast already. Here's a zoomed-in version:
Update 1 February 2017, the second
I added a couple more potential "shocks" to the S&P 500 model (gray ball and sticks) and looked at the unemployment shocks (green ball and sticks), the Case-Shiller shocks (orange ball and sticks), as well as the NBER recessions (blue):
Around 1970, 1974, 2001 and 2008 we have pretty good alignment of an NBER recession, an unemployment shock, and an S&P 500 shock. The 1980s and 90s show unemployment shocks associated with NBER recessions but not S&P 500 shocks.
The sizes also don't match up completely. The 1974, 2001 and 2008 S&P 500 shocks are "large", but all of the unemployment shocks are of comparable size. Basically, the 1980s and 90s recessions happen without a large signal in the S&P 500. Therefore it's hard to say there is causality happening in either direction, but rather just a loose association.
However the 1980s and 90s recessions (as well as the one in 2008) are associated with shocks to housing prices (1974 probably would be as well given the longer Case-Shiller time series).
There's no real conclusion to be drawn from so few events. We can just generally say that most recessions are associated with falling housing prices, rising unemployment, and a falling S&P 500. This is not very illuminating.
I should also show the derivative picture for the additional shocks:
 See here and here.
 The results are pretty robust to fiddling around with the length of data used to estimate as well as restricting to ARMA processes.