CQF笔记M1L5仿真和操作随机微分方程

  • Module 1 Building Blocks of Quant Finance
    • Lecture 5 Simulating and Manipulating Stochastic Differential Equations
      • 操作随机微分方程
      • 转移概率密度函数
        • 前向方程
        • 对数正态随机游走
        • 稳态分布
        • 反向方程
      • 仿真对数正态随机游走
      • 生成相关的随机数

Module 1 Building Blocks of Quant Finance

Lecture 5 Simulating and Manipulating Stochastic Differential Equations

操作随机微分方程

dG=a(G,t)dt+b(G,t)dXdG = a(G,t) \ dt + b(G,t) \ dXdG=a(G,t) dt+b(G,t) dX
称为GGG的随机微分方程或者dGdGdG的随机游走,由两部分组成:

  1. a(G,t)dta(G,t)dta(G,t)dt是确定性部分,dtdtdt的系数称为drift或者growth
  2. b(G,t)dXb(G,t)dXb(G,t)dX是随机部分, dXdXdX的系数称为diffusion或者volatility

资产价格和几何布朗运动

dS=μSdt+σSdX(1)dS=\mu S dt + \sigma S dX \tag{1}dS=μSdt+σSdX(1)

  • drift a(S,t)=μSa(S,t)=\mu Sa(S,t)=μS
  • diffusion b(S,t)=σSb(S,t)=\sigma Sb(S,t)=σS

这个随机过程叫几何布朗运动Geometric Brownian Motion(GMB)或指数布朗运动Exponential Brownian Motion(EMB),广泛用于资产定价

期权价格

df=f(X+dX)−f(x)=dfdXdX+12d2fdX2dt(2)df = f(X+dX)-f(x) = \frac{df}{dX} dX + \frac{1}{2} \frac{d^2f}{dX^2} dt \tag{2}df=f(X+dX)−f(x)=dXdf​dX+21​dX2d2f​dt(2)
其中用到limdt→0dX2=dtlim_{dt \to 0} dX^2 = dtlimdt→0​dX2=dt

重写公式(1)(1)(1)为 dSS=μdt+σdX\begin{aligned} \frac{dS}{S} = \mu dt + \sigma dX \end{aligned}SdS​=μdt+σdX​

  • dSdSdS反映很短时间间隔dtdtdt内的价格变化, dSS\begin{aligned} \frac{dS}{S} \end{aligned}SdS​​表示资产收益率
  • μ\muμ 是资产收益率的平均值
  • σ\sigmaσ 反映资产收益率的波动性(标准差)
  • dXdXdX 是布朗运动的增量,服从正态分布dX∼N(0,dt)dX \sim N(0, dt)dX∼N(0,dt)

期权价格是随机过程的函数V(S)V(S)V(S), 进行泰勒展开得到 dV=dVdSdS+12d2VdS2dS2\begin{aligned} dV=\frac{dV}{dS} dS + \frac{1}{2} \frac{d^2V}{dS^2} dS^2 \end{aligned}dV=dSdV​dS+21​dS2d2V​dS2​

忽略dt32,dt2dt^\frac{3}{2}, dt^2dt23​,dt2等高阶无穷小, 得到dS2=σ2S2dtdS^2=\sigma ^2 S^2 dtdS2=σ2S2dt,带入得到
dV=(μSdVdS+12σ2S2d2VdS2)dt+(σSdVdS)dX(3)\begin{aligned} dV = (\mu S \frac{dV}{dS} + \frac{1}{2} \sigma^2 S^2 \frac{d^2V}{dS^2})dt + (\sigma S \frac{dV}{dS})dX \end{aligned} \tag{3}dV=(μSdSdV​+21​σ2S2dS2d2V​)dt+(σSdSdV​)dX​(3)
这是一个新的随机微分方程,同样包括确定性部分和随机部分

实例1:对数
由于几何布朗运动的右侧有S,无法直接通过积分求解,定义中间函数V(S)=logSV(S)=logSV(S)=logS,有

