← 返回 Skills 市场
wzratgit

金融分析技能

作者 wzratgit · GitHub ↗ · v1.0.0
cross-platform ⚠ suspicious
733
总下载
0
收藏
15
当前安装
1
版本数
在 OpenClaw 中安装
/install financial-analysis
功能描述
利用免费数据源进行多资产投资组合的风险平价分析、动态调仓和回测,提供文字报告与图表可视化。
使用说明 (SKILL.md)

金融分析技能 (Financial Analysis Skill)

概述

这是一个用于投资组合分析的技能,支持从免费API获取各类资产行情数据,并提供文字报告和图表可视化。优化版本整合了滚动窗口调仓逻辑和回测功能。

功能特性

  • ✅ 投资组合分析(资产配置、风险评估、收益分析)
  • ✅ 支持多种资产类型:股票、ETF、加密货币等
  • ✅ 免费数据源集成
  • ✅ 文字报告生成
  • ✅ 图表可视化(收益曲线、资产分布、风险指标等)
  • 滚动窗口风险平价分析(使用历史一年数据,每月调仓)
  • 避免未来数据(使用expanding窗口计算波动率)
  • 回测功能(完整的回测流程)

数据源

  • Yahoo Finance (通过yfinance库)
  • Alpha Vantage (免费API)
  • Finnhub (免费层)
  • CSV文件(中国市场数据)

安装依赖

pip install yfinance pandas numpy matplotlib seaborn plotly

使用方法

1. 基本使用

分析投资组合

python financial_analysis.py --portfolio example_portfolio.json --output ./output

获取单个资产数据

python financial_analysis.py --symbol AAPL --period 1y

2. 滚动窗口风险平价分析

运行回测

python optimized_risk_parity_skill.py --csv "C:\path	o\marketdata.csv" --output ./backtest_output

数据格式要求

  • CSV文件应包含日期列和收益率列
  • 收益率数据应为百分比格式(如:1.5表示1.5%)
  • 脚本会自动将百分比转换为实际收益率(除以100)
  • 支持处理文本行和缺失值

3. 投资组合配置文件格式

创建一个JSON文件(如 my_portfolio.json):

{
  "AAPL": 0.25,    # 苹果股票,权重25%
  "GOOGL": 0.20,   # 谷歌股票,权重20%
  "MSFT": 0.20,    # 微软股票,权重20%
  "AMZN": 0.15,    # 亚马逊股票,权重15%
  "TSLA": 0.20     # 特斯拉股票,权重20%
}

滚动窗口风险平价分析

核心特点

  1. 避免未来数据:使用历史一年数据计算波动率
  2. 动态调仓:每月根据最新波动率重新计算权重
  3. 风险平价:各资产对组合风险贡献相等
  4. 回测验证:完整的回测流程,验证策略效果

分析流程

  1. 数据加载:加载CSV数据,处理百分比单位
  2. 滚动波动率:使用expanding窗口计算历史波动率
  3. 权重计算:基于波动率倒数计算风险平价权重
  4. 投资组合收益率:使用滚动权重计算每日收益率
  5. 绩效评估:计算总收益率、年化收益率、夏普比率等
  6. 可视化:生成收益曲线、资产配置、相关性等图表

输出文件

  • 分析报告rolling_risk_parity_report.txt
  • 详细数据rolling_risk_parity_data.json
  • 可视化图表
    • rolling_risk_parity_returns.png - 收益曲线图
    • rolling_risk_parity_allocation.png - 资产配置饼图
    • rolling_risk_parity_correlation.png - 相关性热力图
    • rolling_asset_returns_comparison.png - 资产收益对比图
    • rolling_weight_changes.png - 滚动权重变化图

报告内容

  • 投资组合概览
  • 收益分析(总收益、年化收益)
  • 风险指标(波动率、最大回撤、夏普比率)
  • 资产配置分析
  • 相关性分析
  • 滚动权重变化
  • 可视化图表
  • 投资建议

配置

需要配置API密钥(如使用Alpha Vantage):

  • ALPHA_VANTAGE_API_KEY=your_key_here

示例输出

中国市场滚动风险平价组合分析报告
============================================================
生成时间: 2026-02-26 10:20:04
数据来源: C:\Users\wu_zhuoran\.openclaw\workspace\data\marketdata.csv
数据时间范围: 2015-03-23 至 2026-02-25
数据点数: 2656
滚动窗口: 252个交易日(约1年)
调仓频率: 每月

平均投资组合配置:
  五年期国债 (TF.CFE): 46.04% (波动率: 2.46%)
  十年期国债 (T.CFE): 32.55% (波动率: 3.61%)
  沪铜 (CU.SHF): 9.33% (波动率: 17.87%)
  沪金 (AU.SHF): 12.09% (波动率: 14.88%)

收益指标:
  总收益率: 44.78%
  年化收益率: 3.57%

风险指标:
  年化波动率: 3.76%
  最大回撤: -9.48%
  夏普比率: 0.42

技术实现

滚动窗口计算

  • 使用expanding()窗口而非rolling()窗口
  • 确保不使用未来数据
  • 最小窗口大小为252个交易日(约1年)

权重计算

  • 基于波动率倒数加权:权重 = (1/波动率) / ∑(1/波动率)
  • 每月调仓,动态调整权重
  • 使用前一天的权重计算当日收益率

