第十一章:资产定价浏览器交互实验

使用可点击运行的 Python 与 R 单元完成收益率、组合优化、CAPM、多因子、SDF、期权和债券定价实验。

第十一章:资产定价浏览器交互实验

本章把资产定价的七类核心任务放进同一个可重复工作流:

Rendering diagram…

每个实验都有 Python 与 R 版本。代码使用相同输入和公式,适合做交叉核验。点击“运行”后,先检查基准输出,再显示代码修改参数。

学习成果

完成本章后,你应能够:

  • 正确计算简单收益率、对数收益率、总收益率和现值;
  • 用协方差矩阵构造全局最小方差与切点组合;
  • 估计 CAPM 和多因子回归,解释 alpha、beta、标准误和 R2R^2
  • 用 Euler 方程矩条件理解 SDF 参数估计;
  • 用风险中性二叉树计算欧式期权价格;
  • 计算债券价格、Macaulay 久期、修正久期和凸性;
  • 区分教学模拟、统计证据和真实可交易结论。
Python 单元由项目已有的 Pyodide 运行时执行,R 单元由 webR 执行。首次运行需要加载浏览器运行时。示例优先使用 NumPy、SciPy、Statsmodels、Matplotlib 和 base R,避免依赖无法在 WebAssembly 中运行的本地库。

实验一:收益率、现金流与现值

收益率定义

若期初价格为 Pt1P_{t-1}、期末价格为 PtP_t、期间分红为 DtD_t,总简单收益率为:

Rt=Pt+DtPt1Pt1.R_t=\frac{P_t+D_t-P_{t-1}}{P_{t-1}}.

财富增长因子是 1+Rt1+R_t,多期累计收益必须连乘:

1+R1:T=t=1T(1+Rt).1+R_{1:T}=\prod_{t=1}^T(1+R_t).

对数收益率 rt=log(1+Rt)r_t=\log(1+R_t) 可以跨期相加,但横截面组合仍应使用简单收益率。

现值

确定现金流 CFtCF_t 在固定贴现率 rr 下的价格为:

P0=t=1TCFt(1+r)t.P_0=\sum_{t=1}^T\frac{CF_t}{(1+r)^t}.
Py

Python:总收益率与贴现现金流

Idle
R

R:总收益率与贴现现金流

Idle

审计任务

  • 把贴现率从 8% 改为 10%,解释价格为何下降。
  • 删除分红后重新计算累计收益,量化价格收益与总收益的差异。
  • 检查简单收益率平均值与对数收益率平均值为何不完全相同。

实验二:均值—方差组合

全局最小方差组合

给定协方差矩阵 Σ\Sigma,权重和为 1 的全局最小方差组合为:

wGMV=Σ111Σ11.w_{GMV} =\frac{\Sigma^{-1}\mathbf 1} {\mathbf 1'\Sigma^{-1}\mathbf 1}.

若允许卖空,切点组合满足:

wT=Σ1(μrf1)1Σ1(μrf1).w_T =\frac{\Sigma^{-1}(\mu-r_f\mathbf 1)} {\mathbf 1'\Sigma^{-1}(\mu-r_f\mathbf 1)}.

这些闭式解依赖期望收益和协方差已知。现实中它们是估计量,输入误差尤其会放大切点权重。

Py

Python:最小方差与切点组合

Idle
R

R:最小方差与切点组合

Idle

修改任务

  • 把第一与第三个资产的相关系数从 0.15 改为 0.80,观察分散化收益。
  • 将预期收益都增加 2 个百分点,解释 GMV 权重为何不变而切点权重可能改变。
  • 现实组合加入“不允许卖空”和单资产权重上限后,闭式解不再直接适用,需要约束优化。

实验三:CAPM 时间序列回归

CAPM 常用时间序列回归检验:

Ri,te=αi+βiRM,te+εi,t.R_{i,t}^e =\alpha_i+\beta_i R_{M,t}^e+\varepsilon_{i,t}.

βi\beta_i 衡量资产对市场超额收益的暴露;αi\alpha_i 是相对于该模型的平均定价误差。显著 alpha 可能来自错误定价,也可能来自遗漏风险、样本选择或标准误不当。

Py

Python:CAPM 回归

Idle
R

R:CAPM 回归

Idle

Python 示例报告 HAC 标准误,R 示例报告普通标准误,以提醒读者:系数相同不代表推断相同。真实月度收益可能有自相关和条件异方差,应根据数据结构选择 HAC、Bootstrap 或其他推断。

实验四:多因子回归与遗漏风险

设测试资产由市场、规模、价值与动量因子驱动:

Rte=α+βMMKTt+βSSMBt+βHHMLt+βUMOMt+εt.R_t^e =\alpha+\beta_M MKT_t+\beta_S SMB_t +\beta_H HML_t+\beta_U MOM_t+\varepsilon_t.

若只估计 CAPM,遗漏且与市场相关的因子可能进入 alpha 或市场 beta。

Py

Python:CAPM 与四因子模型比较

Idle
R

R:CAPM 与四因子模型比较

Idle

模型比较边界

增加因子几乎总能提高样本内 R2R^2。更好的模型还应有经济机制、样本外表现、稳定风险价格和较小定价误差,并控制多重检验。因子数量多于可靠独立信息时,回归会过拟合。

实验五:随机贴现因子与 Euler 方程

资产定价的统一条件是:

E[mt+1Rt+1]=1.E[m_{t+1}R_{t+1}]=1.

CRRA 消费模型常设:

mt+1=β(Ct+1Ct)γ,m_{t+1}=\beta \left(\frac{C_{t+1}}{C_t}\right)^{-\gamma},

其中 γ\gamma 是相对风险厌恶系数。下面用网格搜索寻找使样本 Euler 误差最接近 0 的 γ\gamma

Py

Python:SDF 矩条件网格搜索

Idle
R

R:SDF 矩条件网格搜索

Idle

研究生审计

这个模拟让收益按真 SDF 构造,因此模型设定正确。真实消费数据有测量误差、时间聚合和有限波动,单一矩条件也可能弱识别 γ\gamma。正式 GMM 还要选择测试资产、工具变量和权重矩阵,并估计参数不确定性与过度识别检验。

实验六:风险中性二叉树期权定价

在 Cox–Ross–Rubinstein 二叉树中:

u=eσΔt,d=u1,q=erΔtdud.u=e^{\sigma\sqrt{\Delta t}}, \qquad d=u^{-1}, \qquad q=\frac{e^{r\Delta t}-d}{u-d}.

欧式看涨期权终值为 max(STK,0)\max(S_T-K,0),然后按风险中性概率逐层贴现。

Py

Python:二叉树与 Black–Scholes 对照

Idle
R

R:二叉树与 Black–Scholes 对照

Idle

修改任务

  • 把波动率从 20% 提高到 40%,解释看涨期权价值为何上升。
  • 修改执行价,比较实值、平值和虚值期权。
  • 检查 0<q<10<q<1;若不满足,树参数与无套利条件不兼容。
  • 欧式二叉树随步数增加趋近 Black–Scholes,并不表示市场真实满足连续对冲和常波动率假设。

实验七:债券久期与凸性

固定票息债券价格为:

P(y)=t=1TCFt(1+y)t.P(y)=\sum_{t=1}^T\frac{CF_t}{(1+y)^t}.

Macaulay 久期是现金流时间的现值加权平均:

DM=ttPV(CFt)P.D_M=\frac{\sum_t t\,PV(CF_t)}{P}.

修正久期 Dmod=DM/(1+y)D_{mod}=D_M/(1+y) 给出一阶价格敏感性,凸性提供二阶修正:

ΔPPDmodΔy+12Convexity(Δy)2.\frac{\Delta P}{P} \approx -D_{mod}\Delta y +\frac12 Convexity(\Delta y)^2.
Py

Python:债券价格、久期与凸性

Idle
R

R:债券价格、久期与凸性

Idle

解释边界

久期和凸性假设收益率曲线平行移动,并把信用、流动性、期权性与基差风险压缩为单一收益率变化。含赎回权、抵押贷款支持证券或信用风险的债券需要情景、有效久期或结构模型。

综合项目

选择一条主线完成项目:

本科项目

  1. 复现至少三个实验;
  2. 每个实验修改两个参数并解释方向;
  3. 用 Python 与 R 对照结果;
  4. 写清楚现金流、收益率、频率和单位;
  5. 区分模型结论与真实投资建议。

研究生项目

  1. 选择 CAPM、因子、SDF、期权或固定收益模型;
  2. 写出定价限制、estimand 和估计方程;
  3. 做 Monte Carlo 或真实数据复现;
  4. 报告稳健/HAC/Bootstrap 推断和样本外结果;
  5. 讨论弱识别、多重检验、交易成本与模型不确定性;
  6. 提交数据字典、环境说明、代码、日志和研究报告。

进一步阅读

  • Cochrane, Asset Pricing:SDF、Euler 方程与 GMM 的统一框架;
  • Campbell, Lo and MacKinlay, The Econometrics of Financial Markets
  • Bodie, Kane and Marcus, Investments:本科组合与 CAPM 主线;
  • Hull, Options, Futures, and Other Derivatives
  • Campbell, Financial Decisions and Markets
  • Gibbons, Ross and Shanken (1989):多资产 alpha 的联合检验;
  • Harvey, Liu and Zhu (2016):因子发现与多重检验。

返回资产定价首页 · 进入实证与数值方法

Copyright © 2026