| name | portfolio-risk-manager |
| description | Use when reviewing portfolio exposures, checking concentration and beta risk, summarizing sector or region tilts, or preparing a risk note before reallocating capital. |
| zh_description | 用于投资组合风险分析、仓位约束和风险报告生成。 |
| version | 1.0.0 |
| author | seaworld008 |
| source | in-house |
| source_url | |
| tags | ["finance", "manager", "portfolio", "risk"] |
| created_at | 2026-03-18 |
| updated_at | 2026-03-20 |
| quality | 2 |
| complexity | intermediate |
Portfolio Risk Manager (投资组合风险管理器)
像专业的风险会议(Risk Meeting)一样汇总投资组合:分析集中度(Concentration)、敞口(Exposure)、贝塔(Beta)、波动率(Volatility),识别组合在哪些领域过度倾斜。本技能旨在将杂乱的持仓清单转化为具有前瞻性的风险视图,辅助投资经理在调仓前进行全方位的“健康体检”。
安装与前提条件
pip install pandas numpy pyportfolioopt scipy
npx clawhub install portfolio-risk-manager
触发条件 / When to Use
- 每周 PM 评审 (Weekly PM Review):在每周一开盘前,对整个组合的风险暴露进行全量扫描。
- 调仓前风险核查 (Pre-trade Sanity Check):在大幅增加某个标的或行业的权重前,评估其对组合整体风险的影响。
- 致投资者信准备 (Investor Letter Prep):需要向投资者清晰地说明目前持仓的风险属性(如:低 Beta、高分红、区域倾斜)。
- 仓位规模讨论 (Position Sizing):根据波动率逆向计算每个标的应占的最优权重。
- 极端行情复盘:当市场发生剧烈波动时,快速计算组合的 VaR(在职风险值)并制定防御方案。
核心能力 / Core Capabilities
1. 集中度与多维敞口分析 (Exposure Analysis)
- 操作步骤:
- 统计前 10 大持仓的权重(Top 10 Weight)。
- 按 行业 (Sector)、地区 (Region)、市值 (Market Cap) 及 风格 (Style) 进行穿透式汇总。
- 识别“非意图敞口”(Accidental Exposure),即由于多个标的同属一个子行业而导致的隐性集中风险。
- 最佳实践:单一标的权重通常不应超过 10%,单一行业敞口不应超过 25%,除非该策略是高集中度的特定风格。
2. 系统性与特有风险测算 (Beta & Volatility)
- 操作步骤:
- 运行
scripts/portfolio_risk.py。
- 计算加权贝塔(Weighted Beta):评估组合对大盘波动的敏感度。
- 拆解风险来源:区分 系统性风险 (Systematic Risk) 和 特有风险 (Idiosyncratic Risk)。
- 计算 跟踪误差 (Tracking Error):衡量组合相对于基准的偏离程度。
- 最佳实践:在熊市环境下,重点关注 Beta 的漂移情况。
3. 相关性矩阵与多元化分析 (Correlation Analysis)
- 操作步骤:
- 计算所有持仓之间的相关性矩阵(Correlation Matrix)。
- 识别“假多元化”:表面上买了 20 只股票,但如果它们的相关系数都在 0.8 以上,实质上是一个高风险头寸。
- 最佳实践:通过寻找相关性低于 0.3 的资产来优化夏普比率。
4. 压力测试与情景模拟 (Stress Testing)
- 操作步骤:
- 模拟极端情景:如“利率上升 100bp”、“纳斯达克回调 10%”、“原油价格翻倍”。
- 预估组合在这些情景下的最大跌幅。
- 输出“VaR (Value at Risk)”报告。
常用命令/模板 / Common Patterns
投资组合 JSON 模板 (Portfolio JSON)