| name | fund-manager |
| description | 中国公募基金投资管理 CLI 工具。使用场景:(1) 用户询问基金持仓、基金盈亏;(2) 用户询问"我的基金"、"基金状态";(3) 用户想要买入/卖出基金;(4) 用户想要同步基金净值、查看基金历史;(5) 用户想要管理钱包、导入持仓;(6) 用户想要查看市场指数行情;(7) 用户想要记录分红/红利再投。 |
| metadata | {"openclaw":{"requires":{"bins":["bash","curl","tar","unzip"],"env":["FUND_MANAGER_REPO"]}}} |
fund-manager
中国公募基金投资管理 CLI 工具,支持基金持仓追踪、盈亏计算、从东方财富和晨星同步净值数据。
项目位置
skills/fund-manager/ - Rust CLI 项目
运行方式
使用 bootstrap 脚本(推荐):
cd skills/fund-manager
chmod +x scripts/bootstrap.sh
./scripts/bootstrap.sh --help
Bootstrap 脚本行为:
- 首次运行:识别当前平台并从 GitHub Releases 下载
fund-manager 核心二进制
- 后续运行:复用本地缓存(
~/.cache/fund-manager/bin/),避免重复下载
- 缓存损坏:自动重新下载
开发命令(源码模式)
cd skills/fund-manager && cargo build
cd skills/fund-manager && cargo run -- [args]
二进制下载配置
必选(未设置 FUND_MANAGER_CORE_URL 时)
FUND_MANAGER_REPO:GitHub 仓库路径 (例如 yinzhenyu-su/skills),默认 yinzhenyu-su/skills
FUND_MANAGER_GITHUB_TOKEN:GitHub 访问令牌(私有仓库或避免 API 限制时使用,也可直接使用 GITHUB_TOKEN)
可选
FUND_MANAGER_VERSION:下载版本,默认 latest
FUND_MANAGER_CORE_URL:覆盖默认下载地址
FUND_MANAGER_CORE_SHA256:归档校验值
FUND_MANAGER_GITHUB_BASE_URL:GitHub 基础地址,默认 https://github.com
FUND_MANAGER_CACHE_DIR:本地缓存目录
示例
./scripts/fund-manager.sh status
export FUND_MANAGER_REPO="yinzhenyu-su/skills"
./scripts/fund-manager.sh status
export FUND_MANAGER_REPO="owner/private-repo"
export FUND_MANAGER_GITHUB_TOKEN="<your-token>"
./scripts/fund-manager.sh fund list
export FUND_MANAGER_VERSION="0.1.0"
./scripts/fund-manager.sh status
CLI 概述
- 二进制名:
fund-manager
- 全局参数:
-y/--yes 跳过交互确认
- 退出码:
0 成功、1 错误、3 需要确认
核心命令
钱包管理
fund-manager wallet add <名称>
fund-manager wallet list
fund-manager wallet use <名称>
fund-manager wallet delete <名称>
fund-manager wallet rename <旧名> <新名>
基金追踪
fund-manager fund add <基金代码> [--fee <费率>]
fund-manager fund delete <基金代码>
fund-manager fund list [--wallet <钱包>]
fund-manager fund inspect <基金代码> [--force]
fund-manager fund config <基金代码> --dividend-mode reinvest
净值同步
fund-manager fund sync <基金代码>
fund-manager fund sync --all
fund-manager fund sync --all --auto-fill
fund-manager fund sync <基金代码> --start 2024-01-01
持仓与交易
fund-manager status [基金代码] [--wallet <钱包>]
fund-manager buy <基金代码> --money <金额>
fund-manager buy <基金代码> --shares <份额> --nav <净值>
fund-manager sell <基金代码> --shares <份额>
fund-manager sell <基金代码> --shares all
fund-manager sell <基金代码> --shares 1/2
fund-manager history [基金代码] [--type buy|sell|dividend|reinvest|import] [--limit N]
fund-manager preview buy <基金代码> --money <金额>
fund-manager preview sell <基金代码> --shares <份额>
分红记录
fund-manager dividend <基金代码> --money <金额>
fund-manager reinvest <基金代码> --shares <份额>
持仓导入
fund-manager import-holding --file <CSV文件>
市场指数
fund-manager market
fund-manager market 沪深300 纳斯达克
fund-manager market --fx
fund-manager market --com
fund-manager market --detail
数据存储
- SQLite 数据库:
~/.config/fund-manager/fund.db
- 可通过
FUND_MANAGER_APP_DIR 环境变量覆盖
GitHub Actions 产物规范
支持以下 6 种平台/架构组合:
- Linux:
fund-manager-v<version>-x86_64-unknown-linux-gnu.tar.gz
- Linux ARM:
fund-manager-v<version>-aarch64-unknown-linux-gnu.tar.gz
- macOS:
fund-manager-v<version>-x86_64-apple-darwin.tar.gz
- macOS Apple Silicon:
fund-manager-v<version>-aarch64-apple-darwin.tar.gz
- Windows:
fund-manager-v<version>-x86_64-pc-windows-gnu.zip
- Windows ARM:
fund-manager-v<version>-aarch64-pc-windows-gnullvm.zip
默认下载路径(GitHub Release):
{GITHUB_BASE_URL}/{REPO}/releases/download/v{VERSION}/{ASSET_NAME}
常见问题
401 Unauthorized:检查 FUND_MANAGER_GITHUB_TOKEN 是否有效。
404 Not Found:检查 FUND_MANAGER_VERSION 与平台产物名是否存在。
- 下载后执行失败:删除缓存目录后重试。
注意事项
- 所有金额使用
rust_decimal::Decimal 精度,无浮点数误差
- 日期格式统一为
YYYY-MM-DD
- 基金代码为 6 位数字
- 买入时若净值不可用,交易状态为
pending,净值同步后自动结算
- 卖出时使用前一交易日净值(若当日净值未发布)