mcpField
I
ib-create-consolidated-report

ib-create-consolidated-report

github.com/staskh数据与数据库39476 次安装1 天前更新
代码仓库

关于 ib-create-consolidated-report

ib-create-consolidated-report 是一项汇总 Interactive Brokers 交易 CSV 文件的技能,可按交易及合约字段分组,汇总数量、现金和损益数据,并生成 Markdown 与 CSV 报告。

主要功能

  1. 01读取目录中的 CSV 文件
  2. 02按合约及交易字段分组
  3. 03汇总数量、收入、现金、佣金和损益
  4. 04标记持仓类型
  5. 05导出 Markdown 和 CSV 报告

适用场景

  1. 01合并多个 CSV 文件中的交易记录
  2. 02按股票代码、期权和日期汇总交易
  3. 03查看汇总收入与已实现损益

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/staskh/trading_skills --skill ib-create-consolidated-report

安装后在 Claude Code 中输入/ib-create-consolidated-report确认已加载。

附带文件scripts/consolidate.py

详细介绍

IB Create Consolidated Report

读取指定目录中的所有 CSV 文件(不包括子目录),按关键字段汇总交易数据,并生成 Markdown 和 CSV 报告。

Instructions

uv run python scripts/consolidate.py <directory> [--port PORT] [--output-dir OUTPUT_DIR]

Arguments

  • directory - 存放 IBRK 交易 CSV 文件的目录路径
  • --port - 用于获取未实现盈亏的 IB 端口(7497=模拟盘,7496=实盘)。如果未指定,则自动探测两个端口(先尝试 7496,再尝试 7497)。如果设置了 IB_PORT 环境变量,则默认使用其值(--port 优先级更高)。
  • --output-dir - 报告的输出目录(默认:sandbox/)

Consolidation Logic

按以下字段对交易进行分组:

  • UnderlyingSymbol - 标的代码(例如 GOOG、CAT)
  • Symbol - 完整期权代码
  • TradeDate - 交易日期
  • Strike - 行权价
  • Put/Call - 期权类型(C 或 P)
  • Buy/Sell - 交易方向
  • Open/CloseIndicator - 开仓或平仓

汇总:

  • Quantity - 数量总和
  • Proceeds - 收益总和
  • NetCash - 净现金总和
  • IBCommission - 佣金总和
  • FifoPnlRealized - 已实现盈亏总和

添加列:

  • Position - SHORT(卖出+开仓)、LONG(买入+开仓)、CLOSE_SHORT(买入+平仓)、CLOSE_LONG(卖出+平仓)

Output

在输出目录中生成两个文件:

  • consolidated_trades_YYYY-MM-DD_HHMM.md - 包含汇总表格的 Markdown 报告
  • consolidated_trades_YYYY-MM-DD_HHMM.csv - 包含所有汇总数据的 CSV 文件

Example Usage

# Consolidate trades from IBRK reports directory
uv run python scripts/consolidate.py "C:\Users\avrah\OneDrive\Business\Trading\IBRK reports\2stastrading2025"

# Specify custom output directory
uv run python scripts/consolidate.py "C:\path\to\reports" --output-dir "C:\output"

Timezone

所有时间戳和基于时间的计算都必须使用 America/New_York 时区。所有 JSON 输出都必须包含 generated_at(纽约时间字符串)和 data_delay 字段。

评论

支持 Markdown