7.2 Stationary Time Series
Key Takeaways
- Covariance stationarity requires constant mean, constant variance, and autocovariance depending only on lag—not on calendar time
- ACF and PACF patterns help identify white noise, AR, MA, and ARMA structures; the lag operator rewrites these models compactly
- Causal AR(1) with |φ| < 1 is mean-reverting; φ = 1 is a unit root (nonstationary); |φ| > 1 is explosive
- Box–Pierce and Ljung–Box test whether residual autocorrelations are jointly zero; Ljung–Box up-weights finite-sample lag terms
- ARMA forecasts converge to the unconditional mean for stationary models; seasonal ARMA uses seasonal lags (e.g., 4 or 12) alongside short lags
Stationary Time Series
Market risk, P&L, and many risk-factor series are ordered in time. Stationary time-series models give a disciplined way to describe serial dependence, diagnose residuals, and produce short-horizon forecasts when means and second moments are stable enough to estimate.
Covariance Stationarity
A process {yₜ} is covariance stationary (weakly stationary) if:
- E[yₜ] = μ is finite and constant in t,
- Var(yₜ) = σ² is finite and constant in t,
- Cov(yₜ, yₜ₋ₖ) = γₖ depends on the lag k only, not on t.
Strict stationarity (full distribution invariant to time shifts) is stronger; FRM workhorses are covariance-stationarity and linear ARMA models. Trends, unit roots, and exploding variances violate these conditions—treated in the next section.
| Condition | Stationary example | Violation example |
|---|---|---|
| Constant mean | Mean-reverting spread | Linear time trend |
| Constant variance | Homoskedastic AR(1) | Variance rising with level |
| γₖ depends on lag only | Stable ACF shape | Structural break in persistence |
White Noise
White noise εₜ satisfies E[εₜ] = 0, Var(εₜ) = σ², and Cov(εₜ, εₜ₋ₖ) = 0 for all k ≠ 0. It is the building-block shock in ARMA. Independent white noise is stronger than uncorrelated white noise; Gaussian white noise is i.i.d. normal. Many tests only need uncorrelated shocks.
ACF and PACF
The autocovariance γₖ = Cov(yₜ, yₜ₋ₖ) and autocorrelation ρₖ = γₖ / γ₀ form the ACF.
The partial autocorrelation PACF(k) is the correlation between yₜ and yₜ₋ₖ after linear projection on the intervening lags yₜ₋₁, …, yₜ₋ₖ₊₁. It isolates “direct” lag-k dependence.
Identification rules of thumb:
| Process | ACF shape | PACF shape |
|---|---|---|
| White noise | ≈ 0 for k ≥ 1 | ≈ 0 for k ≥ 1 |
| AR(p) | Dies out (exponential / damped sinusoid) | Cuts off after lag p |
| MA(q) | Cuts off after lag q | Dies out |
| ARMA(p,q) | Dies out | Dies out |
Worked ACF calculation for AR(1)
For causal AR(1): yₜ = φ yₜ₋₁ + εₜ with |φ| < 1 and Var(εₜ) = σ²,
Var(yₜ) = σ² / (1 − φ²), ρₖ = φᵏ (for k ≥ 0).
If φ = 0.6, then ρ₁ = 0.6, ρ₂ = 0.36, ρ₃ = 0.216. PACF is φ at lag 1 and ≈ 0 thereafter—classic AR(1) signature.
AR, MA, and ARMA Properties
AR(p): yₜ = c + φ₁ yₜ₋₁ + … + φₚ yₜ₋ₚ + εₜ. Stationarity needs the roots of the AR characteristic polynomial outside the unit circle (for AR(1), |φ₁| < 1).
MA(q): yₜ = μ + εₜ + θ₁ εₜ₋₁ + … + θ_q εₜ₋q. Always covariance stationary if εₜ has finite variance; invertibility needs MA roots outside the unit circle.
ARMA(p,q): combines both. Compactly, with lag operator L (L yₜ = yₜ₋₁):
φ(L) yₜ = c + θ(L) εₜ,
where φ(L) = 1 − φ₁ L − … − φₚ Lᵖ and θ(L) = 1 + θ₁ L + … + θ_q L^q.
Worked MA(1) moments
yₜ = εₜ + θ εₜ₋₁, Var(ε) = σ².
γ₀ = σ²(1 + θ²), γ₁ = θ σ², γₖ = 0 for |k| > 1.
So ρ₁ = θ / (1 + θ²). If θ = 0.5, ρ₁ = 0.5 / 1.25 = 0.4, and ρ₂ = 0.
Worked ARMA(1,1) forecast idea
yₜ − φ yₜ₋₁ = εₜ + θ εₜ₋₁. One-step forecast uses the estimated recursion and the last residual; multi-step forecasts of a stationary ARMA fade toward the unconditional mean μ = c / (1 − φ) when |φ| < 1.
Lag Operators and Mean Reversion
The lag operator L shifts time: Lᵏ yₜ = yₜ₋ₖ. Differencing is (1 − L)yₜ = yₜ − yₜ₋₁. Writing models in L-form clarifies stationarity (roots of φ) and seasonal factors (1 − L¹²).
Mean reversion for stationary AR(1): the conditional expectation E[yₜ₊ₕ | yₜ] = μ + φʰ (yₜ − μ) moves toward μ as h grows when |φ| < 1. Half-life ≈ ln(0.5) / ln(|φ|). If φ = 0.9, half-life ≈ 6.6 periods—slow reversion. If φ = 0.5, half-life = 1 period.
| φ | Behavior |
|---|---|
| φ | |
| φ = 1 | Random walk (unit root)—not stationary |
| φ |
Box–Pierce and Ljung–Box Tests
After fitting a model (or on raw returns claiming “no serial correlation”), test whether autocorrelations ρ̂₁, …, ρ̂ₘ are jointly zero.
Box–Pierce: Q = n Σ_{k=1}^{m} ρ̂ₖ², compared to χ² with m (or m − p − q for residual checks) degrees of freedom.
Ljung–Box: Q_LB = n(n+2) Σ_{k=1}^{m} ρ̂ₖ² / (n − k), which up-weights higher lags in finite samples and is preferred in practice.
Rejecting Q means leftover linear serial correlation—model inadequacy for mean dynamics (or true dependence in returns).
Worked portmanteau sketch
n = 100, m = 2, ρ̂₁ = 0.2, ρ̂₂ = 0.1.
Box–Pierce Q = 100(0.04 + 0.01) = 5. χ²₂ 5% critical value ≈ 5.99 → fail to reject at 5%. Ljung–Box uses 100×102×(0.04/99 + 0.01/98) ≈ 5.2—same qualitative conclusion here.
Forecasting Stationary ARMA
Optimal linear forecasts minimize MSE given the information set. For stationary processes:
- Short horizons use recent y and recent ε̂,
- As h → ∞, ŷₜ₊ₕ → unconditional mean,
- Forecast-error variance rises with h toward the unconditional variance.
Point forecasts plus interval forecasts (using innovation variance and ARMA weights) are standard risk reporting for mean dynamics—not substitutes for volatility models when variance clusters.
Seasonality in ARMA
Economic series often show seasonal patterns (quarterly capital charges, monthly flows). Seasonal ARMA includes seasonal lags: e.g., AR(1) × seasonal AR(1) at lag 4 for quarterly data, or terms like yₜ₋₁₂ for monthly seasonality. Seasonal MA terms create ACF spikes at seasonal lags that then cut off; seasonal AR creates PACF spikes at seasonal lags.
Airline-style thinking: short-run ARMA for adjacent months plus seasonal ARMA for year-ago months. Always plot ACF at lags 1…S…2S before forcing a huge nonseasonal AR order.
Putting It Together
Confirm covariance stationarity (or transform until you can), read ACF/PACF, estimate a parsimonious ARMA, run Ljung–Box on residuals, and forecast with mean reversion in mind. Seasonal structure belongs in the lag set, not only in dummy variables—though dummies appear again for deterministic seasonality in nonstationary settings next.
Covariance stationarity requires that autocovariances:
For a causal AR(1) with φ = 0.5, the lag-2 autocorrelation ρ₂ equals:
An MA(1) process always has:
Relative to Box–Pierce, the Ljung–Box statistic primarily: