What If Your Predictions are Just Time Lags of Your Actual Output? (OR Another Reason Not to Predict Close)

Some of you may have noticed this phenomenon. You predict the close X days in advance. The net may look pretty good in terms of low error. But then you notice a striking similarity between the actual close and the predicted close, but the prediction is just a lagged version of the actual (in order words, it looks shifted to the right). To check it out, you insert an X day lead of the prediction, and, sure enough, the lead comes close to overlaying the actual close. What’s going on?

Take a look at your input contributions. You probably used the close as an input, or maybe the lag of the close, or a moving average of the close, or some similar transformation. That is a reasonable thing to do. You’ll probably also notice that this input accounts for most of the contribution. Basically the net has “learned” that this input is the best it has in the lot, and it has learned that simply closely reproducing this input produces the best output, given the lack of other more predictive inputs! The net is trying the best it can, but nets aren’t magic; they need something predictive to work with.

This is another reason that predicting the close is not such a good idea. Try this test. Load Exxon (XON). Predict the close 5 days in advance, using only the close as input. Don’t bother with any walk forwards. Look at the output (red line current net). It looks like the close shifted to the right. Now insert a 5 day lead of the close and drag that indicator to the same subgraph the actual close is in. You’ll see that they match, meaning the prediction for the close 5 days ahead is just the close today. This net is not really predicting. Notice that the lead indicator (pink) looks exactly like the actual (blue).

Next, start a new chart with the same issue. Now predict the CHANGE in close 5 days in advance, again using only the close as input. Drag the prediction (red line) to its own subgraph so you can see that the prediction. For such a poor input you should actually see some similarity in direction WITHOUT doing any lead. This net has actually tried to predict the change in close as best it can with the input it had. Note how the red (predicted) matches the direction of the blue (actual), athough it doesn’t cross the zero axis at the same points.

Was this article helpful?

Related Articles