Source: task7-convertible-bond/input/brief-v0.md
Last modified: 2026-05-16 18:34:19 · 14,270 bytes

Task #7 — 可转债量化组合 · Brief v0

Author: @RayDario

Sources: 万柏 PM Q&A (Kaite 转发, 2 篇) + 2024 转债 default 复盘 + 中证转债 历史回测

Status: v0 — Kaite verification + @JimSimons data/backtest spec

---

0. 一页摘要

mini-cypress 可转债 = **借鉴万柏 PM 多因子框架** + 1 亿规模适配 (vs 万柏 30 亿)

**核心思想**: 按 **平底溢价率** 分三层 (偏债 / 平衡 / 偏股), 每层独立选 top 20%, 多因子模型加权打分, 月度 (v0) → 双周 (v0+) → 日度 (v1) 调仓节奏。

**目标** (Kaite locked): **跑赢中证可转债等权指数 +10%/年, MDD ≤ -10%**

- 注: 万柏 PM 对标"中证转债指数" (市值加权), Kaite 让我对标"等权指数" — 后者更难超越 (等权天然吃小盘 alpha), 但 +10% 仍有路径

**关键 spec** (Kaite revised, 已 lock):

- 评级 ≥ **A** (不是 AA)

- **无行业黑名单** (光伏 in)

- 硬剔除: ST / 退市风险

- 单券 ≤ 5% NAV

- 行业集中 ≤ 25% (我提议, Kaite 未否)

**v0 不做** (留 v0+ / v1):

- 日内 T0 增厚 (万柏 90% 胜率 / 5% 年化, 但需要算法交易基础设施)

- 主观条款博弈 (下修博弈), v0 纯量化

- 期权 / 杠杆

---

1. 框架综合

1.1 学术 + 实战 anchor

- **双低策略** (国内经典): 价格 < 130 + 转股溢价率 < 30%, 历史 5-10 年年化 ~15-25%

- **摊大饼**: 等权 + 信用过滤 + 流动性过滤, 收益偏 beta, alpha 来自 rebalancing

- **万柏 PM 多因子框架**: 三层分类 + 因子加权 (核心借鉴对象)

- **2024 default 事件**: 蓝盾 / 搜特 / 鸿达 — 提醒信用筛选必要性 (即使 Kaite 放宽到 A 及以上, 仍需硬剔除 ST/退市风险)

1.2 万柏 PM framework 核心 (我借鉴的)

元素 万柏 mini-cypress v0 采纳
三层分类 (平底溢价率) 偏债 / 平衡 / 偏股 三层独立选股 ✅ 直接借鉴, 三层独立 top 20%
因子库 500+, 实际常用 ~50 v0 起步 30 个核心因子, v1 扩展
三层不同因子 偏债: 双低/YTM/稀释率; 平衡: delta; 偏股: 动量/换手 ✅ 直接借鉴, §3 详列
调仓节奏 日度 v0 月度 → v0+ 双周 → v1 日度 (依基础设施成熟度)
日内 T0 增厚 +5% 年化, 90% 胜率 ❌ v0 不做, 等算法交易系统就位
单券止损 -10% ✅ 借鉴
仓位择时 60-100% (防守择时) ✅ 借鉴
持仓数量 ~60 只 v0 30-50 只 (1 亿规模适配, 更分散)
评级 A 及以上 ✅ (Kaite 也明示)
总头寸 cap 单券 5% ✅ (Kaite 明示)
主观策略 下修博弈 / 尽调 / 行业轮动 ❌ v0 不做主观, 纯量化

1.3 mini-cypress 适配 (与万柏的差异)

- **规模**: 1 亿 vs 30 亿 → 更灵活, 不必受容量约束

- **基础设施**: 没有日内交易系统 → 先月度 / 双周, 拒绝高换手

- **决策结构**: AI agent 主导 → 优先全量化, 减少主观干预

- **对标**: 中证可转债**等权指数** (Kaite 指定, 比市值加权指数难超越, 因为等权吃小盘 alpha)

---

2. 三层分类 (按 平底溢价率)

2.1 平底溢价率定义

- **平底溢价率** = (转债价格 - 纯债价值) / 纯债价值

- 衡量转债的"股性 vs 债性" 偏好

2.2 三层划分规则

平底溢价率 股性程度 主要 alpha 来源
**偏债** < 5% 几乎纯债 信用利差 / YTM / 双低反弹
**平衡** 5% - 30% 股债混合 delta / 期权时间价值
**偏股** > 30% 强股性 正股动量 / 换手 / 流动性

2.3 分层后选股流程

1. 全市场转债 → 信用 + 流动性 + ST/退市过滤 → 可投池 (预计 200-300 只)

2. 按平底溢价率分三层

3. 每层独立 run 多因子模型 (因子集不同, §3)

4. 每层 top 20% 入候选

5. 三层市值权重相同 (1/3 each, 不是按数量) — 这是万柏的关键设计

6. 检查 §4 风控约束 (行业 + 单券) → 输出最终持仓

---

3. 因子库 v0 (30 因子分三层)

3.1 偏债层 (15 因子)

**估值** (alpha 来源):

1. 双低指标 = 价格 + 转股溢价率 × 100

2. 价格 (绝对值, 越低越好)

3. YTM (越高越好)

4. 纯债溢价率 (越低越好)

5. 转股稀释率 (越低越好, 大转股 = 大稀释 = 弱保护)

**基本面** (避雷 + 选优):

6. 主体信用评级 (A / A+ / AA- / AA / AA+ / AAA)

7. 评级展望 (正面 / 稳定 / 负面)

8. 公司 ROE (正股 ROE 高于行业中位)

9. 公司经营现金流 / 净利润

10. 公司 营收 yoy

**流动性 + 风险**:

11. 转债日均成交额 (近 30 日)

12. 转债日均换手率

13. 剩余规模 (流通规模 ≥ 5 亿优先)

14. 距强赎日 (太近不利, 太远利)

15. 信用利差变化 (近 20 日, 走阔 = 减权)

3.2 平衡层 (12 因子)

**期权特性** (核心 alpha):

1. Delta (越高越敏感, 弹性大)

2. Vega (越高对波动暴露大)

3. 隐含波动率 vs 历史波动率 (低估)

4. Gamma (敏感性变化)

5. 期权时间价值 (距到期年限)

**价量** (短期信号):

6. 转债 60 日动量

7. 转债 20 日 RS vs 中证可转债等权

8. 换手率 60 日均值

9. 成交额 60 日 z-score

**正股**:

10. 正股 60 日收益率

11. 正股 ROE

12. 正股 行业 RS vs 沪深 300

3.3 偏股层 (13 因子)

**动量 + 量价**:

1. 转债 60 日动量

2. 转债 120 日动量

3. 转债 突破 60 日 high (binary)

4. 换手率 z-score

5. 成交量放大 (vs 30 日均量)

**正股驱动** (强股性, 正股是核心):

6. 正股 60 日动量

7. 正股 120 日动量

8. 正股 250 日 RS vs 沪深 300

9. 正股 ROE

10. 正股 EPS 单季 yoy

11. 正股 北向资金 净买入近 20 日

**风险**:

12. 转债 60 日年化波动率 (适度防过度集中)

13. 距强赎触发 (太近 → 强赎风险)

3.4 因子加权方式 (v0)

- v0: 等权 (每层因子等权, 简化起步)

- v0+: IC 加权 (用过去 6 个月 IC 加权, 每月滚动更新)

- v1: 万柏式的 IC + IR 综合加权 + 因子库扩展

3.5 因子有效性监测 (持续动态)

- 每月计算每个因子的 1 月 IC, 6 月累计 IC

- 触发淘汰: 因子 6 月累计 IC < 0 + IR < 0.1 → 临时下线, 等评估

- 触发新增: 新因子需有 12 月样本外 IC > 0.05 + 与现有因子相关性 < 0.7

---

4. 风控 (Kaite revised + 万柏参考)

4.1 选股层风控 (硬过滤, 前置)

- 评级 ≥ A

- ST / 退市风险 / 净资产 < 5000w / 连续 2 年亏损 / 审计意见非标 → 硬剔除

- 剩余规模 < 3 亿 → 流动性差, 剔除

- 距退市 < 1 年 → 剔除

- 强赎触发 (转股价 × 1.3) → 减权或剔除 (强赎风险)

4.2 持仓集中度

- **单券 ≤ 5% NAV** (Kaite locked)

- 单行业 ≤ 25% NAV (我提议, Kaite 未否定)

- 总持仓数 30-50 只 (1 亿规模适配)

- 三层市值权重 1/3 each ± 5% (允许波动)

4.3 仓位择时 (借鉴万柏防守择时)

- 默认仓位 80% NAV (留 20% 缓冲, 防赎回 / 加仓机会)

- **触发降至 60%**:

- 信用利差 (转债加权 YTM - 5Y 国债 YTM) 20 日内走阔 > 50 bp

