Statistics track

Statistics · Phase 7

Time Series

Stationarity, ARIMA, GARCH and out-of-sample forecasting.

In plain English

Data that arrives over time carries memory: today looks like yesterday. Time-series methods use that memory instead of pretending it is not there.

The advanced view

Stationarity is the precondition for standard inference; trends and unit roots are handled by differencing or cointegration. ARIMA models the conditional mean, GARCH the conditional variance (volatility clustering), and decomposition separates trend, seasonality and residual for planning purposes.

Time series data violate the independence assumption, so ordinary tools mislead. Stationarity — constant mean, variance and autocovariance — is the precondition for most models; test with augmented Dickey–Fuller and difference the series if it fails. ACF and PACF plots identify the order of AR and MA terms, which combine into ARIMA(p,d,q).

AR(1): y_t = c + φy_(t−1) + ε_t
ARIMA(p,d,q): differenced d times, p AR and q MA terms
GARCH(1,1): σ²_t = ω + αε²_(t−1) + βσ²_(t−1)
RMSE = √(Σ(ŷ − y)² / n)

Financial returns show volatility clustering: calm periods follow calm periods and turbulent ones cluster too. ARCH and GARCH model conditional variance directly, which is why they underpin risk and option-pricing work. Cointegration handles the case where individually non-stationary series share a long-run relationship — the statistical basis of pairs trading. Always evaluate forecasts out of sample and respect temporal order.

Essential vocabulary

Stationarity
Statistical properties constant over time. Required by most time-series models.
Autocorrelation
Correlation of a series with its own lags. The signal ARIMA exploits.
Volatility clustering
Large moves follow large moves. The empirical fact GARCH was built for.
Forecast accuracy
MAE, RMSE or MAPE — always measured out of sample.

Deeper

Stationarity, unit roots and random walks

A series is weakly stationary when its mean, variance and autocovariances do not depend on time. Almost every estimator you know assumes this: with a unit root, standard errors are wrong, t-statistics diverge and two unrelated trending series will look strongly correlated. That is spurious regression, and it is the single most common error in applied finance work.

The random walk y_t = y_(t−1) + ε_t is the benchmark. Its best forecast of tomorrow is today, its variance grows linearly with the horizon, and shocks never die out. Add a drift term and you get the standard model of a log price index; take first differences and you get returns, which are close to stationary. This is why finance models returns rather than prices.

Testing is a hypothesis exercise, so state it properly. The augmented Dickey–Fuller test has H0: a unit root is present (non-stationary) against H1: stationary; you reject when the test statistic is more negative than the critical value, and the critical values are not the normal ones. KPSS reverses the null: H0 is stationarity. Running both is the honest approach — if ADF fails to reject and KPSS rejects, you have solid evidence of a unit root; if they disagree, say so and treat the result as inconclusive.

Transformations, in order: take logs to stabilise variance and turn multiplicative growth into linear growth; difference to remove a unit root; seasonally difference at the seasonal lag if a seasonal pattern remains. Over-differencing is a real cost — it injects negative autocorrelation and inflates forecast variance — so difference once, retest, and stop.

Worked example — reading an ADF test

Step 1 of 8

  1. 1Series: quarterly revenue index, 60 observations, clear upward drift.

Common pitfalls

  • ×Regressing one trending level on another and celebrating an R² of 0.95.
  • ×Reading the ADF statistic against normal critical values.
  • ×Differencing twice because the ACF still looks untidy.
  • ×Forgetting that a structural break makes a stationary series look like a unit root.

Why it works

Differencing works because a random walk's changes are stationary even when its level is not. Regressing two independent random walks on each other produces spurious significance — high R², high t-stats, no relationship — because the standard errors assume independence that the trend violates. Differencing removes the shared trend and restores honest inference.

Common pitfalls

  • ×Regressing levels of two trending series and believing the t-statistic.
  • ×Fitting seasonality to fewer than two full cycles.
  • ×Extending a forecast horizon far beyond what the model's memory supports.

How it is used — deseasonalise before you conclude

Step 1 of 4

  1. 1Q4 revenue 130 versus Q3 100 — 30% growth?

Deeper

Deeper: stationarity, and why levels regressions lie

