3
$\begingroup$

I am implementing the ARIMAX model for stock price predictions. To select the order, I looped through $0\le p,d,q\le10$ and found the best order to be (1,0,10). I'm a bit confused how to interpret these results. How do I tell if its reasonable, and what does this imply about the data?

$\endgroup$

4 Answers 4

3
$\begingroup$

I'd like to give a slightly more optimistic answer than those before me, so let me begin with the following quote from the Preface of Harvey (1989):

It is always very difficult to predict the future on the basis of the past. Indeed, it has been likened to driving a car blindfolded while following directions given by a person looking out of the back window. Nevertheless, if this is the best we can do, it is important that it should be done properly, with an appreciation of the potential errors involved. In this way it should at least be possible to negotiate straight stretches of road without a major disaster. Too many forecasting procedures seem to attribute the person in the back seat with supernatural powers when in fact his behaviour is more consistent with that of someone who is mildly inebriated.

So, we know that predicting (the price of a stock) is difficult, but let's focus on the main point of the question, which is to interpret and evaluate a model that has been chosen to produce forecasts and try to do this as best as we can. That's all we can do and this is by no means fruitless if we require the forecasts for some particular purpose; perhaps planning and not necessarily for mere speculation!

On model selection strategy. The method employed by the OP - looping over p, d, and q - is a somewhat brute force way of identifying a tentative model from the class of ARIMA models. Some automated systems use this kind of technique to select a model based on minimizing some selection criteria, such as AIC, but, as noted by Wayne, another popular approach is the Box-Jenkins methodology. Rather than engage in debate over these strategies, I'll get straight to answering the OP's questions by assuming that the strategy employed is viable, but will note that there are arguments both for and against it; parsimony, modelling time, knowledge required, to name but a few.

So, the OP has selected a model of order (1,0,10)...

Q: What does this imply about the data?

This suggests that the time-series can be modelled as an ARMA process rather than an ARIMA process; in this case, the I in ARIMA is redundant. Furthermore, since the time-series is not integrated of order greater than 0, we can say (but not confirm!) that the series is stationary. Bear in mind that building a model involves an iterative procedure, so the claim is made for the time being. In other words, further investigation could lead to the final model being integrated of order 1 or 2 or the series being modelled in logs.

Q: How do I tell if it's (a) reasonable (model)?

You do a couple of things really:

  1. Visually inspect the data to see if the order of differencing seems plausible;
  2. Use the autocorelation function (ACF) and partial autocorelation function (PACF) to see if there exists dynamics not accounted for, e.g. seasonality;
  3. Check the estimated coefficients satisfy both stationarity and invertibility conditions;
  4. Check that the estimated coefficients are statistically significant, e.g. inspect t-values;
  5. Check that the parameters do not have a cancelling out effect;
  6. Inspect the estimated residuals and the residual autocorrelation function to decide whether or not the residuals contain any information that can be modelled explicitly; and
  7. Make comparisons to rival models.

The ultimate decision will have to be made on some set of grounds such as statistical adequacy, parsimony, model purpose, etc.

Q: How to interpret these results?

One of the disadvantages of time-series models is that they can be difficult to interpret. For example, time-series models often play an auxiliary role in economics because they do not lend themselves well to economic interpretation. Instead, economists prefer to use structural econometric models or dynamic stochastic general equilibrium models when trying to understand or explain (as opposed to merely produce forecasts of) some phenomena. Parameters in such models can be interpreted as elasticities or some other meaningful economic concept - arguably, unlike coefficients in time-series models.

Essentially, time-series models are a statistical approach, so they're most suited to being interpreted from a statistical standpoint rather than being used for explanations or as story-telling devices - like, a model pertaining to, say, the determinants of a stock price. For example, moving average terms can be interpreted as having a smoothing effect while complex roots suggest periodic behaviour, and so on. That is not to say that a more meaningful interpretation cannot be put on the model, for that's what, say, structural VARs have been used for.

In any case, based on the information given, I cannot say a whole lot more; however, some suggestions follow that I hope are helpful.

To impose a bit more of a real world (I don't know a better way to express it) interpretation on the model, you could look at another class of models known as structural time-series models, which are related to ARIMA models, but have a direct interpretation in terms of trends, cycles, and other components. With this class of models, you can get at telling a story in terms of, say, the stock price being above or below a local or global trend and that would be similar to how chartists or technical traders analyze stocks.

In terms of interpreting the ARIMAX model, I would highly recommend this blogpost by Rob Hyndman, which explains the relationship between ARIMAX models, regression models with autocorrelated errors, and transfer function models, and most importantly, how each of these models can be interpreted.

Lastly, luckily for the OP, the purpose of the model is for forecasting and not to explain, so the interpretation issue is not such a big deal in this context.

Safe driving and watch the bend that lies ahead!

$\endgroup$
0
1
$\begingroup$

Use temporal validation. Break up your time-series into 4 segments. The first segment trains the data on each of the parameters. This fit is evaluated on the second segment with mean-squared error. The model with the best fit, is refitted using the third segment. The fourth segment is then the reported accuracy of your best fit.

$\endgroup$
0
$\begingroup$

As far as I know, you can't use ARIMA to (successfully) predict stock prices.

Given that you want to use ARIMAX on some kind of business data besides stocks, my question would be how you calculated which order was "best". I can imagine several ways of doing this, several of which will be misleading. In general, there is a Box Jenkins methodology for determining the appropriate order, which is a bit of an art but also has a firmer foundation than a grid search over values of p, d, and q.

To put your results in context, are you working with daily values, hourly values, monthly values?

$\endgroup$
1
  • $\begingroup$ Business daily values $\endgroup$
    – user34864
    Commented Dec 5, 2013 at 18:16
0
$\begingroup$

I have one bad and one good news for you:

There is no way to predict the price of stocks and bonds over the next few days or weeks. But it is quite possible to foresee the broad course of these prices over longer periods, such as the next three to five years. These findings, which might seem both surprising and contradictory, were made and analyzed by this year’s Laureates, Eugene Fama, Lars Peter Hansen and Robert Shiller.

If you are working with stock prices (not returns), then your model doesn't make any sense whatsoever. In order for it make some kind of sense it has to be difference order one on the log prices, even then it would break down quickly.

Basically,what you are doing will not predict anything. I'm sorry to disappoint you, but it is what it is.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.