Лемма Ито
Лемма Ито играет ключевую роль в теории случайных процессов и находит свое приложение в моделях оценки справедливой стоимости финансовых инструментов. Так как стоимость любой производной ценной бумаги является функцией, зависящей в том числе от стохастических факторов, исследование и описание свойств таких функций имеет важное значение.
Лемма Ито применяется к процессам, которые подвержены некоторому сносу, а также воздействию случайных факторов. Такие процессы довольно точно описывают поведение цен на финансовых рынках. Вывод формулы Ито и описание соответствующих свойств в рамках данной статьи будет проведено на базе моделирование цен финансовых активов.
Уравнение цены
Построение прогностической модели стоимости любого финансового актива основано на эмпирическом анализе окружающей нас реальности. Опытным путем установлено, что изменение стоимости финансового актива зависит от (i) времени
Наличие зависимости при которой скорость изменения некоторой величины пропорциональна ей самой встречается очень часто и приводит к экспоненциальному росту, примерами служат уравнения радиоактивного распада, размножения и гибели микроорганизмов. Знание закона по которому изменяется цена позволяет составить дифференциальное уравнение.
В данное уравнение добавляется безрисковая ставка
где,
Надо заметить, что получившееся уравнение позволяет нам точно определить значение цены в любой будущий момент времени, в связи с чем такой процесс можно назвать детерминированным. Однако, на практике цена помимо некоторой детерминированной динамики, определяемой безрисковой ставкой, также подвержена случайным колебаниям, которые должны учитываться при прогнозировании цен.
Исходя из вышесказанного логичным будет выглядеть внедрение в уравнение цены стохастической составляющей, наиболее подходящей моделью которой является броуновское движение.
Броуновское движение
История открытия броуновского движения хорошо известна, поэтому перейдем к описанию его основных физических и математических свойств. В каждый момент времени
Если перенести броуновское движение на координатную плоскость и представить его в дискретном времени, то получим переменную Винера, описывающая одну конкретную реализацию случайного процесса
На практике, каждая случайная величина
В конечном итоге Винеровский процесс, может быть представлен в виде
Добавив к Винеровскому процессу определенную динамику в виде
Код python
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline
steps = 300
num_plots = 50
Range = []
Values = [0]
plt.style.use('ggplot')
plt.rcParams['lines.linewidth'] = 0.6
fig, ax = plt.subplots()
fig.set_figwidth(12)
fig.set_figheight(6)
colormap = plt.cm.gist_ncar
plt.gca().set_prop_cycle(plt.cycler('color', plt.cm.jet(np.linspace(0, 1, 1))))
Range = np.arange(steps)
for i in range(0, num_plots):
for i in range (1, steps):
x = np.random.random()
if x <= 0.5:
x = -1
else:
x = 1
y = Values[-1] + x
Values.append(y)
ax.plot(Range, Values)
Values = [0]Постановка задачи
Имея в распоряжении полученное соотношение
Для начала из разностной схемы уравнения цены
Заметим, что
где,
Имея в виду необходимость проанализировать
Такого рода задачи финансовой математики помогает решать лемма Ито. Например, лемма Ито также используется для вывода уравнения Блэка-Шоулза-Мертона в частных производных.
Лемма Ито
Для того, чтобы решить СДУ
где, дифференциал случайного процесса
Лемма Ито позволяет вычислить функции
где, частные производные вычисляются в точке
В виду соотношения * учитываем только бесконечно малые
В самом деле:
Имея математическое ожидание приращения функции
Получив функции сноса
Логарифмическое блуждание
Как отмечалось ранее, принципиальным для финансовой науки было получение уравнения, одновременно описывающего экспоненциальный рост цены и совмещающего в себе стохастическую составляющую. Поставленная задача решается применением леммы Ито. В формуле
Вычислив производные и осуществив необходимые преобразования получим.
Так как при
В отсутствии стохастической составляющей, т.е. при
Код python
import math as m
import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline
import scipy.stats
from scipy.stats import binom
from scipy.stats import expon
r =0.25
sigma = 0.1
t = 1/360
x0 = 100
num_plots = 10
Days = 360*8
Values = []
DAYS = []
for i in range (0, Days):
DAYS.append(i)
plt.style.use('ggplot')
plt.rcParams['lines.linewidth'] = 0.6
fig, ax = plt.subplots()
fig.set_figwidth(18)
fig.set_figheight(9)
colormap = plt.cm.gist_ncar
for i in range (0,num_plots):
for i in range (0,Days):
if i == 0:
#Генерация случайного числа
distribution = scipy.stats.norm(loc=0,scale=1)
sample = distribution.rvs(size=1)
P = x0*np.exp( ((r - (sigma**2/2))*t) + (sigma*sample*np.sqrt(t)))
Values.append(P)
else:
#Генерация случайного числа
distribution = scipy.stats.norm(loc=0,scale=1)
sample = distribution.rvs(size=1)
K = Values[-1]*np.exp( ((r - (sigma**2/2))*t) + (sigma*sample*np.sqrt(t)))
Values.append(K)
ax.plot(DAYS, Values)
Values= []Список использованных источников.
Степанов С.С. "Стохастический мир", 2009 г. — 376 с.
Жуленев С.В. "Финансовая математика. Введение в классическую теорию. Часть 2.", 2012 г. — 419 с.
Ширяев А.Н. "Основы стохастической финансовой математики. Том 1. Факты. Модели", 1998 — 512 с.