← 返回目录

Chapter 08: 随机过程入门

Fundamentals of Stochastic Processes - 分析和模拟随时间变化的随机现象

布朗运动维纳过程漂移几何布朗运动蒙特卡洛模拟
🎲

随机过程:时间中的随机性

1827年,英国植物学家罗伯特·布朗通过显微镜观察悬浮于水中的花粉,发现微粒呈现出不规则的运动。这种现象后来被称作布朗运动(Brownian Motion),成为随机过程理论的基石。

本章将介绍布朗运动、维纳过程、漂移布朗运动、几何布朗运动等核心概念,并深入理解如何用蒙特卡洛模拟预测未来股价走势。

🎯本章学习目标

1
理解布朗运动本质
粒子随机游走,整体服从正态分布
2
掌握漂移概念
确定性趋势 + 随机波动
3
理解几何布朗运动
股价建模,ln(S)服从正态分布
4
应用蒙特卡洛模拟
预测未来价格分布
✦
8.1

布朗运动与维纳过程

来自花粉颗粒的无规则运动

布朗运动是随机过程的经典模型。如果一个过程X(t)满足:(1) 初始值X(0) = 0;(2) 几乎处处连续;(3) 平稳独立增量,则称X(t)为布朗运动。对于t > 0,X(t)是均值为0、方差为σ²t的正态随机变量。

特别地,当σ = 1时,称为标准布朗运动或维纳过程(Wiener Process),记作B(t)。维纳过程得名于美国数学家诺伯特·维纳。

📐 核心公式

布朗运动定义
X(t) - X(s) ~ N(0, σ²(t - s))
对于0 ≤ s < t,增量服从正态分布
维纳过程 (σ = 1)
B(t) ~ N(0, t)
标准差随√t增长:std(B(t)) = √t
概率密度函数
fB(t)(x) = (1/√(2πt)) exp(-x²/(2t))
随时间t演化,分布不断扩散

🔬历史背景

• 1827年:罗伯特·布朗观察花粉微粒运动
• 1905年:爱因斯坦理论解释布朗运动
• 1920年代:诺伯特·维纳数学建模
• 应用:物理、金融、生物、信号处理

📊关键性质

• 连续性:路径连续但处处不可微
• 独立增量:不相交时间段增量独立
• 平稳增量:增量分布只依赖时间间隔
• 正态分布:任意时刻服从正态分布
✦
8.2

无漂移布朗运动

从单粒子到多粒子的统计涌现

无漂移布朗运动和标准布朗运动的关系为X(t) = σB(t)。ΔX为X在小段时间Δt内位置变化:ΔX = σ√Δt · ε,其中随机数ε服从标准正态分布N(0, 1)。

🎲 一维无漂移布朗运动

累加形式
X(tn) = X(tn-1) + εσ√Δt
= ε1σ√Δt + ε2σ√Δt + ... + εnσ√Δt
= σ√Δt Σεi
在t0 = 0时刻,微粒位移X(t0) = 0。通过逐步累加,得到完整轨迹。
关键性质
• 期望值:E[X(t)] = 0(无趋势)
• 方差:Var[X(t)] = σ²t(随时间线性增长)
• 标准差:std[X(t)] = σ√t(随√t增长)
• 分布:X(t) ~ N(0, σ²t)
📊
图7-8说明
• 图7:100个微粒200步无漂移布朗运动轨迹,右侧为t=200时刻位置分布
• 特点:每个微粒路径不同(概率几乎为0相同),但整体服从N(0, σ²t)
• ±σ√t和±2σ√t曲线:标注68-95-99.7法则的理论边界
• 图8:微粒在不同时刻(n=40, 80, 120, 160, 200)位置分布快照
• 演化:分布宽度随√t增长,始终以x=0为中心对称

🎨 二维无漂移布朗运动

二维平面公式(图9)
X(tn) = σ√Δt Σεi
Y(tn) = σ√Δt Σεj
X和Y方向独立,εi和εj都服从N(0, 1)
一维特点
• 沿x轴左右游走
• 分布扩散呈带状
• 轨迹为曲线
• 直观理解容易
二维特点
• 平面内四处游走
• 分布扩散呈圆形
• 轨迹更"浑浑噩噩"
• 更接近实际花粉运动
💡
核心洞察
• 单vs多:单个粒子路径混乱不可预测,多个粒子涌现统计规律
• 随机→确定:随机游走→确定的正态分布
• 68-95-99.7:约68%在±σ√t,95%在±2σ√t,99.7%在±3σ√t
• 时间演化:分布宽度∝√t,扩散速度递减
• Python:Bk6_Ch8_02.ipynb绘制图7-8,Bk6_Ch8_03.ipynb绘制图9
✦
8.3

漂移布朗运动

确定性趋势 + 随机波动

前面介绍的无漂移布朗运动只有随机成分,没有确定成分。如果在零漂移布朗运动基础上引入确定成分,我们得到漂移布朗运动(Brownian Motion with Drift)。其中µ为漂移率,代表确定的趋势;σB(t)为随机波动,代表不确定性。

📐 漂移布朗运动公式

X(t) = µt + σB(t)
X(t) ~ N(µt, σ²t)
确定项 µt
• 线性增长/下降趋势
• 可预测的"历史进程"
• µ > 0向上,µ < 0向下
随机项 σB(t)
• 标准差随√t增长
• 不可预测的"生活细节"
• σ控制波动幅度
离散化形式(蒙特卡洛模拟)
ΔX = µΔt + σ√Δt · ε
其中 ε ~ N(0, 1),累加得到完整路径
💡
哲学理解
• µt:浩浩汤汤的历史进程,大势所趋
• σB(t):时时刻刻的生活细节,琐碎繁杂
• 叠加:人生轨迹 = 时代潮流 + 个人选择
• 应用:股票价格、物体运动、信号+噪音
✦
8.4

具有一定相关性布朗运动

多资产联动建模

上一章介绍了如何产生具有一定相关性的随机数。本节介绍如何据此产生满足一定相关性的布朗运动。给定固定时间间隔Δt,ΔX(t)为在Δt满足一定相关性布朗运动分步步长构成的矩阵。

📐 相关性布朗运动公式体系

核心公式
ΔX(t) = E(X)Δt + ZR√Δt
也就是说,X(t) ~ N(E(X)t, Σt)
R是Σ的Cholesky分解的三角矩阵,Z为随机数矩阵,服从N(0, I)
协方差矩阵Σ
Σ = [σ₁², ρσ₁σ₂]
    [ρσ₁σ₂, σ₂²]
ρ为相关系数,-1 ≤ ρ ≤ 1
Cholesky分解
Σ = LLᵀ = RᵀR
• L₁₁ = σ₁
• L₂₁ = ρσ₂
• L₂₂ = σ₂√(1-ρ²)
📊
图17-20说明
• 图16:矩阵运算过程示意图,E(X)Δt + Z @ R√Δt = ΔX
• 图17:分步步长散点图(ρ=0.8正相关),呈正斜率椭圆分布
• 图18:两条具有正相关的行走轨迹,X₁和X₂同向运动
• 图19:分步步长散点图(ρ=-0.8负相关),呈负斜率椭圆分布
• 图20:两条具有负相关的行走轨迹,X₁和X₂反向运动
🔗 应用场景
金融市场
• 多资产价格联动建模
• 股票组合风险评估
• 配对交易策略设计
风险管理
• 组合VaR计算
• 相关性风险监控
• 压力测试情景模拟
⚙️ 技术要点
Cholesky分解
• 协方差矩阵必须正定
• 矩阵过大时可能不稳定
• 替代方案:Benson-Zangari法
Python实现
• np.linalg.cholesky(Σ)
• Bk6_Ch8_05.ipynb
• 矩阵形状:(L × n × n)
💡
核心洞察
• 相关≠因果:正相关不代表一个引起另一个,可能有共同驱动因素
• 动态相关性:实际市场相关性随时间变化(考虑DCC-GARCH)
• 分散投资:负相关或低相关资产可降低组合风险
• 极端事件:危机时相关性趋近1(都下跌),分散效果失效
✦
8.5

几何布朗运动

金融市场的数学模型

几何布朗运动(Geometric Brownian Motion, GBM)是金融数学中最重要的随机过程模型。与普通布朗运动不同,GBM的关键特性是:股价S(t)始终为正,且ln(S(t))服从正态分布。这使得GBM成为股票价格建模的理想工具。

GBM广泛应用于Black-Scholes期权定价模型、风险价值VaR计算、投资组合模拟等金融领域。

📐 几何布朗运动公式体系

随机微分方程(SDE)
dSt = µStdt + σStdBt
漂移项和波动项都与当前价格St成正比
解析解(伊藤引理)
S(t) = S₀ exp((µ - σ²/2)t + σB(t))
S(t)始终为正,期望值E[S(t)] = S₀e^(µt)
对数形式(关键洞察)
ln(S(t)) = ln(S₀) + (µ - σ²/2)t + σB(t)
ln(S(t))是布朗运动!服从正态分布
离散化(蒙特卡洛模拟)
ln(St+Δt) - ln(St) = (µ - σ²/2)Δt + σ√Δt · ε
对数收益率服从正态分布,ε ~ N(0, 1)
参数含义
µ (mu):年化期望收益率
• 决定长期趋势
σ (sigma):年化波动率
• 决定风险/不确定性
S₀:初始价格
• 模拟起点
关键性质
✓ S(t) > 0(股价不会为负)
✓ ln(S(t))服从正态分布
✓ 收益率服从正态分布
✓ 期望值指数增长
✓ 方差随时间增长
📚
Python实现参考
• Bk6_Ch8_06.ipynb:几何布朗运动轨迹生成(图21-22)
• 关键函数:np.random.normal(), np.cumsum(), np.exp()
✦
8.6

股价模拟

从历史数据到未来预测

实践中,几何布朗运动常用来模拟股票股价走势。如图23所示,长期观察股票股价,可以发现走势,而且股价不能为负值。更重要的是,股价收益率分布可以用高斯分布来描述。

📊 股价模拟完整流程(图24)

📈
步骤1:历史数据
• 收集S&P 500价格
• 计算日收益率
• 图25-26
🎯
步骤2:参数校准
• 计算µdaily和σdaily
• 收益率分布拟合
• 图27
🎲
步骤3:蒙特卡洛
• 生成100-1000条路径
• 使用校准参数
• 图28左侧
📊
步骤4:未来分布
• 终点价格分布
• 置信区间
• 图28右侧
GBM股价模拟公式(再现)
dSt = µStdt + σStdWt
离散化:S(t+Δt) = S(t) · exp((µ - σ²/2)Δt + σ√Δt · ε)
其中Δt = 1/252(每个交易日),ε ~ N(0, 1)
📊
图25-28详细说明
• 图25:S&P 500历史价格水平(Adjusted Closing Price)
• 图26:S&P 500日对数回报率时间序列
• 图27:日对数回报率分布直方图,计算得µdaily=0.001,σdaily=0.013
• 图28:蒙特卡洛模拟结果(左:多条路径,右:50天后价格分布PDF)
• 图29:二叉树随机路径模拟股价(本书不展开)
✅ 模型优势
• 理论支撑:基于Black-Scholes框架
• 实现简单:仅需µ和σ两个参数
• 解析解:有明确数学形式
• 正值保证:股价S(t) > 0
• 广泛应用:期权定价、风险管理
⚠️ 模型局限(图27黑天鹅)
• 历史≠未来:参数估计基于历史数据
• 正态假设:实际分布有厚尾(黑天鹅)
• 恒定参数:µ和σ实际随时间变化
• 无跳跃:忽略突发新闻导致的跳跃
• 独立增量:忽略自相关和波动率聚集
📚
Python实现参考
• Bk6_Ch8_07.ipynb:S&P 500股价模拟完整流程(图25-28)
• 数据获取:yfinance库或pandas_datareader
• 参数估计:np.mean(), np.std()计算日收益率均值和标准差
• 模拟:np.random.randn()生成随机数,np.exp()计算指数
• 可视化:matplotlib绘制路径和分布
✦
8.7

相关股价模拟

多资产组合的蒙特卡洛模拟

当时间戳为列方向时,下式为几何布朗过程计算对数回报率矩阵X的矩阵运算式。µ为股价年化期望收益率行向量,Σ为年化方差协方差矩阵,Z是由随机数发生器产生的服从标准正态分布的线性无关随机数,上三角矩阵R来自Cholesky分解Σ得到。

📐 相关股价模拟矩阵公式

列方向矩阵运算(图30)
X = µΔt - (diag(Σ)ᵀ/2)Δt + ZR√Δt
X(t) ~ N(E(X)t, Σt),R是Σ的Cholesky分解的三角矩阵
Δt设定为1/252(每个交易日)
µ 期望收益率向量
• 1 × D行向量
• 每只股票的年化收益率
• 从历史数据估计
Σ 协方差矩阵
• D × D对称矩阵
• 对角线:各股票方差
• 非对角:股票间协方差
Z 随机数矩阵
• n × D矩阵
• 服从N(0, I)
• 线性无关

🔄 多路径模拟流程(图30-31)

📈
步骤1:数据准备
• 收集D只股票价格
• 计算日收益率
• 图32
🎯
步骤2:协方差估计
• 计算µ向量和Σ矩阵
• 绘制热图
• 图33
🔢
步骤3:Cholesky分解
• Σ = L @ Lᵀ
• 上三角矩阵R
• 图34
🎲
步骤4:蒙特卡洛
• 生成npaths条路径
• 矩阵形状n×D×npaths
• 图31、35
矩阵维度说明
• n:时间步数(如252个交易日)
• D:股票数量(如9只股票)
• npaths:蒙特卡洛模拟路径数
• X矩阵:n × D × npaths
✅ 相关性建模优势
• 真实反映市场:股票间存在相关性
• 组合风险评估:考虑分散化效应
• 配对交易:识别相关/反相关资产
• 风险管理:更准确的VaR计算
• 压力测试:模拟市场联动情景
⚠️ 方法局限性
• Cholesky分解:大矩阵可能不稳定
• 正定要求:协方差矩阵必须正定
• 恒定相关性:实际相关性随时间变化
• 计算复杂度:O(D³),D较大时昂贵
• 替代方案:Benson-Zangari法避免分解
📚
Python实现参考
• Bk6_Ch8_08.ipynb:相关性股价蒙特卡洛模拟完整流程(图30-35)
• 数据获取:yfinance库获取多只股票数据
• 协方差计算:df.cov()计算协方差矩阵
• Cholesky分解:np.linalg.cholesky(Σ)得到下三角矩阵L
• 矩阵运算:numpy广播和einsum高效计算
• 可视化:seaborn.heatmap()绘制协方差矩阵热图
💡
核心洞察与应用
• 相关性≠因果:正相关不代表一个引起另一个
• 分散投资:负相关或低相关资产降低组合风险
• 极端事件:危机时相关性趋近1(系统性风险)
• 动态相关性:考虑DCC-GARCH等模型
• 应用场景:投资组合优化、风险对冲、配对交易、压力测试
• 实际考虑:交易成本、流动性、市场冲击、税收等
✦

🎯本章核心要点

🔍布朗运动本质

  • •随机游走:粒子无规则运动
  • •统计规律:整体服从N(0, σ²t)
  • •标准差:随√t增长
  • •维纳过程:σ=1的标准布朗运动

📊漂移vs无漂移

  • •无漂移:X(t) = σB(t),纯随机
  • •有漂移:X(t) = µt + σB(t)
  • •确定+随机:趋势叠加波动
  • •期望值:E[X(t)] = µt

📈几何布朗运动

  • •股价建模:S(t) > 0始终为正
  • •对数正态:ln(S(t))服从正态分布
  • •期望值:E[S(t)] = S₀e^(µt)
  • •应用:Black-Scholes期权定价

🎲蒙特卡洛模拟

  • •基本思想:大量随机路径模拟
  • •参数校准:用历史数据估计µ、σ
  • •未来预测:生成价格分布
  • •置信区间:5%-95%分位数
🎓 核心公式总结
维纳过程:
B(t) ~ N(0, t),std = √t
漂移布朗运动:
X(t) = µt + σB(t) ~ N(µt, σ²t)
几何布朗运动:
dSt = µStdt + σStdBt
S(t) = S₀ exp((µ - σ²/2)t + σB(t))
蒙特卡洛离散化:
ΔX = µΔt + σ√Δt · ε, ε ~ N(0,1)
🚀 进阶学习建议
• 伊藤引理:随机微分方程求解工具
• Black-Scholes模型:期权定价理论
• 随机波动率:Heston模型,GARCH族
• 跳跃扩散:考虑突发事件(Merton模型)
• 相关布朗运动:多资产组合模拟(Cholesky分解)
• 参考:《统计至简》第18章,《编程不难》时间序列