bust_probability / goal_probability
前者是模拟路径中跌破 bust 阈值的比例,后者是达到 goal 阈值的比例。它们反映的是「在历史收益分布假设下」的风险暴露,不是对未来的确定性预言;分布一旦变化,结果可能明显偏移。
依据官方 README Monte Carlo Simulations 段落;参数默认值以官方实现为准。
| 参数 / 属性 | 含义 | 如何取值 | 注意点 |
|---|---|---|---|
| returns | 收益序列(输入) | qs.utils.download_returns('META') 或自备 pandas Series | 需日/周/月收益序列,非原始价格 |
| sims | 模拟路径次数 | 官方示例 1000;次数越大越稳定 | 次数越大耗时越长,需权衡精度与时间 |
| bust | 破产阈值(亏损比例) | 官方示例 -0.20;按可承受亏损设负数 | 阈值越接近 0 越容易触发「破产」 |
| goal | 目标阈值(盈利比例) | 官方示例 0.50;按目标收益设正数 | 阈值越高越难达到,概率越低 |
| mc.bust_probability | 破产概率(输出) | 直接读属性,返回 0~1 或百分比 | 模拟路径中跌破 bust 阈值的比例 |
| mc.goal_probability / mc.plot() | 目标概率 / 分布绘图 | 读属性 + 调 mc.plot() 可视化 | plot() 生成模拟分布图,辅助直观判断 |
1. 导入库:import quantstats as qs —— 引入 stats/plots/reports 三模块。
2. 取收益序列:stock = qs.utils.download_returns('META') —— 得到 Meta 的日收益序列,也可换自备 Series。
3. 运行模拟:mc = qs.stats.montecarlo(stock, sims=1000, bust=-0.20, goal=0.50) —— 生成 1000 条模拟路径,破产阈值 -20%、目标阈值 +50%。
4. 查看结果:mc.bust_probability、mc.goal_probability 返回两个百分比;mc.plot() 绘制模拟分布。
除主方法外,stats 与 plots 还提供按指标拆分的蒙特卡洛方法。
| 方法 | 用途 | 适用场景 |
|---|---|---|
| montecarlo(主方法) | 模拟破产/目标概率 | 整体风险画像,看「爆仓 vs 达标」概率 |
| montecarlo_cagr | 模拟 CAGR(年化复合增长率)分布 | 看长期收益的不确定区间 |
| montecarlo_drawdown | 模拟最大回撤分布 | 看未来可能遭遇多深的回撤 |
| montecarlo_sharpe | 模拟夏普比率分布 | 看风险调整收益的稳定性 |
| montecarlo_distribution(plots) | 绘制模拟分布图 | 直观展示模拟结果分布形态 |
前者是模拟路径中跌破 bust 阈值的比例,后者是达到 goal 阈值的比例。它们反映的是「在历史收益分布假设下」的风险暴露,不是对未来的确定性预言;分布一旦变化,结果可能明显偏移。
sims 越大,模拟结果越稳定(方差越小),但耗时线性上升。官方示例取 1000;对长收益序列或需要更精细尾部概率时,可适当提高,但要接受更长计算时间。
两类指标回答不同的问题:确定性指标描述「历史发生了什么」,蒙特卡洛描述「在假设分布下未来可能发生什么」。
| 维度 | 确定性指标(历史最大回撤等) | 蒙特卡洛模拟 |
|---|---|---|
| 回答的问题 | 历史最大回撤是多少 | 未来回撤超过某阈值的概率多大 |
| 输出形态 | 单一数值(点估计) | 概率分布 / 百分比 |
| 依赖假设 | 仅历史数据 | 历史收益分布 + 随机模拟 |
| 适用场景 | 复盘历史、对比策略 | 前瞻风险画像、仓位压力测试 |
按收益序列的历史分布随机生成大量路径,估算达到破产/目标阈值的概率,做概率化风险分析。具体算法与默认参数以官方 README/实现为准。
官方示例用 sims=1000;次数越多越稳定但越慢,需权衡精度与耗时,以官方文档为准。
按你的风险偏好设 bust(亏损比例,负数)与 goal(盈利比例,正数),官方示例用 -0.20 / 0.50;阈值设定会直接影响概率结果。
不能。它基于历史收益分布模拟,隐含「未来分布与历史相似」的假设,不构成收益保证或投资建议。
QuantStats 与 EasyClaw 无已证实集成。EasyClaw 的 quant-analyst(量化分析师)技能也涉及风险分析/回测,但实现与输出形式不同;两者是独立路线,选择前以各自官方说明为准。