Sharpe Ratio - 算法概要

Sharpe Ratio - 快速参考卡片

🎯 核心公式

每笔交易 Sharpe Ratio:
SR_trade = (μ - rf_trade) / σ

年化 Sharpe Ratio:
SR_annual = SR_trade × √N

其中:
- μ:平均每笔收益率
- rf_trade:每笔交易无风险利率
- σ:收益率标准差
- N:年交易频率

📊 参数说明

参数 含义 计算方法 示例
μ 平均收益率 Σ(rᵢ) / n 15.82%
σ 收益率标准差 √[Σ(rᵢ-μ)²/(n-1)] 8.89%
rf_trade 每笔无风险利率 (1+rf)^(t/365)-1 0.0315%
N 年交易频率 (n/days)×365 93.25笔/年
SR_trade 每笔 Sharpe (μ-rf)/σ 1.776
SR_annual 年化 Sharpe SR×√N 17.15

关键参数

  • rf = 年化无风险利率(默认 3%)
  • t = 平均持仓天数
  • n = 交易笔数
  • days = 交易时间跨度(天)

✅ 核心特点

特点 说明 优势
🎯 风险调整收益 每单位风险获得的超额收益 综合评估策略质量
📈 不依赖本金 基于持仓价值计算 杠杆中性,可跨策略对比
🔄 标准化指标 年化处理统一时间尺度 不同频率策略可比较
实时评估 每笔交易独立计算 动态监控策略表现
🌍 行业标准 金融界通用指标 便于对标和沟通

📈 评级标准

年化 Sharpe Ratio

数值 评级 说明 投资建议
> 3.0 🏆 极优秀 机构级策略表现 强烈推荐,长期持有
2.0 - 3.0 🟢 优秀 稳定超额收益 值得长期配置
1.0 - 2.0 🟡 良好 正期望值策略 可接受,需监控
0.5 - 1.0 ⚠️ 尚可 风险收益勉强平衡 需要改进优化
0 - 0.5 🔴 偏低 风险高于收益 不推荐,需重构
< 0 ❌ 负期望 长期亏损预期 立即停止交易

不同市场基准

传统金融

  • S&P 500:0.4 - 0.7
  • 对冲基金:0.5 - 1.5
  • 顶级基金:1.5 - 3.0
  • 传奇基金:> 5.0

加密货币

  • BTC 持有:1.0 - 1.5
  • 量化策略:2.0 - 5.0
  • 高频套利:3.0 - 7.0

🔍 快速示例

例1:基础计算

交易数据:
- 交易 1:收益率 3.0%
- 交易 2:收益率 2.5%
- 交易 3:收益率 4.0%
- 交易 4:收益率 1.5%
- 交易 5:收益率 3.5%

平均持仓:2天
无风险利率:3%(年化)

计算:
1. μ = (3.0+2.5+4.0+1.5+3.5)/5 = 2.9%
2. σ = √[Σ(rᵢ-2.9)²/4] = 0.935%
3. rf_trade = (1.03)^(2/365)-1 = 0.0164%
4. SR_trade = (2.9-0.0164)/0.935 = 3.08
5. 年频率 = (5/10)×365 = 182.5笔
6. SR_annual = 3.08×√182.5 = 41.6 🏆

例2:策略对比

策略 A(激进):
- 收益率:30%,标准差:25%
- Sharpe = (30%-3%)/25% = 1.08 🟡

策略 B(稳健):
- 收益率:15%,标准差:5%
- Sharpe = (15%-3%)/5% = 2.40 🟢

结论:策略 B 风险调整后表现更优

例3:年化计算

基础数据:
- 每笔 Sharpe:1.5
- 交易笔数:50 笔
- 交易天数:180 天

年化:
1. N = (50/180)×365 = 101.4 笔/年
2. SR_annual = 1.5×√101.4 = 1.5×10.07 = 15.1 🏆

⚡ 常见误区

❌ 误区 1:高收益 = 高 Sharpe

错误:收益率30%一定比10%好
正确:需要同时考虑风险

示例:
- 策略 A:30% 收益,35% 风险 → Sharpe = 0.77
- 策略 B:10% 收益,4% 风险 → Sharpe = 1.75
结论:策略 B 更优!

❌ 误区 2:杠杆影响 Sharpe

错误:10倍杠杆会提高 Sharpe
正确:基于持仓价值计算,Sharpe 与杠杆无关

原因:
- 杠杆同时放大收益和风险
- Sharpe 作为风险调整指标自动抵消杠杆效应
- 可公平对比不同杠杆策略

❌ 误区 3:只看 Sharpe 不看收益

错误:只要 Sharpe 高就选择
正确:综合考虑绝对收益和策略容量