dVdS=1Sd2VdS2=−1S2\begin{aligned} & \frac{dV}{dS} = \frac{1}{S} \\ & \frac{d^2V}{dS^2} = - \frac{1}{S^2} \\ \end{aligned}​dSdV​=S1​dS2d2V​=−S21​​

由公式(3)(3)(3)得到
d(logS)=(μ−12σ2)dt+σdXd(logS) = (\mu - \frac{1}{2} \sigma ^2)dt + \sigma dXd(logS)=(μ−21​σ2)dt+σdX
两边积分,得到
∫0td(logS)=∫0t(μ−12σ2)dτ+∫0tσdX=(μ−12σ2)t+σ(X(t)−X(0))\begin{aligned} \int_0^t d(logS) &= \int_0^t(\mu - \frac{1}{2} \sigma ^2)d\tau + \int_0^t \sigma dX \\ &= (\mu - \frac{1}{2} \sigma ^2)t + \sigma (X(t) - X(0)) \end{aligned}∫0t​d(logS)​=∫0t​(μ−21​σ2)dτ+∫0t​σdX=(μ−21​σ2)t+σ(X(t)−X(0))​
假设X(0)=0,S(0)=S0X(0) = 0, S(0) = S_0X(0)=0,S(0)=S0​,
S(t)=S0e(μ−12σ2)t+σX(t)=S0e(μ−12σ2)t+σϕt\begin{aligned} S(t) &= S_0 e^{(\mu - \frac{1}{2} \sigma ^2)t + \sigma X(t)} &=S_0 e^{(\mu - \frac{1}{2} \sigma ^2)t + \sigma \phi \sqrt{t}} \end{aligned}S(t)​=S0​e(μ−21​σ2)t+σX(t)​=S0​e(μ−21​σ2)t+σϕt​​

实例2:均值复归

考察 dr=γ(rˉ−r)dt+σdXdr = \gamma(\bar{r} - r)dt + \sigma dXdr=γ(rˉ−r)dt+σdX

  • γ\gammaγ 是回复速度
  • rˉ\bar{r}rˉ 是均值(长期均值)

这个微分方程同样无法直接通过积分求解rrr,令u=r−rˉu = r - \bar{r}u=r−rˉ, 两边同时乘以eγte^{\gamma t}eγt, 使用乘法法则,得到d(ueγt)=σeγtdXd(ue^{\gamma t}) = \sigma e^{\gamma t} dXd(ueγt)=σeγtdX, 两边积分得到
u(t)=u(0)e−γt+σ∫0teγ(s−t)dXs=u(0)e−γt+σ(X(t)−γ∫0tX(s)eγ(s−t)ds)\begin{aligned} u(t) &= u(0)e^{-\gamma t} + \sigma \int_0^t e^{\gamma (s-t)} dX_s \\ &= u(0)e^{-\gamma t} + \sigma (X(t) - \gamma \int_0^t X(s)e^{\gamma (s-t)} ds) \end{aligned}u(t)​=u(0)e−γt+σ∫0t​eγ(s−t)dXs​=u(0)e−γt+σ(X(t)−γ∫0t​X(s)eγ(s−t)ds)​

转移概率密度函数

dy=A(y,t)dt+B(y,t)dXdy = A(y, t)dt + B(y, t)dXdy=A(y,t)dt+B(y,t)dX

注意概率密度函数p(y,t;y′,t′)p(y,t;y',t')p(y,t;y′,t′)的定义
Prob(a<y′<battimet′∣yattimet)=∫abp(y,t;y′,t′)dy′\begin{aligned} Prob(a<y'<b \ at \ time \ t' | y\ at\ time\ t) = \int_a^b p(y,t;y',t')dy' \end{aligned}Prob(a<y′<b at time t′∣y at time t)=∫ab​p(y,t;y′,t′)dy′​

前向方程

已知:当前时刻ttt的值为yyy
求解:未来时刻t′t't′的值为y′y'y′的概率(分布)

通过三叉树思想可以得到前向方程和反向方程, 参考泰勒级数和转移概率密度函数

