Поиск…


Случайная прогулка

Ниже приведен пример, который отображает 5 одномерных случайных блужданий по 200 шагов:

y = cumsum(rand(200,5) - 0.5);

plot(y)
legend('1', '2', '3', '4', '5')
title('random walks')

В приведенном выше коде y представляет собой матрицу из 5 столбцов, каждая из которых имеет длину 200. Так как x опущен, по умолчанию они соответствуют номерам строк y (что эквивалентно использованию x=1:200 в качестве оси x). Таким образом, функция plot отображает несколько y-векторов в отношении одного и того же вектора x, каждый из которых автоматически использует другой цвет.

график случайных блужданий

Одномерное геометрическое броуновское движение

Динамика геометрического броуновского движения (GBM) описывается следующим стохастическим дифференциальным уравнением (SDE):

введите описание изображения здесь

Я могу использовать точное решение для SDE

введите описание изображения здесь

для генерации путей, следующих за GBM.


Учитывая суточные параметры для моделирования в течение года

mu     = 0.08/250;
sigma  = 0.25/sqrt(250);
dt     = 1/250;
npaths = 100;
nsteps = 250;
S0     = 23.2;

мы можем получить броуновское движение (BM) W начинающееся с 0, и использовать его для получения GBM, начиная с S0

% BM
epsilon = randn(nsteps, npaths);
W       = [zeros(1,npaths); sqrt(dt)*cumsum(epsilon)];

% GBM
t = (0:nsteps)'*dt;
Y = bsxfun(@plus, (mu-0.5*sigma.^2)*t, sigma*W);
Y = S0*exp(Y);

Который создает пути

plot(Y)

введите описание изображения здесь



Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow