2. 预备知识:随机过程与伊藤微积分基础

好,咱们正式开始。在深入 Mean Field Game 之前,有些数学工具得先备好。说白了,如果你不懂随机过程和伊藤微积分,后面看 MFG 的推导会非常痛苦。我个人习惯是先把这些基础夯结实,后面才能跑得快。

2.1 随机过程:从布朗运动说起

随机过程,你可以理解为一个随时间演变的随机变量。比如股票价格,今天是多少,明天是多少,不确定。但它的变化有规律可循。

最核心的随机过程,就是 布朗运动(也叫维纳过程),记作 \(W_t\)。它有几个关键性质:

  • 独立增量:不同时间段的增量是独立的。
  • 正态增量:\(W_{t+\Delta t} - W_t \sim N(0, \Delta t)\)。
  • 连续路径:但处处不可导。

核心直觉:布朗运动是随机游走的连续极限。你想想看,一个醉汉走路,每一步方向随机,步长很小,走出来的轨迹就是布朗运动。

我在项目中遇到过一个问题:用布朗运动模拟股价时,发现模拟出来的路径太“光滑”了。后来才意识到,真实市场有跳跃,得用跳扩散过程。嗯,这里要注意,布朗运动只是基础,不是万能药。

2.2 伊藤积分:随机积分的定义

普通积分 \(\int f(t) dt\) 很好理解,但随机积分呢?比如 \(\int g(t) dW_t\),这里的 \(dW_t\) 是随机项,怎么积?

伊藤积分给出了答案。它的定义基于一个思想:被积函数在积分区间左端点取值。为什么是左端点?因为左端点的值是已知的(非预期的),这保证了积分的鞅性质。

避坑指南:我曾经在写代码时,不小心用了右端点取值(那是 Stratonovich 积分),结果算出来的期权价格全错了。记住,金融里默认用伊藤积分,别搞混。

伊藤积分的核心公式:

∫₀ᵗ g(s) dW_s = lim Σ g(tᵢ)(W(tᵢ₊₁) - W(tᵢ))

其中 tᵢ 是左端点。这个极限是在均方意义下收敛的。

2.3 伊藤引理:随机微积分的链式法则

普通微积分有链式法则:\(df = f'(x) dx\)。但随机世界里,因为 \(dW_t\) 的平方项不消失(\( (dW_t)^2 = dt \)),链式法则变了。

伊藤引理:如果 \(X_t\) 满足 \(dX_t = \mu dt + \sigma dW_t\),那么对于光滑函数 \(f(t, x)\),有:

df(t, X_t) = (∂f/∂t + μ ∂f/∂x + ½ σ² ∂²f/∂x²) dt + σ ∂f/∂x dW_t

这个公式太重要了。它告诉我们:随机过程的函数,其漂移项多了一个二阶项 \(½ σ² f_{xx}\)。这就是随机微积分和普通微积分的根本区别。

为什么会有二阶项? 因为布朗运动的二次变分不为零。你想想看,\( (dW_t)^2 \) 在均方意义下等于 \(dt\),所以泰勒展开到二阶时,这个项必须保留。

我记得第一次学伊藤引理时,觉得这个二阶项很突兀。后来做期权定价,用伊藤引理推导 BS 方程,才真正理解它的物理意义——它代表了波动率对价格的影响。

2.4 随机微分方程(SDE)

有了伊藤积分和伊藤引理,我们就可以定义随机微分方程了:

dX_t = μ(t, X_t) dt + σ(t, X_t) dW_t

这里 μ 是漂移项,σ 是扩散项。解这个方程,得到的是一个随机过程 \(X_t\)。

常见的 SDE 有:

名称 SDE 应用场景
几何布朗运动 dS = μS dt + σS dW 股票价格模型
Ornstein-Uhlenbeck dX = θ(μ - X) dt + σ dW 利率模型、均值回复
CIR 过程 dr = κ(θ - r) dt + σ√r dW 短期利率模型

注意:SDE 的解不一定存在,也不一定唯一。需要满足 Lipschitz 条件和线性增长条件。我在做数值模拟时,曾经因为参数设置不当,导致解爆炸了。嗯,数值稳定性是个大问题。

2.5 知识体系框架

下面我用一张图来总结本章的知识结构。这张图展示了从布朗运动到伊藤微积分,再到 SDE 和 MFG 的完整链路。

随机过程与伊藤微积分知识体系 布朗运动 随机过程 伊藤积分 伊藤引理 随机微分方程 (SDE) Mean Field Game 期权定价 / 风险管理 图:随机微积分知识体系与 MFG 的关系

2.6 实战:用 Python 模拟几何布朗运动

光说不练假把式。咱们写几行代码,模拟一下几何布朗运动。这是期权定价和 MFG 数值模拟的基础。

import numpy as np
import matplotlib.pyplot as plt

# 参数设置
S0 = 100      # 初始价格
mu = 0.05     # 漂移率
sigma = 0.2   # 波动率
T = 1.0       # 时间长度
N = 252       # 步数
dt = T / N    # 步长

# 生成布朗运动
np.random.seed(42)
dW = np.sqrt(dt) * np.random.randn(N)
W = np.cumsum(dW)

# 几何布朗运动
t = np.linspace(0, T, N)
S = S0 * np.exp((mu - 0.5 * sigma**2) * t + sigma * W)

# 绘图
plt.plot(t, S)
plt.xlabel('时间')
plt.ylabel('价格')
plt.title('几何布朗运动模拟')
plt.show()

个人经验:我习惯用 \( \mu - 0.5\sigma^2 \) 这个漂移修正项。很多人会忘记这个修正,导致模拟的期望值不对。记住,几何布朗运动的期望是 \( S_0 e^{\mu t} \),不是 \( S_0 e^{(\mu - 0.5\sigma^2)t} \)。

2.7 小结

这一章我们覆盖了:

  • 布朗运动及其性质
  • 伊藤积分的定义和左端点取值规则
  • 伊藤引理——随机微积分的核心工具
  • 随机微分方程及其常见类型
  • 数值模拟的实战代码

这些工具,是理解 Mean Field Game 的数学基础。后面我们会看到,MFG 中的 HJB 方程和 Fokker-Planck 方程,本质上就是伊藤引理和 SDE 的延伸。嗯,打好基础,后面才能走得稳。