Skip to content
Finance Lessons

Stochastic Processes

What a Stochastic Process Is

A stochastic process as a whole family of random variables unfolding in time: sample paths versus the cross-sectional distribution, filtrations and the flow of information, and increments, stationarity, and why quants model returns instead of prices.

9 min Updated Jun 7, 2026

You already know what a random variable is: a single uncertain number — one coin flip, one dice roll, one day’s return drawn from some distribution. Useful, but frozen. A coin flip doesn’t evolve; it just resolves, once. Yet almost everything finance cares about is precisely a thing that evolves: a price ticks all day, a portfolio grows over decades, an interest rate drifts for years. To model change under uncertainty, one random variable isn’t enough. You need a whole convoy of them, one for every moment in time, all tangled together so that today’s value constrains tomorrow’s. That convoy is a stochastic process, and it is the mathematical object underneath every simulated price path, every random walk, every Brownian motion you’ll meet on this platform. This lesson is the gentle on-ramp: what the object is, and the four ideas you need to think clearly about it.

Before you read — take a guess

What is a stochastic process, in one sentence?

A process is a whole family of random variables, one per moment

Analogy. A random variable is a photo: one snapshot, blurry with uncertainty, but a single frame. A stochastic process is the whole film reel — a snapshot for every instant, and crucially the frames are correlated: frame 100 looks a lot like frame 99 because the story carried over. A process isn’t a pile of unrelated photos; it’s a continuous, self-referential narrative where each moment inherits the last.

Definition. A stochastic process is a collection of random variables {Xt}\{X_t\} indexed by a parameter tt drawn from an index set (almost always time). For every value of tt, XtX_t is itself a random variable. Two pieces define the object:

  • The index set — the set of allowed times tt. It can be discrete (you observe at t=0,1,2,t = 0, 1, 2, \dots, like daily closing prices) or continuous (the value is defined at every instant t0t \ge 0, like a price ticking in real time).
  • The state space — the set of values each XtX_t is allowed to take. It too can be discrete (a count, like the number of trades) or continuous (any real number, like a price or a rate).

Cross those two choices and you get four flavours, all of which show up in markets:

Discrete timeContinuous time
Discrete stateCoin-flip wealth: +$1 or −$1 each round, tracked round by roundNumber of trades that have arrived by time tt (a counting process)
Continuous stateDaily closing price: one real number per trading dayTick-by-tick price or a short interest rate, defined at every instant

The thing that makes a process more than “a list of random variables” is the dependence structure: the correlations linking XsX_s and XtX_t. Knowing today’s price tells you a great deal about tomorrow’s (it’ll be near today’s), and almost nothing about a price ten years out. Capturing that web of cross-time dependence is the entire job of the model.

Info:

Why not just one random variable per question?

You could model “the price in exactly one year” as a single random variable and stop there. But then you’ve thrown away the path — the route taken, whether it ever crashed through a barrier, what the average was along the way. A staggering amount of finance (path-dependent options, drawdowns, ruin probabilities) depends on the journey, not just the destination. Modelling the whole family {Xt}\{X_t\} keeps the journey.

Pin down the definition.

Pick the right option for each blank, then check.

A stochastic process is a family of indexed by . The set of allowed times is the , and the set of allowed values is the . A daily closing price is .

Sample paths vs the cross-section

Here is the mental model — get this and the rest of stochastic processes clicks into place. There are two completely different ways to slice a process, and confusing them is the single most common beginner mistake.

Slice 1 — fix the world, let time run: a sample path. Run the process once. The randomness resolves, and you get one possible history: a single value at each time, strung together into a connected line. That line is a sample path (or realisation, or trajectory). It’s one frame-by-frame movie of one possible future — the actual squiggle a stock printed last year is exactly one sample path of its price process.

Slice 2 — fix the time, let the world vary: the cross-section. Now freeze the clock at one instant tt and look across all the parallel universes where the process could have run differently. The collection of values XtX_t takes across all those possible worlds is a distribution — the cross-section at time tt. It answers “where could the price be at time tt?”, not “where did this one run go?”.

A single sample path is a horizontal thread through time. The cross-section is a vertical cut through all possible worlds at one instant. The process is the whole cloth woven from both.

The island below makes this concrete. Each thread is one sample path of a random walk starting at 0. Watch many of them spread out from the origin — and notice the widening envelope: that’s the cross-sectional spread, the ±t\pm\sqrt{t} standard deviation of where the walk could be at each time. Drag the drift to tilt the whole cloud.

Sample paths spreading into a distribution
14 Sample paths±√t spread (cross-section)
-1.20.01.20200
Drift0.0

Each thread is one sample path — a single possible history. Freeze the clock at any time t and look across all the threads: that vertical spread is the cross-sectional distribution, growing like √t. One path is a horizontal story through time; the envelope is a vertical cut through all possible worlds. Drag the drift to tilt the cloud; resimulate to draw fresh futures.

