Quant Memo
Core

Stationarity

The property that makes a time series learnable, strict versus weak (covariance) stationarity, why every estimator implicitly assumes it, and how transforming prices into returns is really a hunt for a stationary series.

Prerequisites: Expectation, Variance & Moments, Autocorrelation and Serial Correlation

Stationarity is the assumption that makes time-series statistics possible at all. To learn about a process from one realization, the single history the market handed you, you need the process to be, in a precise sense, the same through time: the past has to be informative about the future. A non-stationary series is a moving target, and every mean, variance, correlation, or regression coefficient you estimate on it is estimating something that no longer exists. Almost every model in this track, ARMA, GARCH, cointegration, begins by assuming or engineering stationarity.

Strict stationarity

A process {Xt}\{X_t\} is strictly stationary if its entire joint distribution is invariant to time shifts: for any set of times t1,,tmt_1, \dots, t_m and any lag hh,

(Xt1,,Xtm) =d (Xt1+h,,Xtm+h).(X_{t_1}, \dots, X_{t_m}) \ \stackrel{d}{=}\ (X_{t_1 + h}, \dots, X_{t_m + h}).

The probabilistic law of the series never changes, the distribution of any window looks the same whenever you observe it. This is a strong, essentially unverifiable condition in full, so in practice we work with a weaker one that only constrains the first two moments.

Weak (covariance) stationarity

A process is weakly (or covariance, or second-order) stationary if:

  1. Constant mean: E[Xt]=μ\mathbb{E}[X_t] = \mu for all tt.
  2. Constant, finite variance: Var(Xt)=γ0<\operatorname{Var}(X_t) = \gamma_0 < \infty for all tt.
  3. Autocovariance depends only on the lag, not on absolute time: Cov(Xt,Xt+k)=γk\operatorname{Cov}(X_t, X_{t+k}) = \gamma_k for all tt.

This is the working definition throughout econometrics. Condition 3 is what lets you pool observations to estimate the autocorrelation function ρk=γk/γ0\rho_k = \gamma_k/\gamma_0, every pair of points kk apart is a draw from the same joint distribution, so the sample ACF estimates a well-defined population object. Weak stationarity says nothing about higher moments; a series can be covariance stationary while its skewness or tail behavior shifts.

The two notions are not nested in general, but they coincide in the case that dominates classical theory: a Gaussian process is strictly stationary if and only if it is weakly stationary, because a Gaussian law is fully determined by its mean and covariance.

Why it matters: ergodicity and the single sample

We observe one path, yet we compute time averages 1ntXt\frac1n\sum_t X_t and treat them as estimates of ensemble expectations E[Xt]\mathbb{E}[X_t]. The bridge is ergodicity, that time averages converge to ensemble averages, and ergodicity presupposes stationarity. Break stationarity and the The Law of Large Numbers for time series collapses: the sample mean of a trending series converges to nothing, the sample variance of a random walk diverges with the sample length, and the sample ACF of a unit-root process is spuriously near one at all lags. In short: without stationarity, estimation has no target.

Achieving stationarity: the transformations

Financial prices are conspicuously non-stationary, they trend, and their variance grows with horizon (a random walk). The practitioner's job is to transform to a stationary series before modeling:

  • Differencing: ΔXt=XtXt1\Delta X_t = X_t - X_{t-1}. Log price differences are log returns, rt=logPtlogPt1r_t = \log P_t - \log P_{t-1}, which are far closer to stationary than prices. A series needing dd differences to become stationary is integrated of order dd, written I(d)I(d); prices are typically I(1)I(1), returns I(0)I(0). See Unit Roots and the ADF Test.
  • Log or Box–Cox transforms stabilize variance that grows with level.
  • Deflating / de-trending removes deterministic drift; seasonal differencing removes periodic structure.
  • Modeling the variance, even log returns are not fully stationary because their volatility clusters; conditional-heteroskedasticity models capture the time-varying variance. See GARCH Volatility Models.

The distinction between a trend-stationary series (stationary around a deterministic trend, so detrend by regression) and a difference-stationary series (a stochastic trend / unit root, so difference) is the crux of unit-root testing, and choosing the wrong remedy leaves non-stationarity behind or destroys real structure.

Worked example: prices versus returns

Take daily S&P 500 levels. The mean over 1990–2000 differs enormously from 2010–2020, the variance grows without bound as you extend the window, and the sample autocorrelation of the level is ~0.99 at every lag, all three weak-stationarity conditions fail. Now take daily log returns: the mean is a small roughly-constant number, the variance is finite and (regime aside) roughly stable, and the autocorrelation is near zero beyond lag zero. Returns pass the eyeball test for weak stationarity where prices fail spectacularly. This is why quant models are built on returns, spreads, and other differenced/ratio quantities rather than raw prices, the transformation is a search for a stationary object to model.

Failure modes in financial data

  • Regime shifts. Volatility, correlations, and factor premia jump at crises and policy changes; a series stationary within a regime is non-stationary across them, so long samples spanning regimes violate the constant-moment assumptions. See Regime Detection.
  • Structural breaks (a company changes business, a market microstructure reform) shift the mean or variance permanently, pooling across the break is estimating an average of two different worlds.
  • Volatility clustering technically violates strict stationarity of returns; GARCH restores a conditionally modelable structure while the unconditional process can still be (weakly) stationary.
  • Over-differencing. Differencing an already-stationary series induces a non-invertible MA unit root and inflates variance, the opposite error, and a real one. Difference only as much as the unit-root evidence demands.

In interviews

Distinguish strict stationarity (full joint distribution shift-invariant) from weak/covariance stationarity (constant mean, constant variance, autocovariance depending only on lag) cleanly, and note they coincide for Gaussian processes. Explain why it matters, with one realization you need stationarity plus ergodicity for time averages to estimate population quantities, so without it estimation has no fixed target. Be ready for "are stock prices stationary?", no, they are I(1)I(1) (random-walk-like), which is why we model returns; and know the trend-stationary versus difference-stationary distinction and its remedies (detrend vs difference). Mentioning that returns are stationary in mean but not in variance (hence GARCH) shows depth.

Related concepts

Practice in interviews

Further reading

  • Hamilton, Time Series Analysis (Ch. 3)
  • Tsay, Analysis of Financial Time Series (Ch. 2)
  • Box, Jenkins & Reinsel, Time Series Analysis
ShareTwitterLinkedIn