- 中证可转债等权指数 跌破 250 日 MA + 单周 跌 > 3%

- 沪深 300 跌破 250 日 MA + 流动性紧缩信号

- **触发降至 30%** (极端):

- 单月可转债等权指数 跌 > 8% + 信用事件链 (≥ 2 个 default in month)

- **触发加仓 (在 80% → 90%)**:

- 信用利差快速收窄 + 估值百分位 < 30th

4.4 单券风控

- **-10% 单券止损** (借鉴万柏)

- 持仓券 + 正股发生 ST / 评级负面 → 当日清仓

- 持仓券 近 5 日跌 > 15% + 正股有重大利空 → 当日清仓

4.5 调仓换手控制

- v0 月度调仓, 单次换手 ≤ 30% NAV (1 亿规模, 即 3000 w; 转债日均成交 > 3000 w 即可承接)

- v0+ 双周调仓, 单次换手 ≤ 20%

- 年换手率目标 ≤ 12 倍 双边 (远低于万柏 60 倍, 因为我们 v0 不做 日内)

---

5. JimSimons 数据 + 回测 spec

5.1 数据层

**转债数据** (rqdata):

- 全市场可转债日线 OHLCV

- 转债静态: 发行日 / 到期日 / 转股价 / 转股开始日 / 强赎条款 / 下修条款 / 剩余规模 / 信用评级 + 历史评级变动

- 转债动态: 平底溢价率 / 纯债价值 / 转股价值 / YTM / 隐含波动率 / Delta / Vega / Gamma

- 转债事件流: 强赎公告 / 下修公告 / 提前赎回 / 暂停转股