Most financial and business series are non-stationary — their mean and variance drift. Regressing one trending series on another produces spurious significance: two random walks will look strongly related about three-quarters of the time. Difference the series (or test for cointegration) before believing any relationship.

Decompose before you forecast: trend, seasonality, cycle, noise. Then choose the simplest model that fits — exponential smoothing or a seasonal naive benchmark is often the right baseline, and any ARIMA or ML forecast must beat it out of sample to earn its place.

Must know cold

  • Stationary = constant mean, variance and autocovariance; test with ADF.
  • Always compare a forecast against a naive benchmark.
  • Autocorrelation in residuals means the model is missing structure.
  • YoY comparisons remove seasonality but hide turning points by 12 months.

Exercises

Try each one on paper before revealing the worked solution.

Exercise 1

Monthly sales rise every December by about 40%. How do you build a simple, defensible forecast?

Exercise 2

Two trending series regress with R² = 0.92 and t = 14. Why is that not evidence?

Figure — stationary versus unit root
stationary: reverts to its meanrandom walk: shocks never dietimelevel

The mean-reverting series keeps returning to its average, so its mean and variance are stable and forecasts converge to that average. The random walk wanders: every shock is permanent, the variance grows with the horizon, and the best forecast of tomorrow is simply today. Prices behave like the lower line, returns like the upper one.

Figure — what differencing does
first difference (stationary)level (unit root)timelevel / Δ

Taking Δy strips out the trend and leaves a series scattered around zero — stationary and modellable. This is why finance models log returns rather than log prices, and why d = 1 is the usual answer in ARIMA(p, d, q). Difference once, retest, and stop: over-differencing injects negative autocorrelation.

Figure — reading an ACF
±1.96/√T significance bandlagautocorrelation

Bars are autocorrelations by lag; the dashed band is ±1.96/√T. Slow geometric decay like this points to an AR term, whereas a sharp cut-off after lag q points to MA(q). A spike at lag 4 or 12 alone means seasonality. If the ACF of the residuals looks like this, the model is not finished.

Figure — decomposition: trend plus season
trend + repeating seasonal shape = decompositiontimelevel

The wiggly line is the observed series, the straight one the trend. Splitting a series into trend, season and remainder is the first thing to do with any quarterly client data — otherwise a strong Q4 gets mistaken for growth and the January drop for a crisis.

Figure — volatility clustering
calm and turbulent periods arrive in runstimereturn

Returns are close to unpredictable in level but not in magnitude: big moves arrive in runs. That is the empirical fact ARCH and GARCH were built for, and it is why a single unconditional standard deviation understates risk in turbulent regimes and overstates it in calm ones.

References

  • Enders, W. (2015). Applied Econometric Time Series. 4th Edition, Wiley, Hoboken.
  • Wooldridge, J. M. (2020). Introductory Econometrics: A Modern Approach. 7th Edition, Cengage, Boston.

Statistics glossary for this phase

The terms an interviewer expects you to use precisely — with the pitfall attached to each.

Trend vs. seasonality

Trend is the long-run drift; seasonality is the repeating within-year pattern.

In finance

Quarterly revenue reads badly until you compare like quarters or deseasonalise.

Pitfall

×Annualising a strong Q4 and calling it run-rate growth.

Stationarity

Statistical properties stay stable over time.

In finance

Prices are non-stationary; returns usually are — that is why models use returns.

Pitfall

×Regressing two trending series and finding a spurious relationship.

Autocorrelation

Correlation of a series with its own past values.

In finance

Smoothed or illiquid asset returns look less risky than they are.

Pitfall

×Standard errors computed as if observations were independent, so significance is overstated.

Unit root

A series whose shocks never die out, so its variance grows with the horizon.

In finance

Prices usually have one; returns usually do not. Model returns.

Pitfall

×Regressing trending levels on each other and reporting a spurious R².

Cointegration

Individually non-stationary series whose linear combination is stationary.

In finance

The statistical basis of pairs trading and of long-run FX parity tests.

Pitfall

×Fitting a VAR in levels when an error correction model is the correct form.

Practise this

The drills and cases where this phase turns into arithmetic you do out loud.