金融基础 — Finance Foundations
模块定位: 金融市场运作机制与资产定价理论,为量化机器学习提供必备的领域知识
学习目标
完成本模块后,你将能够:
| 知识领域 | 掌握程度 | 应用场景 |
|---|---|---|
| 资产定价理论 | 理解 CAPM、Fama-French、Barra 模型的数学推导和经济学含义 | 设计基于风险因子的特征、理解模型预测的是 Alpha 还是 Beta |
| 市场微观结构 | 理解订单簿、价格冲击、流动性机制 | 优化交易执行算法、构建高频特征、控制交易成本 |
| 衍生品定价 | 理解 Black-Scholes、Greeks、波动率曲面 | 利用期权数据构造波动率因子、理解对冲成本 |
| 因子投资 | 理解动量、反转、价值等风格因子的逻辑 | 构建因子轮动策略、识别因子拥挤和衰减 |
为什么量化 ML 需要金融基础?
领域知识决定特征设计
机器学习模型的能力上限,很大程度上取决于输入特征的质量。在量化投资中:
┌─────────────────┐
│ 真实市场规律 │
└────────┬────────┘
│
▼
┌─────────────────────────┐
│ 金融理论 = 领域先验 │
│ (告诉我们找什么特征) │
└────────┬────────────────┘
│
▼
┌─────────────────────────┐
│ 特征工程 (Feature) │
│ - 动量因子 │
│ - 波动率因子 │
│ - 流动性因子 │
└────────┬────────────────┘
│
▼
┌─────────────────────────┐
│ ML 模型 (随机森林/NN) │
│ (学习特征→收益的映射) │
└────────┬────────────────┘
│
▼
┌─────────────────┐
│ 预测结果 │
└─────────────────┘
没有金融理论的 ML:你可能发现”开盘价与昨天收盘价的比值”能预测收益,但不知道这是隔夜风险溢价还是均值回归,导致策略在市场制度变化时失效。
有金融理论的 ML:你知道动量效应源自信息扩散缓慢或行为偏差,会主动设计:
- 动量强度特征
- 动量持续时间特征
- 分析师覆盖度作为调节变量
- 在高波动/低流动性环境中降低动量权重
金融理论指导模型选择
| 金融理论 | 启示 | ML 模型选择 |
|---|---|---|
| 有效市场假说弱成立 | 价格包含历史信息,但非完全 | 时间序列模型(LSTM/Transformer) |
| 因子模型 | 收益可分解为系统性风险+特异性 | 因子分解、注意力机制 |
| 行为金融 | 投资者非理性产生可预测偏差 | 情绪分析、文本挖掘 |
| 流动性理论 | 交易成本显著影响策略收益 | 强化学习(优化执行) |
文件导航
第 1 部分:资产定价与因子模型
文件: 01-资产定价与因子模型.md
你将学习:
- 为什么市场”有效”但量化策略仍有机会
- CAPM 如何定义风险与收益的关系
- Fama-French 多因子模型的演进逻辑
- Barra 风险模型在业界的应用
- 如何用 Python 从零构建因子投资组合
- 核心问题: ML 模型预测的收益中,有多少是 Alpha(超额收益),有多少是 Beta(市场风险暴露)?
第 2 部分:市场微观结构
文件: 02-市场微观结构.md
你将学习:
- 订单簿如何决定成交价格
- 买卖价差的三个来源(信息不对称、库存风险、订单处理成本)
- 如何用代码计算价格冲击和流动性指标
- VWAP/TWAP 执行算法的实现
- 高频数据的特性与处理方法
- 核心问题: 你的策略信号很好,但实际交易时会不会被买卖价差和价格冲击吃掉利润?
第 3 部分:衍生品与波动率
文件: 03-衍生品与波动率.md
你将学习:
- Black-Scholes 定价公式的推导与假设
- Greeks 如何衡量期权风险暴露
- 为什么波动率会”微笑”
- 如何用期权数据构造波动率因子
- 核心问题: 波动率不仅是风险度量,也是可交易资产类别,如何利用期权数据增强股票预测?
学习路径建议
初学者路径(无金融背景)
1. 阅读 index.md(本文件)→ 建立整体认知
2. 学习 01-资产定价 → 理解什么是"风险溢价"
3. 学习 02-市场微观结构 → 理解真实交易机制
4. 跳过 03-衍生品 → 先掌握股票策略基础
有金融背景者
1. 快速浏览 01 的后半部分(因子投资实践)
2. 重点学习 02 的 Python 实现(订单簿、流动性指标)
3. 学习 03 的波动率曲面与因子构建
量化 ML 从业者
重点阅读:
- 01 中的"你用 ML 预测的到底是什么"
- 02 中的"Order Flow Imbalance""实现波动率"
- 03 中的"隐含波动率""波动率作为因子"
预备知识
数学要求
- 微积分:理解偏导数(用于 Greeks)
- 线性代数:理解矩阵运算(用于因子回归)
- 概率统计:理解期望、方差、回归分析
编程要求
- Python 基础语法
- pandas 数据处理
- numpy 数值计算
- matplotlib 基础绘图
不需要: qlib、回测框架、金融 API 数据
本模块所有示例使用模拟数据,确保代码可独立运行。
模块结构图
金融基础 (Finance Foundations)
│
├── 01-资产定价与因子模型
│ ├── 有效市场假说
│ ├── CAPM 模型
│ ├── Fama-French 多因子模型
│ ├── APT 套利定价理论
│ ├── Barra 风险模型
│ └── 因子投资实践
│
├── 02-市场微观结构
│ ├── 订单簿结构
│ ├── 买卖价差理论
│ ├── 价格冲击模型
│ ├── 执行算法 (VWAP/TWAP)
│ └── 高频数据特征
│
└── 03-衍生品与波动率
├── Black-Scholes 模型
├── Greeks 风险指标
├── 隐含波动率与微笑
└── 波动率作为因子
估计学习时间
| 文件 | 阅读时间 | 代码实践 | 总计 |
|---|---|---|---|
| 01-资产定价与因子模型 | 2.5h | 1.5h | 4h |
| 02-市场微观结构 | 2h | 1h | 3h |
| 03-衍生品与波动率 | 1h | 0.5h | 1.5h |
| 总计 | 5.5h | 3h | 8.5h |
与其他模块的关系
┌─────────────────┐
│ 金融基础 │ ◄── 你在这里
│ (本模块) │
└────────┬─────────┘
│
┌────────────┼────────────┐
│ │ │
▼ ▼ ▼
┌───────────┐ ┌───────────┐ ┌───────────┐
│ 特征工程 │ │ 模型训练 │ │ 回测评估 │
│ (因子构造)│ │ (预测收益) │ │ (风险调整)│
└───────────┘ └───────────┘ └───────────┘
│ │ │
└────────────┼────────────┘
│
▼
┌─────────────────┐
│ 完整策略 │
└─────────────────┘
本模块是后续模块的基础:
- 特征工程模块会用到因子模型的思路
- 模型训练需要理解风险调整收益
- 回测评估需要知道如何计算 Alpha/Beta
核心概念速查表
| 符号 | 含义 | 公式 |
|---|---|---|
| 资产 i 的收益率 | ||
| 无风险收益率 | 国债收益率 | |
| 市场收益率 | 指数收益率 | |
| 系统性风险敏感度 | ||
| 超额收益 | ||
| 波动率 | 收益率标准差 | |
| IR | 信息比率 | |
| Sharpe | 夏普比率 |
常见问题
Q1: 我没有金融背景,能学量化 ML 吗?
A: 可以。本模块假设零金融背景,从最基本的”什么是股票""什么是收益”开始讲解。重点理解风险与收益的关系,这是量化 ML 的核心。
Q2: 为什么不直接用 qlib,要从零写代码?
A: 框架封装了细节,但不利于理解原理。从零写一遍因子回归、流动性指标,你会知道:
- 计算过程中的数值陷阱
- 不同实现方式的性能差异
- 如何根据需求修改算法
Q3: 这些理论在美国市场成熟, A 股适用吗?
A: 核心机制(风险溢价、流动性成本)是普适的,但 A 股有特殊性:
- 散户比例高 → 行为金融现象更明显
- T+1 制度 → 日内策略受限
- 涨跌停板 → 价格发现机制不同
本模块会指出理论假设与 A 股现实的差异。
参考书目(延伸阅读)
| 书名 | 作者 | 难度 | 相关章节 |
|---|---|---|---|
| 《量化投资:策略与技术》 | 丁鹏 | 入门 | 全部 |
| 《Active Portfolio Management》 | Grinold, Kahn | 进阶 | 因子模型 |
| 《Market Microstructure Theory》 | O’Hara | 进阶 | 微观结构 |
| 《Options, Futures, and Other Derivatives》 | Hull | 进阶 | 衍生品 |
开始学习: 请继续阅读 01-资产定价与因子模型.md