CFA Level II Exam · Time-Series Analysis
Unit Roots and Random Walks for CFA Level II
Updated 7 October 2026 · Fact-checked
A random walk is a series where today's value equals yesterday's plus random error (x_t = x_{t-1} + ε_t). It has a unit root (b1 = 1), so it is not covariance stationary. Test with Dickey-Fuller, then fix it by first differencing, which gives a stationary series.
Understand Unit Roots and Random Walks
A time series is covariance stationary if its mean, variance and covariances with its own lags do not change over time. Regression on a non-stationary series gives unreliable results, so you must check this before you forecast.
A random walk says the best forecast of the next value is the current value, plus a random error. The error has mean zero, constant variance and no serial correlation. Writing it as an AR(1) model, x_t = b0 + b1 x_{t-1} + ε_t, a random walk has b0 = 0 and b1 = 1. A random walk with drift has b0 ≠ 0, so the series also moves by a constant b0 each period on average.
Why is it non-stationary? An AR(1) model has a finite mean-reverting level, b0 ÷ (1 − b1), only when |b1| < 1. When b1 = 1, the denominator is zero. The mean-reverting level is undefined, and the variance grows with time. That is the unit root problem. The series has no stable mean to return to.
You cannot test b1 = 1 with an ordinary t-test. Under a unit root the estimator is biased and the t-statistic does not follow the usual distribution. The Dickey-Fuller test fixes this. Subtract x_{t-1} from both sides to get x_t − x_{t-1} = b0 + g1 x_{t-1} + ε_t, where g1 = b1 − 1. The null hypothesis is g1 = 0 (unit root). The alternative is g1 < 0 (stationary). The t-statistic is compared with special Dickey-Fuller critical values, not normal t-values. If you cannot reject the null, you have a unit root.
The usual cure is first differencing: define y_t = x_t − x_{t-1}. For a random walk, y_t = ε_t (or b0 + ε_t with drift), which is covariance stationary. You then model y_t, for example with an AR(1). Differencing once is called a first-differenced series. The new series has a finite mean-reverting level, usually zero or b0.
Key formulas to remember
- Random walk without drift
- x_t = x_{t-1} + ε_t
- E(ε_t) = 0, constant variance, no serial correlation. Best forecast of x_{t+1} is x_t. Has a unit root.
- Random walk with drift
- x_t = b0 + x_{t-1} + ε_t, b0 ≠ 0
- Series trends by b0 per period on average. Still has a unit root, so still non-stationary.
- Mean-reverting level (AR(1))
- x = b0 ÷ (1 − b1)
- Exists only if |b1| < 1. For b1 = 1 it is undefined.
- Dickey-Fuller regression
- x_t − x_{t-1} = b0 + g1 x_{t-1} + ε_t, g1 = b1 − 1
- H0: g1 = 0 (unit root). Ha: g1 < 0 (no unit root). Use Dickey-Fuller critical values.
- First difference
- y_t = x_t − x_{t-1} = ε_t
- For a random walk, y_t is covariance stationary with mean 0 (mean b0 with drift).
How to solve Unit Roots and Random Walks questions
Use this sequence for any vignette on random walks, unit roots or differencing.
- 1Find the estimated model in the exhibit and identify b0 and b1 (or g1 if the Dickey-Fuller form is given).
- 2Check b1. If b1 = 1 (or g1 = 0), the series is a random walk, with drift if b0 ≠ 0. If |b1| < 1, it can be covariance stationary.
- 3If asked about stationarity, compute b0 ÷ (1 − b1) only when |b1| < 1. Otherwise say the mean-reverting level is undefined.
- 4For a Dickey-Fuller test, state H0: g1 = 0 and Ha: g1 < 0. Compare the test statistic with the Dickey-Fuller critical value, not the normal t-value.
- 5Decide: if the statistic is more negative than the critical value, reject H0 and treat the series as stationary. Otherwise a unit root is present.
- 6If a unit root remains, apply first differencing, then model the differenced series (often AR(1)) and check it for serial correlation.
- 7For forecasts, remember a random walk forecast is the last value (plus b0 per period with drift).
Quickest way: Three-check shortcut
When to use it: Use when the vignette gives a coefficient or a test result and asks a conceptual question.
- Is b1 equal to 1? If yes, unit root, non-stationary, no mean reversion.
- Is the Dickey-Fuller statistic less negative than the critical value? If yes, fail to reject, so unit root.
- Is the answer first differencing? Use it for a unit root, then expect a stationary series.
Common mistakes in Unit Roots and Random Walks
Using the ordinary t-test to test b1 = 1.
It looks like a normal coefficient test.
Fix: Under a unit root the t-distribution does not apply. Use the Dickey-Fuller test and its critical values.
Thinking a random walk with drift is stationary because it has a stable trend.
Students confuse a predictable drift with a constant mean.
Fix: Drift changes the mean over time. With b1 = 1 the series still has a unit root and is non-stationary.
Computing b0 ÷ (1 − b1) for a random walk.
The formula is memorised without its condition.
Fix: It needs |b1| < 1. When b1 = 1 you would divide by zero, so the level is undefined.
Reading a rejected null as 'unit root present'.
Mixing up what H0 states.
Fix: H0 is a unit root. Rejecting it means the series is stationary. Failing to reject means a unit root.
Believing the error term of a random walk is serially correlated.
Confusing the series with its errors.
Fix: The series values are correlated across time, but the random walk's error term has no serial correlation. That is why differencing leaves a clean series.
Worked examples
Example 1
An analyst estimates an AR(1) model for a commodity price index: x_t = 0.6 + 1.00 x_{t-1} + ε_t. (1) What type of process is this? (2) Is the series covariance stationary? (3) If the latest value is 50, what is the forecast for the next period?
Show the solution
- Since b1 = 1 and b0 = 0.6 ≠ 0, this is a random walk with drift.
- With b1 = 1 there is a unit root, so the mean-reverting level 0.6 ÷ (1 − 1) is undefined. The series is not covariance stationary.
- Forecast = b0 + x_t = 0.6 + 50 = 50.6.
Answer: (1) Random walk with drift. (2) Not covariance stationary. (3) 50.6.
Example 2
A Dickey-Fuller regression on a series gives g1 estimate with a test statistic of −1.40. The 5% Dickey-Fuller critical value is −2.86. (1) What is the null hypothesis? (2) What is the conclusion? (3) What should the analyst do next?
Show the solution
- H0: g1 = 0, meaning the series has a unit root (b1 = 1).
- Reject only if the statistic is more negative than −2.86. Here −1.40 is greater than −2.86, so we fail to reject.
- A unit root cannot be ruled out, so the series is treated as non-stationary. Apply first differencing, y_t = x_t − x_{t-1}, and model the differenced series.
Answer: (1) The series has a unit root. (2) Fail to reject, so a unit root is likely. (3) First difference the series and model the result.
Exam tips
- Know that b1 = 1 means random walk and unit root. This is the most-tested link.
- Remember the Dickey-Fuller null is a unit root. Wrong direction is a common lost mark.
- Do not use the b0 ÷ (1 − b1) level when b1 = 1. Vignettes often tempt you to.
- If a question asks how to correct a unit root, the answer is first differencing, not adding more lags.
- Check whether the vignette gives a Dickey-Fuller critical value. If so, compare the statistic with it, not with a normal t-table.
Unit Roots and Random Walks in other exams
The same ground in other exams, if you are preparing for more than one or want another angle on it.
Unit Roots and Random Walks: frequently asked questions
What is the difference between a random walk and a covariance stationary series?
A random walk has b1 = 1, so its mean-reverting level is undefined and its variance grows over time. A covariance stationary series has a constant mean, variance and autocovariances. A random walk is never covariance stationary.
Is a random walk with drift stationary?
No. The drift b0 pushes the series up or down by a constant amount per period, so the mean changes over time. It still has a unit root.
How does first differencing remove a unit root?
You model the change x_t − x_{t-1} instead of the level. For a random walk, that change equals the error term (plus b0 with drift). That series is covariance stationary.
What does failing to reject the Dickey-Fuller null mean?
It means you cannot rule out a unit root. You should treat the series as non-stationary and difference it before using an AR model.