∂p∂t′=12∂2∂y′2(B(y′,t′)2p)−∂∂y′(A(y′,t′)p)\begin{aligned} \frac{\partial p}{\partial t'} = \frac{1}{2} \frac{\partial ^2}{\partial {y'}^2}(B(y',t')^2 p) - \frac{\partial}{\partial y'}(A(y',t')p) \end{aligned}∂t′∂p​=21​∂y′2∂2​(B(y′,t′)2p)−∂y′∂​(A(y′,t′)p)​

这个方程称为Fokker–Planck或者forward Kolmogorov方程

对数正态随机游走

dS=μSdt+σSdXdS=\mu S dt + \sigma S dXdS=μSdt+σSdX

  • A(S,t)=μSA(S,t)=\mu SA(S,t)=μS
  • B(S,t)=σSB(S,t)=\sigma SB(S,t)=σS

前向方程变为
∂p∂t′=12∂2∂y′2(σ2S′2p)−∂∂y′(μS′p)\begin{aligned} \frac{\partial p}{\partial t'} = \frac{1}{2} \frac{\partial ^2}{\partial {y'}^2}(\sigma ^ 2 {S'}^2 p) - \frac{\partial}{\partial y'}(\mu S' p) \end{aligned}∂t′∂p​=21​∂y′2∂2​(σ2S′2p)−∂y′∂​(μS′p)​

求解得到
p(S,t;S′,t′)=1σS′2π(t′−t)e−(log(S/S′)+(μ−12σ2)(t′−t))2/2σ2(t′−t)\begin{aligned} p(S, t; S', t') = \frac{1}{\sigma S' \sqrt{2 \pi (t' - t)}} e^{-(log(S/S')+(\mu - \frac{1}{2}\sigma^2)(t'-t))^2/2\sigma ^ 2(t'-t)} \end{aligned}p(S,t;S′,t′)=σS′2π(t′−t)​1​e−(log(S/S′)+(μ−21​σ2)(t′−t))2/2σ2(t′−t)​

对数随机游走的概率密度分布

下图是上图表达的是同一个意思

稳态分布

当t′→∞t' \to \inftyt′→∞时, p(y,t;y′,t′)p(y, t; y', t')p(y,t;y′,t′)与初始时刻ttt的状态yyy无关。

  • 利率、通胀和波动率的SDE模型呈现稳态分布
  • 对数正态分布随机游走会变为无界或者退化为0(非稳态)

稳态分布p∞(y′)p_{\infty}(y')p∞​(y′)满足微分方程

12d2dy′2(B2p∞)−ddy′(Ap∞)=0\begin{aligned} \frac{1}{2} \frac {d^2}{{dy'}^2}(B^2 p_{\infty}) - \frac{d}{dy'}(Ap_{\infty}) = 0 \end{aligned}21​dy′2d2​(B2p∞​)−dy′d​(Ap∞​)=0​

Vasicek model

dr=γ(rˉ−r)dt+σdXdr = \gamma(\bar{r} - r)dt + \sigma dXdr=γ(rˉ−r)dt+σdX

带入稳态分布的微分方程
12σ2d2p∞dy′2−γddr′((rˉ−r′)p∞)=0\begin{aligned} \frac{1}{2} \sigma ^2 \frac {d^2 p_{\infty}}{{dy'}^2} - \gamma \frac{d}{dr'}((\bar{r}-r')p_{\infty}) = 0 \end{aligned}21​σ2dy′2d2p∞​​−γdr′d​((rˉ−r′)p∞​)=0​

解方程得到
p∞=1σγπe−γ(rˉ−r′)2σ2\begin{aligned} p_{\infty} = \frac{1}{\sigma} \sqrt{\frac{\gamma}{\pi}} e^{-\frac{\gamma(\bar{r} - r')^2}{\sigma ^2}} \end{aligned}p∞​=σ1​πγ​​e−σ2γ(rˉ−r′)2​​

说明利率
r∼N(rˉ,σ22γ)r \sim N(\bar{r}, \frac{\sigma^2}{2 \gamma})r∼N(rˉ,2γσ2​)

TODO: 疑问: Vasicek模型本身满足稳态分布,还是假设他满足稳态分布

反向方程

backward Kolmogorov equation

∂p∂t+12B(y,t)2∂p∂y2+A(y,t)∂p∂y=0\begin{aligned} \frac{\partial p}{\partial t} + \frac{1}{2} B(y,t)^2 \frac {\partial ^ p} {\partial y ^ 2} + A(y, t) \frac {\partial p} {\partial y} = 0 \end{aligned}∂t∂p​+21​B(y,t)2∂y2∂p​+A(y,t)∂y∂p​=0​

仿真对数正态随机游走

dS=μSdt+σSdXdS=\mu S dt + \sigma S dXdS=μSdt+σSdX

变换为离散时间
Si+1=Si(1+μδt+σϕδ1/2)\begin{aligned} S_{i+1} = S_i (1+\mu \delta t + \sigma \phi \delta ^ {1/2}) \end{aligned}Si+1​=Si​(1+μδt+σϕδ1/2)​

Euler method 用电子表格软件仿真这个模型

输入参数

  • 初始值 S0S_0S0​
  • 时间步长 δt\delta tδt
  • drift rate μ\muμ
  • 波动率 σ\sigmaσ
  • 步数

标准正态分布发生器 ϕ\phiϕ
在Excel中,

  • 精确但是慢的方法:用函数NORMSINV(RAND())产生标准正态分布的随机数
  • 不精确但是快的方法:(∑i=112\begin{aligned} \sum_{i=1}^{12} \end{aligned}i=1∑12​​ RAND()) - 6
    这里是用均匀分布之和呈现正态分布的特性,只取了12次均匀分布的和,所以不太精确

仿真其他随机游走

基本思路都是先离散化,再用正态分布随机数发生器产生数据

生成相关的随机数

生成不相关的随机数

  1. 生成不相关的随机数ϵ1\epsilon_1ϵ1​和ϵ2\epsilon_2ϵ2​
  2. 组合随机数
    ϕ1=ϵ1\phi_1 = \epsilon_1ϕ1​=ϵ1​
    ϕ2=ρϵ1+1−ρ2ϵ2\phi_2 = \rho \epsilon_1 + \sqrt{1-\rho^2} \epsilon_2ϕ2​=ρϵ1​+1−ρ2​ϵ2​$
    ϕ1\phi_1ϕ1​和ϕ2\phi_2ϕ2​的相关性为ρ\rhoρ

独立正态分布Xi∼N(μi,σi2)Xi \sim N(\mu_i, \sigma_i^2)Xi∼N(μi​,σi2​)的加权和满足正态分布
∑i=1nωiXi∼N(∑i=1nωiμi,∑i=1nωi2σi2)\begin{aligned} \sum_{i=1}^{n} \omega_i X_i \sim N(\sum_{i=1}^{n} \omega_i \mu_i, \sum_{i=1}^{n} \omega_i ^2 \sigma_i ^ 2) \end{aligned}i=1∑n​ωi​Xi​∼N(i=1∑n​ωi​μi​,i=1∑n​ωi2​σi2​)​

以上几个结论都可以通过独立分布的相关性/协方差为0证明

CQF笔记M1L5仿真和操作随机微分方程相关推荐

  1. CQF笔记M1L1资产的随机行为

    CQF笔记M1L1资产的随机行为 简介 Module 1 Building Blocks of Quant Finance Lecture 1 The Random Behaviour of Asse ...

  2. CQF笔记Primer数学基础

    CQF笔记Primer数学基础 1 Calculus 微积分 1.1 Basic Terminology 基本术语 1.2 Functions 函数 1.2.1 Explicit/Implicit R ...

  3. VGGNet学习笔记及仿真

    VGGNet学习笔记及仿真 文章目录 VGGNet学习笔记及仿真 引言 VGGNet论文笔记 VGGNet架构 参数详解 创新点 训练细节 结果 代码实现 Visualize a few images ...

  4. UA MATH565C 随机微分方程III Ito积分的构造

    UA MATH565C 随机微分方程III Ito积分的构造 Filtration Step Process的Ito积分 Step Process的Ito积分的性质 上一讲讨论到,构造Ito积分要用构 ...

  5. 参数估计_随机微分方程的参数估计(一)

    随机微分方程,俗称SDE,相信点进来的同学们肯定对这个概念不感到陌生.SDE呢,是对现实生活中一些随机波动的事物的建模,比如可以用几何布朗运动(GBM)来模拟股价变化,用CIR模型来模拟利率波动. 然 ...

  6. CQF笔记M1L3泰勒级数和转移概率密度函数

    CQF笔记M1L3泰勒级数和转移密度函数 Module 1 Building Blocks of Quant Finance Lecture 2 Taylor Series and Transitio ...

  7. CQF笔记M2L2优化理论及其在资产组合选择中的应用

    CQF笔记M2L2优化理论及其在资产组合选择中的应用 Module 2 Quantitative Risk & Return Lecture 2 Fundamentals of Optimiz ...

  8. C# 学习笔记(19)操作SQL Server下

    C# 学习笔记(19)操作SQL Server下 ADO.net操作数据库 这应该是比较老的技术了,以后有空的话学学 Linq /// <summary> /// 数据库使用类 /// & ...

  9. C# 学习笔记(18)操作SQL Server 中

    C# 学习笔记(18)操作SQL Server 中 数据库基础操作 SQL语法可以参考 菜鸟教程 或者微软官方的SQL示例 注意SQL不区分大小写 查 1.基础查询 --最基础的查询语句, selec ...

  10. C# 学习笔记(17)操作SQL Server 上

    C# 学习笔记(17)操作SQL Server上 安装SQL Server 微软官网 https://www.microsoft.com/zh-cn/sql-server/sql-server-dow ...

最新文章

  1. PHP 和 AJAX MySQL
  2. 在 VMware Clone Ubuntu Server 之后,解决网卡问题
  3. 疑似iPhone 13 mini原型机曝光:后置相机模组排布方式变化
  4. python vector变量_用Python实现因子分析
  5. vsto mysql_VSTO安装部署(完美解决XP+2007)
  6. JSP的表单回显实现
  7. 离线语音合成使用——科大讯飞or云知音or百度语音
  8. TypeScript02 方法特性【参数种类、参数个数】、generate方法、析构表达式、箭头表达式、循环...
  9. 给Mac设置定时关机、重启、睡眠
  10. 国内java报表软件简单对比
  11. Ubuntu搭建FTP服务器后用filezella连接报错
  12. 如何提高学习欲--奖励机制
  13. 3星|《一万年的爆发:文明如何加速人类进化》:那些拒绝承认欧洲征服和定居美洲过程中生物学差异的人,事实上也是在否认达尔文进化论...
  14. 《Spark机器学习》通读
  15. numpy序列预处理dna序列_合成生物学快讯2019年第12期:基于DNA的分子数字数据存储...
  16. java实现剩余年假计算_通过参加工作日期计算出年假
  17. 最佳实践 | 基于腾讯云ES如何跨地域容灾?跨集群复制为您解忧!
  18. 初一计算机课教学计划,七年级信息技术教学计划
  19. 【语音去噪】基于matlab GUI切比雪夫+椭圆形低通滤波器语音去噪【含Matlab源码 2198期】
  20. Python-charle+fiddler

热门文章

  1. IOS 蓝牙开发(六)蓝牙手柄 GameController开发
  2. 酷派N900刷机教程
  3. 该如何实现EDIUS中的多机位编辑
  4. Java SE 01 Java概述
  5. matlab 数据拟合相关
  6. Axure RP 8下载
  7. 微信应用开发简单示例,学生自助报道系统
  8. 微信小程序不同类型demo集合含源码
  9. java 点云数据处理_概述 | 点云数据处理方法都有哪些?
  10. 3DMM(人脸3D形变统计模型)