返回顶部
a

a-share-portfolio-optimizeA股组合优化

A股量化组合优化。当用户说"组合优化"、"portfolio optimization"、"均值方差"、"风险平价"、"最优权重"、"Black-Litterman"、"最小方差"、"最大夏普"、"怎么分配权重"、"等风险贡献"时触发。基于现代投资组合理论,对给定标的池进行量化权重优化,支持均值方差/最小方差/风险平价/等权等多种方法,输出最优配置权重和有效前沿。支持研报风格(formal)和快速优化风格(brief)。

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.0.0
安全检测
已通过
159
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

a-share-portfolio-optimize

数据源

bash SCRIPTS=$SKILLS_ROOT/cn-stock-data/scripts

各资产日K线(用于计算收益率序列和协方差矩阵)

python $SCRIPTS/cnstockdata.py kline --code [CODE] --freq daily --start [起始日期]

各资产最新行情

python $SCRIPTS/cnstockdata.py quote --code [CODE1],[CODE2],[CODE3],...

无风险利率参照(十年期国债收益率,可手动指定,默认2.5%)

大盘基准(有效前沿对比)

python $SCRIPTS/cnstockdata.py kline --code SH000300 --freq daily --start [起始日期]

量化优化脚本

bash OPTIM=$SKILLS_ROOT/a-share-portfolio-optimize/scripts

给定资产收益率矩阵,运行组合优化

python $OPTIM/portfolio_optimizer.py \ --returns_csv [收益率CSV路径] \ --method [minvar|maxsharpe|riskparity|equalweight] \ --rf 0.025 \ --long_only \ --max_weight 0.40

工作流程(5个步骤):

步骤1:输入资产池与约束

收集用户信息:

项目说明默认值
资产池股票代码列表用户提供
历史窗口
用于估计参数的历史区间 | 近1年(250个交易日) |
| 优化方法 | minvar / maxsharpe / riskparity / equalweight / BL | max_sharpe |
| 无风险利率 | Rf | 2.5% |
| 约束条件 | 做多约束、个股上限、行业上限 | long_only, max 40% |
| 预期观点(BL) | 用户主观收益预期(仅BL模型需要) | - |

步骤2:数据获取与收益率/风险估计

  1. 1. 通过cn-stock-data kline获取各资产日K线
  2. 计算日收益率序列 -> 年化收益率向量mu
  3. 计算收益率协方差矩阵Sigma(默认样本协方差,可选Ledoit-Wolf收缩)
  4. 展示关键统计:

| 代码 | 名称 | 年化收益(%) | 年化波动(%) | 夏普比 | 最大回撤(%) |
|------|------|-----------|-----------|-------|-----------|

相关系数矩阵热力图描述(哪些资产高度正相关、哪些负相关/低相关提供分散化收益)。

步骤3:组合优化求解

根据用户选择的方法执行优化:

方法A:均值方差/最大夏普(MVO - Max Sharpe)

  • - 目标:max (mu^T w - Rf) / sqrt(w^T Sigma w)
  • 约束:sum(w)=1, w>=0 (longonly), wi<=max_weight

方法B:最小方差(Min Variance)

  • - 目标:min w^T Sigma w
  • 约束:sum(w)=1, w>=0

方法C:风险平价(Risk Parity)

  • - 目标:各资产风险贡献相等 RCi = wi * (Sigma w)i / sqrt(w^T Sigma w) = 1/N
  • 数值求解:min sumi (RC_i - 1/N)^2

方法D:等权(Equal Weight)

  • - w_i = 1/N(作为基准参照)

方法E:Black-Litterman(可选)

  • - 均衡收益 pi = delta Sigma wmkt
  • 融合用户观点:muBL = [(tauSigma)^-1 + P^T Omega^-1 P]^-1 [(tauSigma)^-1 pi + P^T Omega^-1 Q]
  • 基于mu_BL再做MVO

调用portfolio_optimizer.py执行计算,输出最优权重。

步骤4:结果展示与有效前沿

最优权重
| 代码 | 名称 | 权重(%) | 风险贡献(%) |
|------|------|---------|-----------|

组合预期指标

指标最优组合等权组合沪深300
预期年化收益(%)
预期年化波动(%)
| | |
| 夏普比 | | | |
| 最大回撤(%) | | | |

有效前沿描述

  • - 最小方差组合位置(收益-波动坐标)
  • 最大夏普组合位置(切线组合)
  • 各个股在收益-风险平面上的位置
  • 当前组合相对有效前沿的位置

步骤5:输出

风格说明
维度formal(量化研报风格)brief(快速优化风格)
篇幅4-6页1-2页
统计分析
完整收益/风险/相关性矩阵 | 关键指标摘要 |

| 优化方法 | 多方法对比+有效前沿 | 单一方法结果 | | 权重输出 | 完整表格+风险贡献分解 | 权重饼图描述 | | 敏感性 | 参数敏感性分析 | 不含 | | 理论说明 | 含模型原理简述 | 不含 | | 免责声明 | 需要 | 不需要 |

关键规则

  1. 1. 历史不代表未来:基于历史数据的优化结果仅供参考,必须声明过去业绩不预测未来收益
  2. 估计误差:均值估计不稳定,优先推荐最小方差或风险平价等不依赖收益率估计的方法
  3. 协方差稳定性:短期协方差可能不稳定,建议使用至少1年数据,可选Ledoit-Wolf收缩估计
  4. 约束合理性:默认做多约束(A股做空受限),个股上限40%防止过度集中
  5. 多方法对比:formal风格下建议对比多种方法结果,让用户理解不同优化目标的权衡
  6. 与其他skill联动:可用a-share-comps补充估值视角、a-share-technical确认技术面、a-share-sector检查行业暴露
  7. Black-Litterman谨慎使用:BL模型需要用户提供主观观点,引导用户合理设定观点及置信度

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 a-share-portfolio-optimize-1775941092 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 a-share-portfolio-optimize-1775941092 技能

通过命令行安装

skillhub install a-share-portfolio-optimize-1775941092

下载

⬇ 下载 a-share-portfolio-optimize v1.0.0(免费)

文件大小: 10.33 KB | 发布时间: 2026-4-12 08:35

v1.0.0 最新 2026-4-12 08:35
A股量化组合优化技能首发上线,支持多种权重优化方法与研报/快速风格。

- 支持均值方差、最小方差、风险平价、等权、Black-Litterman 等组合优化方法
- 自动获取A股历史行情,计算收益率、协方差、相关系数等关键指标
- 输出最优权重、风险贡献、有效前沿及组合与基准表现对比
- 提供量化研报风格(formal)和快速优化风格(brief)两种结果展示
- 内置投资组合风险管理与数据估计关键规则提醒

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部