回测验证

  • 完整的回测流程
  • 避免数据泄露
  • 提供详细的绩效指标

注意事项

  • 确保数据质量,处理缺失值和异常值
  • 滚动窗口大小可根据实际情况调整
  • 调仓频率可根据市场情况调整
  • 考虑交易成本对回测结果的影响
安全使用建议
要点与建议: 1) 文档/清单不一致:在安装或提供任何 API Key 之前,向发布者确认该技能是否真的会调用 Alpha Vantage / yfinance / Finnhub,以及这些网络调用会在哪里发生(由本地脚本直接发起还是需要新增模块)。 2) 如果你只需处理本地 CSV:当前代码看起来仅从本地 CSV 加载并计算风险平价,且不需要任何 API Key;在此情形下无需提供在线凭证,但也请手动检查脚本以确认无隐蔽的网络请求(搜索 'requests', 'urllib', 'socket', 'yfinance', 'alpha_vantage', 'finnhub')。 3) 如果准备运行:先在隔离/沙箱环境中运行,使用非敏感示例 CSV,观察是否有出站网络连接或意外文件写入。查看生成的输出目录权限并确认路径(默认路径包含具体用户名,应按需修改)。 4) 要求修正清单:要求发布者或维护者把实际需要的依赖和环境变量在 manifest/registry metadata 中列清楚(例如将 ALPHA_VANTAGE_API_KEY 列为可选或必需),并在文档中明确何时会进行网络请求。 5) 若你会提供 API Key:只在信任来源并确认代码确实需要并安全使用该键时才提供;否则勿将长期/高权限凭证填入。
功能分析
Package: 金融分析技能 (xpi) Version: 1.0.0 Description: 优化的金融分析技能,整合滚动窗口调仓逻辑和回测功能 The package '金融分析技能' (financial-analysis) version 1.0.0 implements a financial analysis skill for portfolio backtesting using a rolling window risk parity strategy. The core logic is contained in `optimized_risk_parity_skill.py`, which handles loading financial return data from a CSV file, calculating rolling volatilities and risk parity weights (using historical data to avoid look-ahead bias), computing portfolio returns, analyzing performance metrics (e.g., total return, Sharpe ratio, max drawdown), and generating comprehensive text reports and various visualization charts (e.g., cumulative returns, asset allocation, correlation heatmap). The `optimized_main.py` script provides a command-line interface to run the backtest and display results. All file I/O operations (reading CSV, writing reports, JSON data, and PNG charts) are confined to specified local paths. The package relies on standard and well-vetted Python libraries (pandas, numpy, matplotlib, seaborn). There is no evidence of malicious activities such as unauthorized network communication, arbitrary code execution, data exfiltration, or unusual system interactions. The code logic is transparent and aligns perfectly with the package's described functionality as a financial analysis tool.
能力评估
Purpose & Capability
SKILL.md 与 README.md 声称集成 Yahoo Finance(yfinance)、Alpha Vantage、Finnhub 等在线免费数据源并提示配置 ALPHA_VANTAGE_API_KEY;但 manifest.dependencies 未列出 yfinance/plotly,实际代码(optimized_risk_parity_skill.py / optimized_main.py)读取本地 CSV、无网络调用迹象。文档中宣称的在线数据抓取能力与实际要求/实现不匹配。
Instruction Scope
运行说明要求设置 ALPHA_VANTAGE_API_KEY 并列出了从 API 获取数据的用法,但代码路径/实现均以 CSV 为主,且默认 CSV 路径指向用户工作区(C:\Users\wu_zhuoran\.openclaw\workspace\data\marketdata.csv)。说明指示访问网络数据与代码实际行为不一致;此外文档允许把任意 CSV 放入默认路径,需注意本地文件读取权限与隐私。
Install Mechanism
没有 install spec;实际文件为 Python 脚本,依赖是常见数据分析包(pandas/numpy/matplotlib/seaborn)。无远程下载或可执行二进制安装步骤,磁盘写入/执行范围受限于脚本本身,安装风险较低。
Credentials
Registry metadata 报告 'required env vars: none' 而 SKILL.md 要求 ALPHA_VANTAGE_API_KEY。这是不一致的:如果技能确实需要在线 API,清单应声明相应环境变量;反之,文档要求 API Key 会误导用户暴露凭证。总体上没有看到对其他凭据或敏感变量的不当请求。
Persistence & Privilege
技能未设置 always:true,未请求修改其他技能或系统范围配置,也不声明需要长期驻留或特殊权限。默认行为(按需运行脚本并读写输出目录)与其用途相称。
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install financial-analysis
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /financial-analysis 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.0.0
优化的金融分析技能,整合滚动窗口调仓逻辑和回测功能
元数据
Slug financial-analysis
版本 1.0.0
许可证
累计安装 15
当前安装数 15
历史版本数 1
常见问题

金融分析技能 是什么?

利用免费数据源进行多资产投资组合的风险平价分析、动态调仓和回测,提供文字报告与图表可视化。 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 733 次。

如何安装 金融分析技能?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install financial-analysis」即可一键安装,无需额外配置。

金融分析技能 是免费的吗?

是的,金融分析技能 完全免费(开源免费),可自由下载、安装和使用。

金融分析技能 支持哪些平台?

金融分析技能 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 金融分析技能?

由 wzratgit(@wzratgit)开发并维护,当前版本 v1.0.0。

💬 留言讨论