Worked example — the ±1\pm1 random walk. Start at 0. Each step, flip a fair coin: +1+1 on heads, 1-1 on tails. After tt steps:

  • One sample path is a single zig-zag line — say 0,+1,0,+1,+2,+1,0, +1, 0, +1, +2, +1, \dots — one specific history of coin flips.
  • The cross-section at step tt is a distribution across all possible flip-sequences. Each step is mean-zero (the average of +1+1 and 1-1 is 00) with variance 11. Steps are independent, so variances add: after tt steps the total variance is tt, the mean is still 00, and the standard deviation — the typical distance from the start — is t\sqrt{t}.

Put numbers on it. After t=100t = 100 steps, the spread is 100=10\sqrt{100} = 10. So the typical endpoint sits about ±10\pm10 away from the start, even though the expected endpoint is exactly 00. One path might land at +8+8, another at 14-14; average them over millions of runs and you get 00, with a spread of 1010. That gap — mean 00 but spread 1010 — is the whole point of slicing two ways: the cross-section’s centre and its width are different facts, and a sample path is just one dot drawn from it.

A symmetric ±1 random walk starts at 0. After 400 steps, what are the mean and standard deviation of where it could be?

Information unfolds: the filtration

A process isn’t just what happens — it’s also what you know, when. As time passes, the dice resolve one by one, and your information grows. The bookkeeping device for “what’s known by time tt” is the filtration.

Analogy. Reading a novel. At the end of chapter tt you know chapters 11 through tt — every plot point so far is settled, unchangeable history. But the ending is still genuinely uncertain to you; the later chapters haven’t been read. With each chapter your known-history set grows and never shrinks. You can’t un-read chapter 3. That expanding pile of settled pages is exactly a filtration.

Definition. A filtration {Ft}\{\mathcal{F}_t\} is a growing family of information sets: Ft\mathcal{F}_t is “everything observable by time tt” — the entire history of the process up to and including tt. It’s increasing: if sts \le t then FsFt\mathcal{F}_s \subseteq \mathcal{F}_t (later you know everything you knew earlier, plus more). Information accumulates; it never leaks back out.

A process is adapted to a filtration when its value at time tt is known once you’ve seen the history up to tt — that is, XtX_t is determined by Ft\mathcal{F}_t. This is just the sane requirement that the process can’t depend on the future: a trading strategy that “knows” tomorrow’s price today is not adapted, and it’s cheating. Real, implementable processes are adapted by construction.

Why this matters — conditional expectation. The filtration is what lets you write the most important expression in all of asset pricing: the conditional expectation

E[Xt+1Ft],E[X_{t+1} \mid \mathcal{F}_t],

read “the expected value of tomorrow, given everything I know today.” This is not the unconditional average over all worlds — it’s the average over only the worlds consistent with the history I’ve already seen. A martingale (the next lesson) is precisely a process whose best forecast of tomorrow, given today’s information, is just today’s value: E[Xt+1Ft]=XtE[X_{t+1}\mid\mathcal{F}_t] = X_t. You can’t even state a martingale, or “no free lunch”, or a fair game, without a filtration to condition on. It’s the grammar of information in time.

Why does the information set only ever grow — can’t you “forget”?

A filtration models recorded, observable history — the public record of what the process did. Once a price prints, that print is a permanent fact: future-you still knows it happened. So the mathematical object is monotone (it only grows) by design, even though a human trader’s attention is finite and forgetful. The point isn’t psychology; it’s that any fair model of decision-making under uncertainty must forbid using information you couldn’t possibly have yet. Growing-only filtrations encode exactly that: at time tt you may use the past and present, never the future. A strategy that violates it isn’t clever — it’s clairvoyant, and clairvoyance is how backtests lie.

Increments, stationarity, and what stays the same

To say anything quantitative about a process, you need vocabulary for its changes and for what stays statistically constant as it evolves.

Increment. An increment is a change over an interval: Xt+sXtX_{t+s} - X_t, “how much the process moved between time tt and time t+st+s.” For a price, an increment is essentially a return-like move; for the ±1\pm1 walk, the increment over one step is just that step’s ±1\pm1.

Two structural properties of increments do enormous work:

  • Independent increments. Changes over non-overlapping time intervals are statistically independent. What the walk did from step 5 to 10 tells you nothing about what it does from step 10 to 15. Each fresh interval is a clean roll of the dice. (This is the defining feature of a random walk and of Brownian motion.)
  • Stationary increments. The distribution of a change depends only on the gap ss, not on when the interval starts. A 10-day move has the same distribution whether those 10 days fall in January or July — only the length of 10 days matters, not its location on the calendar.

(Weak) stationarity, intuitively. A process is (weakly) stationary when its statistical character doesn’t drift over time: its mean and its variance are constant, and the correlation between two times depends only on the gap between them, never on where they sit. Slide your viewing window along the time axis and the statistics look the same — same average, same spread, same rhythm. A stationary process has no preferred era; it looks statistically “the same” forever.

