## The Wiener process

The transition density of the diffusion process is :

$$P(x|x') = \exp\left[-\frac12\frac{(x-x')^2}{D(t-t')}\right]$$

Recall that this process was first constructed by Bachelier in the context of market price fluctuations and then rederived by Einstein (1905) as a model for Brownian motion. In the stochastic process literature this process is known as the Wiener process.

The defining features of this process are that it is

• Markov
• Gaussian
• has independent increments

These properties make it very simple to generate sample paths. Increments can be chosen independently from a Gaussian distribution and then added together, cumulatively, to generate the path.

The code below generates sample paths of the diffusion process, sampled with time increments $\Delta t = 1$ and diffusion coefficient $D = 1$. The increments, then, are standard normal variates.



In [3]:

import numpy as np
import scipy as sp
import scipy.signal as sig
import matplotlib.pyplot as plt




In [28]:

N = 128    # number of paths
Nt = 1024  # T = Nt * dt is the duration of each path

for i in range(N):
dx = np.random.randn(Nt)   # independent increments
x = np.cumsum(dx)          # cumulative sum
t = np.arange(Nt)          # times
plt.plot(t, x)