fund query

查询中国公募基金信息,支持收藏和分组管理。包括基金名称、单位净值、估算净值、涨跌幅等。使用天天基金 API 获取实时数据。当用户输入基金代码(6 位数字)、询问基金净值、或需要管理基金收藏/分组时使用此技能。

MIT-0 · Free to use, modify, and redistribute. No attribution required.
0 · 15 · 0 current installs · 0 all-time installs
byxlink@AllenKwok
MIT-0
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
high confidence
Purpose & Capability
技能声明是查询中国公募基金并提供收藏/分组管理,脚本实际调用 fundgz.1234567.com.cn 的 JSONP 接口并实现了查询、添加/删除收藏、分组管理及刷新的功能;所需资源(网络访问、data/ 本地存储)与目的相符。
Instruction Scope
SKILL.md 中的指令与 scripts/fund_query.py 的实现一致。脚本只访问指定基金 API、在 repo 相对的 data/ 目录下读写 favorites.json 和 groups.json,并处理常见错误;未见指令或代码要求读取其它系统路径、环境变量或将数据发送到与基金 API 无关的外部端点。
Install Mechanism
无安装规范(instruction-only + 附带脚本),没有下载外部二进制或运行不可信安装步骤,风险较低。
Credentials
不要求环境变量或凭据,脚本也未尝试读取敏感环境变量或外部凭证;唯一外部访问是到基金数据接口,这与技能功能直接相关。
Persistence & Privilege
技能未设置 always:true,默认允许被模型调用;它仅在本地 data/ 下保存收藏与分组(自己的数据文件),未修改其它技能或系统级配置。
Assessment
该技能看起来内部一致且功能单一,但在安装/运行前请注意: - 它会向 https://fundgz.1234567.com.cn 发起网络请求——确认允许该出站流量并信任该数据源。 - 脚本会在仓库根目录附近创建/修改 data/favorites.json 和 data/groups.json(本地持久化收藏);如果你有敏感文件请确认路径无冲突并备份现有数据。 - 源(homepage 未提供,发布者 ID 为匿名样式)未明确信任链:如果用于生产环境,建议人工审查脚本全文并在受限或沙箱环境中首次运行。 - 无需任何 API 密钥或系统凭据;若未来有人修改该技能并要求凭证,应格外警惕并重新评估权限需求。

Like a lobster shell, security has layers — review code before you run it.

Current versionv1.0.0
Download zip
latestvk977b1cjzwzsma89xa5k7axtkh839axz

License

MIT-0
Free to use, modify, and redistribute. No attribution required.

SKILL.md

基金查询技能

通过基金代码查询中国公募基金的名称、净值和涨跌幅信息,支持收藏和分组管理功能。

快速使用

查询单只基金

查询基金 161725
161725 净值
帮我看看 000001 基金

收藏管理

把 161725 加入收藏
收藏 000001 到白酒分组
显示我的基金收藏
刷新所有收藏的基金
从收藏移除 161725

分组管理

创建分组 白酒
创建分组 科技 重仓
显示所有分组
查看白酒分组的基金
刷新白酒分组
删除分组 重仓

命令行用法

查询

# 查询单只基金
python scripts/fund_query.py 161725

# 查询并添加到收藏(无分组)
python scripts/fund_query.py 161725 --add

收藏管理

# 添加基金到收藏(可指定多个分组)
python scripts/fund_query.py add 161725 白酒 重仓

# 添加基金到收藏(无分组)
python scripts/fund_query.py add 000001

# 从收藏移除
python scripts/fund_query.py remove 161725

# 显示收藏列表(全部)
python scripts/fund_query.py list

# 显示指定分组的基金(包括无分组的)
python scripts/fund_query.py list 白酒

# 刷新所有收藏
python scripts/fund_query.py refresh

# 刷新指定分组的基金
python scripts/fund_query.py refresh 白酒

# 更新基金的分组
python scripts/fund_query.py groups 161725 白酒 重仓

分组管理

# 创建分组
python scripts/fund_query.py group create 白酒

# 删除分组(不删除基金,仅移除分组关联)
python scripts/fund_query.py group delete 白酒

# 列出所有分组
python scripts/fund_query.py group list

数据源

  • API: 天天基金网 (fund.eastmoney.com)
  • 接口: https://fundgz.1234567.com.cn/js/{fund_code}.js
  • 数据格式: JSONP

返回字段说明

字段说明
fund_code基金代码 (6 位数字)
fund_name基金名称
estimated_net_value估算净值 (盘中实时)
unit_net_value单位净值 (最新确认)
growth_rate涨跌幅 (%)
trend趋势 (上涨/下跌/持平)
net_value_date净值日期
valuation_time估值时间
groups所属分组列表
status状态 (success/error)

分组功能

设计理念

  • 一个基金可以属于多个分组:如"白酒"和"重仓"
  • 无分组的基金:可以在任何分组查询中看到(作为全局基金)
  • 删除分组:只删除分组本身,不删除基金,基金变为无分组状态

数据存储

  • 收藏数据: data/favorites.json
  • 分组数据: data/groups.json
  • 格式: JSON

分组操作

创建分组:

from scripts.fund_query import create_group