Worked contrast. Take the ±1\pm1 random walk again. Are its increments stationary? Yes — every single step is a fresh ±1\pm1 with the same distribution, regardless of when you take it. But is the level (the position XtX_t itself) stationary? No — its variance is tt, which grows without bound as time passes. The spread at step 100 is 100=10\sqrt{100}=10; at step 10,000 it’s 10,000=100\sqrt{10{,}000}=100. A process whose variance balloons over time is the opposite of stationary. So a random walk has stationary increments but a wildly non-stationary level. Those are different questions about the same process — keep them apart.

Pitfall — prices aren’t stationary, returns nearly are. Real asset prices are emphatically not stationary: they trend, they grow, they wander off to new all-time highs, and their variance fans out over time (exactly like the random-walk level above). Fit a “constant mean” to a price series and you’re modelling a fiction. But asset returns — the percentage changes, the increments — are far closer to stationary: a typical daily return looks statistically similar across years (similar average near zero, comparable volatility), even as the price level marches off. This is why quants model returns, not prices. Differencing a non-stationary level into its stationary-ish increments is the first move in half of quantitative finance.

Warning:

Stationary increments ≠ stationary process

Don’t conflate the two. A random walk has perfectly stationary increments (every step is the same fresh draw) yet a violently non-stationary level (variance grows like t, with no fixed mean or spread). “Is the change always the same kind of change?” and “does the level look the same across eras?” are separate questions — a process can answer yes to the first and no to the second.

Quick check

Let’s sort the ideas and stress-test the boundaries between them.

Sort each example by how it's indexed in time.

Place each item in the right group.

  • Brownian motion, defined for every real time t ≥ 0
  • A short interest rate modelled as ticking continuously
  • A price quote defined at every instant the market is open
  • A list of end-of-day closing prices, one per trading day
  • Monthly portfolio balances on a statement
  • Coin-flip wealth updated once per round

Which statement about a single sample path is true?

Increments and stationarity.

Pick the right option for each blank, then check.

An increment is the change over an interval. Non-overlapping increments being independent means each fresh interval is a . Real prices are , but their returns are — which is why quants model .

Putting it together

A stochastic process {Xt}\{X_t\} is not one random variable but a whole family of them, one per time — a film reel of correlated frames, defined by an index set (the times) and a state space (the values), in discrete or continuous flavours of each. Slice it horizontally and you get a sample path, one possible history; slice it vertically at a fixed time and you get the cross-sectional distribution across all possible worlds — for a ±1\pm1 walk, mean 00 but spread t\sqrt{t} (about 1010 after 100100 steps). The filtration {Ft}\{\mathcal{F}_t\} tracks the ever-growing pile of what’s known by time tt; a process is adapted when it never peeks at the future, and conditioning on Ft\mathcal{F}_t is what makes E[Xt+1Ft]E[X_{t+1}\mid\mathcal{F}_t] — the heart of martingales and pricing — even expressible. Finally, increments (Xt+sXtX_{t+s}-X_t) can be independent (non-overlapping changes don’t talk) and stationary (a change’s distribution depends only on the gap), and a process is stationary when its statistics don’t drift — which prices flagrantly violate but returns nearly satisfy, the reason quants model returns.

Big picture

What a stochastic process is — the whole object

  • Stochastic process
    • A family of random variables
      • One random variable X_t per time t
      • Index set = the times (discrete or continuous)
      • State space = the values (discrete or continuous)
      • Correlations across time are the whole point
    • Two ways to slice it
      • Sample path: one possible history (horizontal)
      • Cross-section: distribution at fixed t (vertical)
      • Walk after t steps: mean 0, spread √t
    • Filtration F_t
      • Everything known by time t, only ever grows
      • Adapted: value at t never peeks at the future
      • Enables E[X next given F_t] — pricing, martingales
    • Increments and stationarity
      • Increment = X(t+s) − X(t)
      • Independent: non-overlapping changes are independent
      • Stationary: distribution depends on the gap, not when
      • Prices not stationary; returns nearly are → model returns
A family of random variables in time; read it as paths or as cross-sections; track information with a filtration; describe its changes with increments and stationarity.

Recap: what a stochastic process is

Question 1 of 40 correct

What distinguishes a stochastic process from a single random variable?

Check your answer to continue.

Next up — Martingales and the fair game — we put the filtration to work. A martingale is a process whose best forecast of tomorrow, given everything known today, is simply today’s value: E[Xt+1Ft]=XtE[X_{t+1}\mid\mathcal{F}_t] = X_t. It’s the mathematical spine of “no free lunch”, efficient markets, and risk-neutral pricing — and you now have every piece of vocabulary you need to state it precisely.

Mark lesson as complete