**正股数据** (复用 Task #5 / #4 部分):

- 正股日线 OHLCV + 复权

- 正股财务三表 (ROE / 经营现金流 / EPS 单季)

- 北向资金日级 (正股 net buy)

- 行业分类 (申万一级 + 中信一级)

**Benchmark**:

- 中证可转债指数 (000832) — 市值加权

- **中证可转债等权指数** (931078 or 类似代码, JimSimons 确认) — Kaite 指定 benchmark

- 5Y 国债 YTM (信用利差计算用)

**历史**:

- 转债数据起点: 2018-01-01 (可转债扩容期之后)

- 全 + 信用评级 + 事件流 + 因子原始数据

**落地**: ~/data/mini-cypress/rqdata/convertible/2018-2026/

5.2 回测任务

**baseline 配置**:

- 三层分类 → 每层多因子打分 → top 20% 入候选 → §4 风控 → 持仓 30-50 只 → 月度调仓 (v0)

- 因子等权 (v0)

- 仓位 80% 默认 + 择时降仓

- 单券 -10% 止损 / 急触发即时退出

**OOS 拆分** (与 Task #4 / #6 同):

- IS: 2018-01-01 至 2023-12-31

- OOS-A: 2024-01-01 至 2024-09-23 (2024 default 集中期, 关键 stress test)

- OOS-B: 2024-09-24 至 2025-06-30

- OOS-C: 2025-07-01 至今

**输出指标** (每个 OOS 段独立):

- 年化 / vol / Sharpe / Sortino / Calmar

- max DD + recovery 时长

- **vs 中证可转债等权指数** (Kaite benchmark): alpha / IR / 跟踪误差

- vs 中证可转债 (市值加权指数): 同上 (参考)

- 月度换手率 + 交易成本

- 三层独立表现 (每层 alpha / IC)

- 因子 IC 时序 (验证因子有效性变化)

- 2024 default 期间表现 (信用过滤是否有效)

5.3 多因子模型构建细节

- 横截面标准化 (每月对每层内所有候选转债的每个因子做 z-score)

- 因子加权求 composite score

- 按 composite score 排序, 取 top 20%

- 入候选后过 §4 风控 (单券 / 行业 / 集中度), 不满足的换排序下一位补

5.4 Failure case (回测异常时 ping 我)

- IS 年化 > 30% → 极可能 overfit

- IS MDD > 15% → 风控失效, 检查降仓触发 + 止损

- OOS-A 单月 MDD > 8% → 2024 default 期间信用过滤无效, 检查评级 + 退市过滤

- 跑不赢中证可转债等权指数 → benchmark 选 trim 或多因子失效, 排查

---

6. 失败模式备忘

6.1 信用事件链 (2024 复盘)

- 风险: 蓝盾 (BB+) / 搜特 (CC) / 鸿达 (CCC) 在 2024 default, 个别低评级转债"踩雷"

- 应对: §4.1 评级 ≥ A 过滤 (Kaite locked); §4.3 仓位降至 60% 触发 (信用利差走阔)

6.2 信用利差快速走阔

- 风险: 2024 年底场景 — 权益震荡 + 信用风险 + 固收+赎回 + 资金面收紧 同时发生

- 应对: §4.3 触发降仓 60% + 持仓偏债平衡型 (类似万柏 PM 的应对)

6.3 转债估值高位 (当前 2026 market view per 万柏 PM)

- 风险: 双高 (价格高 + 溢价高) 安全垫薄, 双低策略失效

- 应对: 多因子层面减低"价格" / "双低" 因子权重, 提高"动量" / "流动性" 因子 (与万柏 PM 当前调整方向一致)

- v0+: 引入"市场状态识别"信号 — 双高 / 双低 / 结构性 三种 regime, 自动调整因子权重

6.4 强赎风险

- 风险: 正股价格冲高触发强赎, 持仓券被强制赎回, 损失期权时间价值

- 应对: §4.1 距强赎触发 → 减权或剔除; §3.1 距强赎日因子作为减权信号

6.5 下修博弈反向 (v0 不做但要监测)

- 风险: 下修不及预期 (公司没下修或下修幅度小) → 转债短期承压

- 应对: v0 不主动博弈下修, 只做被动监测; 下修公告后正股 + 转债同步进入因子模型

6.6 流动性枯竭

- 风险: 小盘转债日均成交 < 500w → 我们 5% NAV (500w/票) 进出都难

- 应对: §4.1 剩余规模 ≥ 3 亿 + 日均成交 ≥ 1000 w 双重过滤

6.7 因子失效

- 风险: 历史有效因子在 regime shift 时突然失效 (e.g. 双低 2024 年底失效)

- 应对: §3.5 持续监测每个因子 1/6 月 IC, 触发淘汰 + 新增

- 长期: v1 引入"regime conditional 因子加权" — 不同 regime 用不同因子权重

---

7. @Kaite verification

7.1 框架借鉴范围

- 万柏 PM 三层分类 (按平底溢价率) — 我直接借鉴, 你接受?

- 每层 top 20% 选股 — 接受?

- 三层市值权重 1/3 each — 接受还是建议偏债 / 平衡 / 偏股 权重不均 (e.g. 平衡偏多)?

7.2 调仓节奏

- v0 月度 → v0+ 双周 → v1 日度 (依基础设施)

- 我没上来就用万柏的日度, 是因为日度调仓需要算法交易系统 (ptrade A 路径才能落) + 容量需求 (1 亿 vs 30 亿)

- 你能接受 v0 月度起步吗? 还是要直接上日度?

7.3 因子库

- v0 30 因子 (§3 列出), 等权; v0+ IC 加权; v1 扩展 + 引入 IC 时间序列动态

- 你认为有遗漏的关键因子要补?

- "万柏特色因子" (条款定价模型 / 正股一致预期) 是 alpha 来源, 但工程量大 — v0 不做, v1 是否优先实现?

7.4 主观策略

- 万柏 PM 有"下修博弈 / 尽调择券 / 行业轮动" 主观策略

- 我 v0 纯量化, 不做主观 — 你接受吗?

- 主观能不能在 v1 引入? 如果引入, 由 谁 (你? 我?) 做主观判断?

7.5 仓位 + 止损

- 默认 80%, 触发降至 60% / 30%

- 单券 -10% 止损 (借鉴万柏)

- 这些数字接受还是要调?

7.6 Benchmark

- 你指定中证可转债**等权指数** (比市值加权指数难超越, 等权吃小盘 alpha)

- +10% 超额 是 hard target, 我们 v0 等权设置可能跑不到 +10%

- 你能接受 v0 跑出 +5% 到 +10% 之间, 通过 v0+ / v1 迭代到 +10%? 还是 v0 就必须 +10%?

---

8. 与其他 task 协同

- **Task #4 全天候**: 可转债不在全天候组合内 (全天候只做股 / 债 / 商品 / 黄金 + 现金); 仅在 Task #4 §4.2 中证可转债指数作为 benchmark

- **Task #5 领头羊**: 正股数据复用 (Task #5 数据层一并拉, JimSimons 一次性 pipeline)

- **Task #6 ETF 轮动**: 不重叠

- **Task #8 组合层**: 可转债占资金权重 20% / 风险预算 ~15% (per Kaite + 我初版)