result = create_group("白酒")
# 返回:{"status": "success", "message": "已创建分组 '白酒'"}

删除分组:

from scripts.fund_query import delete_group

result = delete_group("白酒")
# 删除分组,同时从所有基金中移除该分组关联

列出分组:

from scripts.fund_query import list_groups

groups = list_groups()
# 返回:{"白酒": {"created_time": "...", "description": ""}, ...}

收藏操作

添加收藏(指定分组):

from scripts.fund_query import add_favorite

result = add_favorite("161725", ["白酒", "重仓"])
# 返回:{"status": "success", "message": "已添加..."}

添加收藏(无分组):

result = add_favorite("000001", [])
# 无分组的基金可以在任何分组查询中看到

更新分组:

from scripts.fund_query import update_fund_groups

result = update_fund_groups("161725", ["白酒"])

获取收藏列表:

from scripts.fund_query import list_favorites

# 获取全部(包括无分组的)
all_favorites = list_favorites()

# 获取指定分组的(包括无分组的)
baijiu_favorites = list_favorites("白酒")

# 获取无分组的
no_group_favorites = list_favorites("")

刷新收藏:

from scripts.fund_query import refresh_favorites

# 刷新全部
all_results = refresh_favorites()

# 刷新指定分组
baijiu_results = refresh_favorites("白酒")

错误处理

脚本会处理以下错误情况:

  • 基金代码格式错误 (非 6 位数字)
  • 网络请求失败
  • 数据解析错误
  • 基金代码不存在
  • 分组不存在

错误返回示例:

{
  "fund_code": "123",
  "status": "error",
  "message": "基金代码格式错误,应为 6 位数字"
}

使用模式

模式 1: 直接调用脚本

import sys
sys.path.append('scripts')
from fund_query import get_fund_info, format_result, add_favorite, refresh_favorites

# 查询
result = get_fund_info("161725")
print(format_result(result))

# 收藏到多个分组
add_result = add_favorite("161725", ["白酒", "重仓"])
print(add_result["message"])

# 刷新指定分组
refresh_results = refresh_favorites("白酒")
for r in refresh_results:
    if r["status"] == "success":
        print(f"{r['fund_name']}: {r['growth_rate']:+.2f}%")

模式 2: 命令行调用

# 日常查询
python scripts/fund_query.py 161725

# 添加并分组
python scripts/fund_query.py add 161725 白酒 重仓

# 查看分组
python scripts/fund_query.py list 白酒

# 刷新分组
python scripts/fund_query.py refresh 白酒

注意事项

  1. 请求频率: 脚本内置随机延迟 (0.5-1.5 秒),避免请求过快
  2. 交易时间: 盘中数据为估算净值,收盘后为确认净值
  3. 数据更新: 净值通常在交易日 20:00 后更新
  4. 网络依赖: 需要访问天天基金网 API
  5. 分组逻辑: 无分组的基金可以在任何分组查询中看到
  6. 数据文件: 存储在 data/ 目录,可手动编辑

示例基金代码

代码名称类型
161725招商中证白酒指数指数型
000001华夏成长混合混合型
110011易方达中小盘混合型
000566华泰柏瑞创新升级混合型

输出示例

查询结果

📊 基金查询结果
━━━━━━━━━━━━━━
基金代码:161725
基金名称:招商中证白酒指数 (LOF)A
单位净值:0.6667
估算净值:0.6596
涨跌幅度:-1.06% (下跌)
净值日期:2026-03-18
估值时间:2026-03-19 11:30

收藏列表(全部)

⭐ 我的基金收藏 (3 只)
━━━━━━━━━━━━━━
• 161725 - 招商中证白酒指数 (LOF)A [白酒] (收藏于:2026-03-19 04:49:59)
• 000001 - 华夏成长混合 [科技,重仓] (收藏于:2026-03-19 05:17:38)
• 110011 - 易方达优质精选混合 (QDII) [无分组] (收藏于:2026-03-19 05:18:00)

收藏列表(按分组)

⭐ 分组 '白酒' 的基金 (2 只)
━━━━━━━━━━━━━━
• 161725 - 招商中证白酒指数 (LOF)A [白酒] (收藏于:2026-03-19 04:49:59)
• 110011 - 易方达优质精选混合 (QDII) [无分组] (收藏于:2026-03-19 05:18:00)

分组列表

📁 我的分组 (3 个)
━━━━━━━━━━━━━━
• 白酒 (创建于:2026-03-19 05:17:21)
• 科技 (创建于:2026-03-19 05:17:24)
• 重仓 (创建于:2026-03-19 05:17:25)

刷新结果

🔄 收藏基金刷新结果 (3 只)
━━━━━━━━━━━━━━
📉 161725 招商中证白酒指数 (LOF)A [白酒]
   净值:0.6667 | 涨跌:-1.06%
📉 000001 华夏成长混合 [科技,重仓]
   净值:1.083 | 涨跌:-1.49%
📉 110011 易方达优质精选混合 (QDII) [无分组]
   净值:5.1864 | 涨跌:-2.22%
━━━━━━━━━━━━━━
成功:3 | 失败:0

Files

2 total
Select a file
Select a file to preview.

Comments

Loading comments…