Claude Code Plugins

Community-maintained marketplace

Feedback

current-holdings

@codehehe/finance_skills
1
1

用于获取我的真实持仓

Install Skill

Shared

Installs to .agents/skills, used by Codex, Amp, Warp, Cursor, OpenCode, and more.

CodexAmp
Warp
CursorOpenCode
Cline
Gemini CLI
GitHub Copilot
Personal

Available across projects.

$npx skills-installer add @codehehe/finance_skills/current-holdings --client shared
Project

Writes to .agents/skills.

$npx skills-installer add @codehehe/finance_skills/current-holdings -p --client shared
Note: Review the skill instructions before using it.

SKILL.md

name current-holdings
description 用于获取我的真实持仓
tools curl

通过http接口调用,获取当前持仓信息:

获取所有持仓明细

curl -s "http://localhost:8000/api/v1/holdings/current"

根据资产大类,获取持仓比例

curl -s "http://localhost:8000/api/v1/analysis/allocation/by-tags"

持仓快照功能

快照功能用于记录特定时间点的持仓状态,支持日、周、月三种类型的快照对比分析。

快照自动创建机制

  • 日快照: 每次查询持仓时自动创建(如果当天还没有)
  • 周快照: 每周日查询时自动创建
  • 月快照: 每月最后一天查询时自动创建

快照 ID 格式:YYYYMMDDHHMM(例如:202601261723)

API 接口详解

1. 快照对比 - 期间盈亏分析

用于对比当前持仓与上一期快照的变化,是日报/周报/月报的核心数据源。

# 日对比 - 对比今天 vs 昨天
curl -s "http://localhost:8000/api/v1/analysis/snapshot/compare?period=daily"

# 周对比 - 对比本周日 vs 上周日
curl -s "http://localhost:8000/api/v1/analysis/snapshot/compare?period=weekly"

# 月对比 - 对比本月末 vs 上月末
curl -s "http://localhost:8000/api/v1/analysis/snapshot/compare?period=monthly"

响应格式 (有历史数据时):

{
  "current": {
    "snapshot_id": "202601271700",
    "snapshot_time": "2026-01-27 17:00:00",
    "total_value": 3050000.00,
    "total_profit": 180000.00,
    "allocation": {...}
  },
  "previous": {
    "snapshot_id": "202601261723",
    "snapshot_time": "2026-01-26 17:23:19",
    "total_value": 3025018.81,
    "total_profit": 155679.68,
    "allocation": {...}
  },
  "comparison": {
    "value_change": 24981.19,
    "value_change_pct": 0.83,
    "profit_change": 24320.32,
    "profit_change_pct": 15.62,
    "allocation_changes": [
      {
        "category": "美股指数",
        "value_change": 13500.00,
        "value_change_pct": 1.21,
        "contribution": 54.0
      }
    ]
  }
}

首次使用响应 (无历史数据时):

{
  "error": "没有找到上一期快照",
  "message": "这是您的第一次报告,暂无历史数据对比"
}

2. 快照列表查询

查询历史快照记录,用于查看快照历史或选择特定快照。

# 查询最近5个日快照
curl -s "http://localhost:8000/api/v1/analysis/snapshot/list?type=daily&limit=5"

# 查询所有周快照
curl -s "http://localhost:8000/api/v1/analysis/snapshot/list?type=weekly"

# 查询所有月快照
curl -s "http://localhost:8000/api/v1/analysis/snapshot/list?type=monthly"

响应格式:

{
  "total": 5,
  "items": [
    {
      "snapshot_id": "202601271700",
      "snapshot_type": "daily",
      "snapshot_time": "2026-01-27 17:00:00",
      "total_value": 3050000.00,
      "total_profit": 180000.00
    },
    {
      "snapshot_id": "202601261723",
      "snapshot_type": "daily",
      "snapshot_time": "2026-01-26 17:23:19",
      "total_value": 3025018.81,
      "total_profit": 155679.68
    }
  ]
}

3. 快照详情查询

获取指定快照的完整数据,包括所有资产类别的详细配置。

# 通过快照 ID 查询详情
curl -s "http://localhost:8000/api/v1/analysis/snapshot/202601261723"

响应格式:

{
  "snapshot_id": "202601261723",
  "snapshot_type": "daily",
  "snapshot_time": "2026-01-26 17:23:19",
  "total_value": 3025018.81,
  "total_cost": 2869339.13,
  "total_profit": 155679.68,
  "total_profit_pct": 5.43,
  "allocation": [
    {
      "tag_name": "美股指数",
      "market_value": 1113616.55,
      "cost": 1025775.58,
      "profit": 87840.97,
      "profit_pct": 8.56,
      "weight": 36.8,
      "count": 10
    }
  ]
}

集成使用场景

Portfolio-Report 日报生成

# 1. 获取当前持仓(自动创建今日快照)
HOLDINGS=$(curl -s "http://localhost:8000/api/v1/holdings/current")

# 2. 获取日对比数据
COMPARE=$(curl -s "http://localhost:8000/api/v1/analysis/snapshot/compare?period=daily")

# 3. 检查是否有历史数据
if echo "$COMPARE" | grep -q "error"; then
  # 首次使用,只显示当前状态
  echo "这是您的第一次日报,暂无昨日对比数据"
else
  # 展示今日盈亏变化
  echo "今日盈亏: $(echo "$COMPARE" | jq -r '.comparison.value_change')"
fi

Portfolio-Report 周报生成

# 周日运行,对比本周 vs 上周
curl -s "http://localhost:8000/api/v1/analysis/snapshot/compare?period=weekly"

Portfolio-Report 月报生成

# 月末运行,对比本月 vs 上月
curl -s "http://localhost:8000/api/v1/analysis/snapshot/compare?period=monthly"

注意事项

  1. 首次使用: 第一次调用 compare 接口时会返回"无历史快照"错误,这是正常的
  2. 快照触发: 快照在查询持仓时自动创建,无需手动触发
  3. 数据完整性: 每个快照包含完整的 allocation 数据,可用于历史回溯
  4. 时间精度: 快照 ID 精确到分钟,同一分钟内不会重复创建
  5. 数据保留: 所有历史快照永久保存(除非手动清理)