Como faço para desenhar um movimento browniano dentro de um ambiente de eixo?

Como faço para desenhar um movimento browniano dentro de um ambiente de eixo?

Quero desenhar um movimento browniano padrão do tempo 0 a 1. Com baseesta resposta, tentei o seguinte:

\documentclass{article}

\usepackage{pgfplots, tikz}
\pgfplotsset{compat = newest}

\newcommand{\Emmett}[5] % color, x0, dt, n 
{
    \draw[#1] (0, #2)
    \foreach\x in {1, ..., #4} {
        -- ++(#3, rand * #3)
    }
    node[right] {#5};
}

\begin{document}

\begin{tikzpicture}[>=latex]
    \begin{axis}[
        axis x line = center,
        axis y line = center,
        xtick = {0, ..., 1},
        ytick = {-1, ..., 1},
        xlabel = {$t$},
        ylabel = {$x$},
        xlabel style = {right},
        ylabel style = {above},
        xmin = 0,
        xmax = 1.1,
        ymin = -1,
        ymax = 1]

        \Emmett{black}{0}{.01}{100}{};
    \end{axis}
\end{tikzpicture}

\end{document}

A saída é

insira a descrição da imagem aqui

e, portanto, há obviamente algo errado. Preciso admitir que não entendo totalmente a \Emmettmacro e provavelmente algo está errado com ela. O que o código realmente deve fazer é o seguinte:

t = 0;
x = x0;

for (i = 0; i < n; ++i)
{
    plot (t, x);

    let xi be a sample from the standard normal distribution;
    x += sqrt(dt) * xi;
}

Então, como preciso ajustar a macro? Uma trajetória do movimento browniano padrão deveria realmente parecer

insira a descrição da imagem aqui

informação relacionada