示例:
- 策略 Alpha:5%收益,Sharpe=5.0,容量小
- 策略 Beta:50%收益,Sharpe=1.2,容量大

选择:
- 小资金 → Alpha(高Sharpe稳定)
- 大资金 → Beta(高收益可扩展)

🔧 优化方向

提高收益(分子)

方法 说明 预期提升
✅ 优化入场时机 提高信号准确率 +20-40%
✅ 改进止盈策略 捕获更多盈利 +10-30%
✅ 增加交易频率 年化效应放大 √N 倍

降低风险(分母)

方法 说明 预期降低
✅ 严格止损纪律 控制单笔亏损 -20-40%
✅ 仓位管理优化 动态调整仓位 -30-50%
✅ 策略分散化 降低相关性 -15-30%

📐 计算检查清单

✅ 数据验证

  • [ ] 交易笔数 ≥ 30(样本量充足)
  • [ ] 时间跨度 ≥ 30天(代表性)
  • [ ] 无异常值(检查极端收益率)
  • [ ] 时间戳准确(用于计算频率)

✅ 计算步骤

  • [ ] Step 1:提取单笔收益率 rᵢ = pnl / (|sz|×px)
  • [ ] Step 2:计算均值 μ = Σrᵢ/n
  • [ ] Step 3:计算标准差 σ = √[Σ(rᵢ-μ)²/(n-1)]
  • [ ] Step 4:计算无风险利率 rf_trade = (1+rf)^(t/365)-1
  • [ ] Step 5:计算每笔 Sharpe SR = (μ-rf)/σ
  • [ ] Step 6:计算年频率 N = (n/days)×365
  • [ ] Step 7:年化 Sharpe SR_annual = SR×√N

✅ 结果验证

  • [ ] Sharpe 在合理范围(-2 到 5之间)
  • [ ] 年化 Sharpe 符合市场基准
  • [ ] 与其他指标一致(收益率、回撤)
  • [ ] 时间窗口 Sharpe 稳定性检查

🔗 与其他指标关系

Sharpe Ratio
    ├─→ 平均收益率(分子成分)
    ├─→ 收益率标准差(分母成分)
    ├─→ 累计收益率(绝对收益)
    ├─→ Max Drawdown(风险互补)
    └─→ 盈亏因子(综合评估)

综合评估框架:
- Sharpe Ratio:风险调整收益
- 累计收益率:绝对表现
- Max Drawdown:极端风险
- 胜率:稳定性
- 盈亏因子:盈利能力

💡 实战建议

策略评估

优秀策略标准:
✅ 年化 Sharpe > 2.0
✅ Max Drawdown < 30%
✅ 胜率 > 55%
✅ 盈亏因子 > 1.5
✅ 交易笔数 > 100

监控告警

Sharpe 下降预警:
🔴 近30天 Sharpe < 历史平均×50%
🟡 近90天 Sharpe < 历史平均×70%
🟢 持续监控,定期评估

策略优化

优化优先级:
1️⃣ 降低下行风险(严格止损)
2️⃣ 提高入场质量(过滤信号)
3️⃣ 优化仓位管理(凯利公式)
4️⃣ 增加交易频率(年化效应)
5️⃣ 策略组合配置(分散风险)

📱 代码位置

主要函数

  • 文件:apex_fork.py
  • 函数:calculate_sharpe_ratio_on_trades()
  • 行号:715-800

调用位置

  • 文件:apex_fork.py
  • 函数:analyze_user()
  • 行号:约 642

显示逻辑

  • 文件:main.py
  • 函数:display_core_metrics()
  • 行号:151-271

📚 详细文档

  • 完整算法夏普比率算法详解.md
  • 可视化示例夏普比率_可视化示例.md
  • 快速参考夏普比率_快速参考.md(本文档)

🎓 进阶学习

Sharpe Ratio 的演变

传统 Sharpe (1966):
SR = (R_p - R_f) / σ_p

改进 1:基于交易收益率(本项目)
SR_trade = (μ - rf_trade) / σ

改进 2:Sortino Ratio(下行风险)
SoR = (μ - rf) / σ_downside

改进 3:Calmar Ratio(回撤调整)
CR = 年化收益 / Max Drawdown

改进 4:Omega Ratio(全收益分布)
OR = Gain Area / Loss Area

学术资源

  • 原始论文:Sharpe (1966) "Mutual Fund Performance"
  • 标准定义:Sharpe (1994) "The Sharpe Ratio"
  • 统计分析:Lo (2002) "The Statistics of Sharpe Ratios"

🚀 快速上手

1分钟理解 Sharpe

