Let's say you have some item - say, a pencil - and you want to know its value. Where does this number - that is, the price you could charge for it - come from? It's tempting to say that the value of an object comes from the cost of producing it. That is, if a pencil costs 5 cents to make, it will sell for around 5 cents (maybe plus some profit).
But I think that's only incidentally true. The value of a pencil is simply the amount of money people are willing to pay for it. For renewable objects - that is objects you can easily make more of - like pencils, the price is tied to the production costs through competition. If someone could produce new pencils for 5 cents, there's no way you'd be able to hold your and sell them for 10 - you'd be undercut. So while it seems like the costs of production are linked to the value of an object, again I think that's incidental.
It may seem like a distinction without a difference, but I think it's important when thinking about objects where we can't make more of them, like say stocks. In that case, there seems to be no "fundamental" value to hold the price down. In that case, where does the value of the stock come from?
I'm going to suggest that there is a price, but it's totally hidden to everyone. That is, a perfectly optimal price exists, and everyone is trying to guess it, but through approximations based on inaccurate data.
So let's say the hidden, optimal value of a stock is X, and the current price is Y. Y is obviously related to X somehow, but the connection is mushy, and may change constantly. This notion - that there is a "true" value but the value you see is related in some unknown and changing way - is a very familiar concept in the world of signal processing. In signal processing - say in your cell phone - data from the phone is transmitted to the antenna, but along the way, it gets corrupted. No one knows quite how it gets corrupted, but it turns out that in some cases, you can figure it out.
Enter adaptive filters. An adaptive filter takes a corrupted input signal and over time, adapts to find the "shape" of the noise that is corrupting it. There are many algorithms for adaptive filters, but one of the easiest and most common is the LMS algorithm. It works by using steepest descent to minimize a cost function. That is, as each new data point comes in, it figures out its best guess for the "true" value of that data point. It then moves its filter a small amount in the opposite direction - along the line of steepest descent - to compensate for the difference between the recevied value and the "true" value - that is, the "cost function".
How can we apply this to the stock market? Well, let's say that we know the earnings per share, and what we're looking for is the "true" price/earnings (P/E) ratio that would result in the "true" (optimal) stock price. It would be nice if we had this "true" P/E, but we don't. All we have is the corrupted P/E that we can get from the current stock price.
To get to the true P/E, we can apply the LMS algorithm as follows:
X(n) = earnings per share at time n
h(n) = our current best guess at the optimal P/E at time n
then Y(n) = h(n) * X(n) = our current best guess for the price
d(n) = the current stock price at time n
then e(n) = d(n) - y(n) = the "error" between our best guess and the current best at time n
To find the next value of 'h(n+1)' - our new best guess - the LMS algorithm works as follows:
h(n+1) = h(n) + μ⋅e(n)⋅X(n)
The μ is a scaling factor that allows the algorithm to converge. If its value is too big, the algorithm will either never converge or it will oscillate. If it's too small, it will take too long to converge (and for wildly changing data, it too will never converge).
But there's one more wrinkle here, which is that everyone is doing this and the current price (d) is a function of everyone's current guess. That is, if everyone thinks the price should go up, it will because people will be willing to pay more.
The nifty thing about this algorithm is that it doesn't take very much as an input - just the EPS. It assumes that no one knows anything about the stock except for the current (or past) values. Nothing about its future prospects.
As an example, I applied the algorithm to random-walk EPS data, to produce the following plot:
In the plot, the slow changing red line (not the wild salmon line) is the random EPS input. Each of the other lines represents one simulation and each simulation has 100 "investors", each with a different μ. The share price is the simple average of all 100 investors' current best guess at the price. For each line, I changed the maximum μ as shown in the key. Note that except for the random walk on the EPS data, there is no other randomization in this algorithm.
What's crazy is how small the variations in the EPS data are and how wild the variations in the price data can get for large μ. But yet for small μ, the lines track the EPS data very closely, indicating that this algorithm doesn't just generate completely random output. And what's even more interesting is that the extreme fluctuations don't correlate well with corresponding fluctuations in the EPS data.
If I was going to draw any conclusions from this, I would say that, if the pricing model for non-replaceable objects does indeed conform to something similar to this - that is, each investor is trying to use the current price as an indicator of the "true" price - then bubbles could be explained simply by a change in μ. Or said another way, bubbles (and possibly busts) could be explained by investors suddenly becoming much more sensitive to changes in the fundamental data, such as EPS. I'm not sure I'm prepared to draw any conclusions, but if I was, that would be it.

Comments