Loading market pulse…
Tools

ARIMA Forecasting Explained Without the Textbook

By FatNarwhal·

ARIMA stands for Autoregressive Integrated Moving Average, which sounds like someone was paid by the syllable. Strip away the jargon and the concept underneath is actually intuitive; it is a way to forecast a time series by looking at its own past values and its own past errors, after first transforming the data so that it does not have a trend.

The reason forecasters care about ARIMA is that most real-world time series, including asset prices, economic indicators, and trading volumes, have structure in them. They are not pure noise. Yesterday's value gives you some information about today's value. The model captures that structure and uses it to project forward.

The FatNarwhal ARIMA tool takes any stock or economic data series, fits an ARIMA model to it, and outputs a forecast with confidence bands so you can see both the central estimate and the range of uncertainty.

How to Use It

Go to fatnarwhal.com/arima and enter a ticker or select a data series.

The tool fits the model to historical data (you can specify how much history to use) and generates a forward forecast for however many periods you specify, typically 30 or 60 trading days. The output is the forecast line along with 80% and 95% confidence intervals; the further out you forecast, the wider the bands get, which is honest and expected.

You can also manually set the three ARIMA parameters (p, d, q) if you have a specific model in mind, or let the tool pick them automatically based on information criteria. For most users the automatic selection is the right starting point.

One thing to look at closely is the residual diagnostics, which the tool displays below the forecast. If the residuals (forecast errors on the training data) look like random noise with no pattern, the model has captured the structure in the data well. If there is still obvious autocorrelation in the residuals, the model is missing something and the forecast should be interpreted cautiously.

The Math Behind It

ARIMA(p, d, q) combines three components.

The AR(p) part, autoregressive of order p, says that today's value is a linear function of the previous p values:

yt=c+ϕ1yt1++ϕpytp+εty_t = c + \phi_1 y_{t-1} + \dots + \phi_p y_{t-p} + \varepsilon_t

The I(d) part, integrated of order d, means the series has been differenced d times to make it stationary (removing trends). For stock prices, d is usually 1 because daily returns are stationary even though prices are not.

The MA(q) part, moving average of order q, says that today's value also depends on the previous q forecast errors:

εt+θ1εt1++θqεtq\varepsilon_t + \theta_1 \varepsilon_{t-1} + \dots + \theta_q \varepsilon_{t-q}

The full ARIMA model combines all three. The parameters (p, d, q) are chosen by fitting many candidate models and picking the one with the lowest Akaike Information Criterion (AIC), which balances goodness of fit against model complexity.

When to Use It and When Not To

ARIMA is most useful for time series that have autocorrelation in their values or errors; meaning past values are genuinely predictive of future ones. It works well for relatively stationary data like log returns, volume, or economic indicators with clear seasonal or cyclical patterns.

It is less useful for raw stock prices, which generally behave like a random walk under the efficient market hypothesis; if prices are truly random walks, the AR component adds nothing. This is why ARIMA is often more useful for modeling returns or residuals from a factor model than for forecasting price levels directly.

The confidence bands widening rapidly over the forecast horizon is not a bug; it is the model being honest about how uncertainty compounds with time. An ARIMA forecast for 200 days out should have very wide bands, because there is genuinely very little information in past data that constrains where a series will be 200 days from now.

Try It

Go to fatnarwhal.com/arima and run a forecast on any stock's daily returns (not price). Look at the residual plot first; if the model fit looks clean, look at the forecast. Look at where the median forecast goes and, more importantly, how wide the confidence bands are at different horizons. That width is the model's honest measure of how predictable the series actually is.

Some series have structure worth modeling. Some are close enough to random that the confidence bands eat the forecast almost immediately. Both answers are useful.