问题:如何衡量策略好坏?
答案:看风险调整后的收益

Sharpe Ratio = 超额收益 / 风险
            = (收益率 - 无风险利率) / 标准差

含义:每承担1%风险,获得多少%超额收益

评判:
- > 2.0:优秀策略 ✅
- 1.0-2.0:良好策略 🟡
- < 1.0:需要改进 ⚠️

5分钟计算 Sharpe

1. 准备数据:
   - 每笔交易收益率
   - 交易时间
   - 无风险利率(默认3%)

2. 计算统计量:
   - 平均收益率 μ
   - 标准差 σ

3. 计算 Sharpe:
   - 每笔:(μ - rf) / σ
   - 年化:每笔 × √年频率

4. 评估结果:
   - 对照评级标准
   - 与基准对比
   - 持续监控优化

版本:v1.0
更新:2026-02-04
作者:Claude (Anthropic)


提示

  • ⭐ 收藏此文档用于快速查询
  • 📖 详细理解请参阅完整算法文档
  • 💻 代码实现见 apex_fork.py
  • 🔄 定期更新评级标准和市场基准

Read more

跑步的技巧(滚动落地)

“滚动落地(rolling contact / rolling foot strike)”不是一种教条式的“脚法”,而是一种 让冲击沿着整只脚、整条后链逐级传递的落地机制。 它的核心不是“你先用哪儿着地”,而是: 你的脚落地之后,冲击是不是像轮子一样滚过去,而不是像锤子一样砸下去。 这就是滚动落地的本质。 一、什么叫“滚动落地”? 你可以把它理解成两种完全不同的落地方式: 1. 砸地(撞击式) 脚像锤子一样拍到地上: * 要么后跟先砸 * 要么前掌先戳 * 冲击集中在一个点 * 一个结构瞬间吃掉大部分载荷 结果就是: * 后跟砸 → 膝盖难受 * 前掌戳 → 前脚掌磨烂 * 都不是长跑友好模式 这叫 撞击式着地(impact strike)。 2. 滚地(滚动式) 脚像轮胎一样“滚”过地面: * 不是某一点硬砸 * 而是外侧中足先轻触 * 再向前滚到前掌 * 最后从大脚趾蹬离

By SHI XIAOLONG

AMI的优越性

世界模型(World Models)的具体例子 如下,我按类型分类,便于理解。每类都附带实际实现、演示效果和应用场景。 1. Yann LeCun / Meta 的 JEPA 系列(最直接对应“世界模型”概念) 这些是 LeCun 主张的非生成式抽象预测世界模型代表。 * I-JEPA(Image JEPA,2023) 输入一张图像,模型把不同区域(context 和 target)编码成抽象表示,然后预测 target 的表示(不在像素级别重建)。 例子:给定一张遮挡了部分物体的图片,模型能预测“被遮挡物体的大致位置和属性”,构建对物体持久性和空间关系的理解。 这是一个“原始世界模型”,能学习物理常识(如物体不会凭空消失)。 * V-JEPA / V-JEPA 2(Video JEPA,

By SHI XIAOLONG

什么是:“世界模型(World Models)”

世界模型(World Models) 是人工智能领域的一个核心概念,尤其在 Yann LeCun 等研究者推动的下一代 AI 架构中占据中心位置。它指的是 AI 系统在内部构建的对现实世界的抽象模拟或内部表示,让机器能够像人类或动物一样“理解”物理世界、预测未来、规划行动。 简单比喻 想象你闭上眼睛也能“看到”房间里的物体会如何移动、碰撞或掉落——这就是你大脑里的世界模型。AI 的世界模型就是类似的“数字孪生”(digital twin)或“内部模拟器”:它不是简单记住数据,而是学习世界的动态、因果关系和物理直觉(如重力、物体持久性、遮挡、因果等)。 为什么需要世界模型? 当前主流的大型语言模型(LLM) 擅长处理文本(统计模式预测),但存在根本局限: * 缺乏对物理世界的真正理解 → 容易“幻觉”、无法可靠规划。 * 样本效率低 → 人类/

By SHI XIAOLONG

K线周期可配置化设计方案

K线周期可配置化设计方案 1. 背景与目标 当前 Beta 套利策略的 K 线周期硬编码为 "1h",分散在多个文件中。需要: 1. 将 K 线周期从 1h 改为 2h 2. 提取为环境变量 BETA_ARB_KLINE_INTERVAL,使其可在 .env 中配置 2. 影响范围分析 2.1 需要修改的文件(共 6 个) 文件 硬编码位置 修改内容 src/trading/config.py BetaArbConfig dataclass 新增 kline_interval 字段,

By SHI XIAOLONG