📑 查看全课大纲(第 28 / 59 节)
- 1.量化投资必备基础知识
- 2.趋势型策略及模型原理
- 3.均值回复型策略及模型原理
- 4.配对交易策略及模型原理
- 5.量化策略研发流程与基本技能
- 6.常用的量化平台概述及如何选择
- 7.如何量化一个主观策略思路
- 8.常用技术指标及指标计算过程
- 9.如何编写指标代码
- 10.指标的物理意义
- 11.技术指标的应用技巧
- 12.更多的交易决策
- 13.编写程序去量化一个趋势型技术指标
- 14.编写趋势型技术指标的性能评价
- 15.策略对交易成本和持仓周期的影响
- 16.股票池策略的原理及基本框架
- 17.基于多因子分析的股票池设计与实现
- 18.股票池的性能评估
- 19.使用定制化财务因子构建股票池
- 20.趋势型策略原理及股票池机制的设计
- 21.趋势型择时信号的设计方法与编程实现
- 22.趋势型策略的回测与性能评估
- 23.优化趋势型策略的思路及方法
- 24.量化体系中的风险控制思想
- 25.风险的度量-波动率
- 26.常用的风险控制方法
- 27.实现止盈止损模块以提高策略性能
- 28.策略性能的评估与优化
- 29.探讨波动率与风险的关系
- 30.量化策略中的经典资金管理模型
- 31.用python编程实现资金管理模块
- 32.构建一个完善的量化交易策略
- 33.趋势型量化策略必备的期货知识
- 34.期货量化工具介绍
- 35.商品期货趋势型策略原理
- 36.用TB编写商品期货趋势型策略(上)
- 37.用TB编写商品期货趋势型策略(下)
- 38.分析优化商品期货趋势型策略的方法思路
- 39.期货交易策略的注意事项
- 40.均值回复型策略的原理
- 41.A股市场有没有稳定的均值回复效应?
- 42.编写一个均值回复型股票量化策略
- 43.编写多空组合策略进行策略改进
- 44.在策略中实现头寸管理进行策略优化
- 45.套利策略原理及常见套利类型
- 46.用MC开发一个跨品种套利交易策略(上)
- 47.用MC开发一个跨品种套利交易策略(下)
- 48.统计套利之股票配对交易策略
- 49.实盘中的细节问题:加减仓
- 50.关于高频交易
- 51.如何评价实盘量化策略的性能
- 52.量化系统的工作过程及研发流程
- 53.运气or实力
- 54.量化实盘交易需要满足什么条件
- 55.未来函数的坑
- 56.实盘数据接口异常的自动报警
- 57.交易系统的压力测试
- 58.自动运行的交易策略,什么时候需要人工干预
- 59.预案准备和实盘心理建设
策略性能的评估与优化
约 25 分钟
📺 正在播放小象官方高清录播(支持倍速与清晰度调节)
策略性能的评估与优化
小象实战讲义 · 进阶量化交易实战:迭代式的量化策略研发 本讲义仅用于编程与量化方法教学,不构成任何投资建议。
策略回测中漂亮的收益曲线往往隐藏着过拟合与幸存者偏差。本节深入剖析量化策略性能的多维评估矩阵(夏普、索提诺、卡玛、收益波动比)与稳健优化方法,重点解析极端市场压力测试与风险归因分析。
💡 核心导读
- 量化策略进阶性能评价四大维度:
- 索提诺比率(Sortino Ratio):仅惩罚下行波动率(Downside Deviation),比夏普比率更客观评价非对称收益;
- 收益回撤比与卡玛比率(Calmar Ratio):年化复合收益与最大历史回撤的比值;
- 胜率与盈亏比平衡图(Win-Rate vs Profit-Factor):评估交易系统在不同市场周期中的稳健性;
- 压力测试与情景分析(Stress Testing):模拟 2015 股灾流动性跌停、2020 疫情剧震等极端环境下的资产韧性。
┌─────────────────────────────────────────────────────────────┐
│ 量化策略全景性能评估与优化矩阵 │
└──────────────────────────────┬──────────────────────────────┘
│
┌─────────────────────────────┼─────────────────────────────┐
▼ ▼ ▼
┌─────────────────────────┐ ┌─────────────────────────┐ ┌─────────────────────────┐
│ 风险调整收益 (Sharpe) │ │ 下行风险保护 (Sortino) │ │ 压力测试与极端韧性 │
├─────────────────────────┤ ├─────────────────────────┤ ├─────────────────────────┤
│ • Sharpe = (R - Rf)/Vol │ │ • Sortino = (R - Rf)/DD │ │ • 历史极端暴跌情景复现 │
│ • 全面衡量单位风险收益 │ │ • 仅惩罚负收益下行风险 │ │ • 检验保证金与流动性危机│
└─────────────────────────┘ └─────────────────────────┘ └─────────────────────────┘一、索提诺比率(Sortino Ratio)与下行标准差数学建模
夏普比率将向上的超额收益也作为波动率进行同等惩罚,这在趋势策略中并不合理。索提诺比率引入目标收益率(MAR),仅计算下行半方差:
import pandas as pd
import numpy as np
def calculate_sortino_ratio(returns: pd.Series, mar: float = 0.0) -> float:
"""
计算年化索提诺比率 Sortino Ratio
"""
excess_ret = returns - mar / 252.0
# 下行半方差分母统一为全部 T 期(与公式一致,正收益期按 0 计入)
downside = np.minimum(excess_ret, 0.0)
downside_std = np.sqrt((downside ** 2).mean()) * np.sqrt(252.0)
annual_return = excess_ret.mean() * 252.0
sortino = annual_return / (downside_std + 1e-8)
return float(sortino)二、极端情景压力测试(Stress Testing)仿真
压力测试人为构造历史上最恶劣的市场冲击(如连续 3 天单日下跌 、全市场流动性枯竭佣金跳升 5 倍)。检验策略在极端逆境下的资金保留率(Capital Preservation):
def run_stress_test_scenario(equity: pd.Series, crash_drops: list = [-0.05, -0.06, -0.04]) -> float:
"""
极端股灾压力测试模拟
"""
current_val = equity.iloc[-1]
for drop in crash_drops:
current_val *= (1.0 + drop)
max_stress_loss = (equity.iloc[-1] - current_val) / equity.iloc[-1]
return float(max_stress_loss)📝 动手练一练
编写 Python 脚本计算策略收益率的索提诺比率并执行极端黑天鹅情景压力测试:
import pandas as pd
import numpy as np
def run_performance_and_stress_test():
np.random.seed(42)
# 模拟 250 天具有正偏度的策略收益率
rets = np.random.normal(0.0008, 0.012, 250)
rets_series = pd.Series(rets)
equity = (1.0 + rets_series).cumprod()
sortino = calculate_sortino_ratio(rets_series)
stress_loss = run_stress_test_scenario(equity, crash_drops=[-0.05, -0.07, -0.04])
print("================ 策略多维评估与压力测试 ================")
print(f"年化索提诺比率 Sortino : {sortino:.2f}")
print(f"极端连续暴跌情景损失率 : {stress_loss*100:.2f}%")
assert sortino > 0, "索提诺比率计算异常!"
print("✅ 策略综合评估与压力测试 PASS")
print("======================================================")
if __name__ == '__main__':
run_performance_and_stress_test()运行结果输出:
================ 策略多维评估与压力测试 ================
年化索提诺比率 Sortino : 1.63
极端连续暴跌情景损失率 : 15.18%
✅ 策略综合评估与压力测试 PASS
======================================================本章小结
- 索提诺更契合非对称收益:利用下行半差精准评估策略承担下行风险的真实补偿效率。
- 坚持做极限压力测试:在策略上线前必须主动模拟历史暴跌与流动性丧失等极端情景。
- 综合多指标权衡优化:不单看年化收益率,将夏普、卡玛、索提诺与最大回撤组成综合打分卡。
📋 行动清单 (Action Checklist)
- 运行性能评估与压力测试代码,测算在 2015 股灾同等波动率冲击下的净值表现;
- 编写滚动 60 日动态索提诺比率时序监控曲线;
- 预习下一节,深入探讨波动率与真实风险之间的深层数理关系。
— 小象教研组
配套学习资源与课件
- 第5章课件:量化体系中的风险控制(PDF · 1.2MB)下载
🎁 免费学习资源
领取《小象 11GB VIP 课件资料包与大厂真题手册》
包含全套实战 Jupyter 源码、清洗后数据集、大厂高频面试真题与专属学员答疑交流群。
- ✔完整 Python / 数据分析 Jupyter 实战源码
- ✔大厂真实业务数据集与练习题
- ✔微信扫码添加课程顾问,免费获取网盘下载链接
微信扫码添加顾问