金融工程笔记1:随机分析基础
目录
- 布朗运动
- 伊藤积分
- 伊藤过程与随机模拟
- 伊藤引理
1.布朗运动
是一个布朗运动,如果
a)
b)对于所有的
独立
c)对于任意
2.伊藤积分
概念: 是一个布朗运动, 是一个随机过程,在区间 上做任意划分:
,令 。
若 存在,则将其记为:
性质:
a)
b)
注:当 为函数时性质也成立
c)
根据伊藤积分定义性质c)显然,下面对性质a)、b)当 为函数时给出不严格说明:
1.当 (常数)
所以
2.当
可以直观考虑 的期望和二阶矩
3.当 为 上的函数时
根据定义
注意:这个并不严格
3.伊藤过程与随机模拟
概念: 是伊藤过程,如果 为随机微分方程:
或 的解。其中 为函数, 是布朗运动。 叫漂移率, 叫扩散率或标准差, 叫方差率。
注意: 区间可以推广为
伊藤过程所满足的随机微分方程不一定都可以解出 的显示表达,不过一般而言可以通过随机模拟的方法来模拟一个具体伊藤过程的随机游动,以及计算 。
伊藤过程随机模拟:
根据伊藤过程定义,可以得到以下近似公式:
将时间 等分为 份:
则模拟伊藤过程的序列 满足:
For i = 0 : N-1
当 时,用python伊藤过程进行模拟如下
代码
import numpy as np
import matplotlib.pyplot as plt
plt.rcParams[font.sans-serif]=[SimHei]
plt.rcParams[axes.unicode_minus] = False
n = 5 #模拟伊藤过程个数
X = 2 #伊藤过程起点
N = 100 #各个伊藤过程模拟次数
T = 100 #伊藤过程从0时刻开始的结束时间
mu = 1
sigma = 4
e = np.random.randn(n,N) #5个伊藤过程,各100个点
Y = np.ones((n,N))
h = T/(N-1)
t = np.arange(N)*h
Y[:,0] = X*np.ones((n))
for i in np.arange(N-1):
Y[:,i+1]= Y[:,i] + mu*h + sigma*np.sqrt(h)*e[:,i]
for i in np.arange(Y.shape[0]):
plt.plot(t,Y[i,:],label= 伊藤过程+str(i+1))
plt.legend(loc=upper right)
plt.xlabel(t)
plt.ylabel(X)
plt.title(伊藤过程模拟)
plt.show()
运行结果