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. 05Markdownと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 レポートを生成します。

手順

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

引数

  • directory - IBRK 取引 CSV ファイルが格納されたディレクトリへのパス
  • --port - 未実現損益を取得するための IB ポート(7497=ペーパー、7496=ライブ)。指定しない場合は両方のポートを自動的に調べます(7496 を先に試し、次に 7497 を試します)。IB_PORT 環境変数が設定されている場合は、その値がデフォルトになります(--port が優先されます)。
  • --output-dir - レポートの出力ディレクトリ(デフォルト:sandbox/)

統合ロジック

次の項目ごとに取引をグループ化します。

  • UnderlyingSymbol - 原資産のティッカー(例:GOOG、CAT)
  • Symbol - オプションの完全なシンボル
  • TradeDate - 取引日
  • Strike - 権利行使価格
  • Put/Call - オプションの種類(C または P)
  • Buy/Sell - 取引の方向
  • Open/CloseIndicator - 新規建てか決済か

次の項目を集計します。

  • Quantity - 数量の合計
  • Proceeds - 売却代金の合計
  • NetCash - 純現金額の合計
  • IBCommission - 手数料の合計
  • FifoPnlRealized - 実現損益の合計

次の列を追加します。

  • Position - SHORT(Sell+Open)、LONG(Buy+Open)、CLOSE_SHORT(Buy+Close)、CLOSE_LONG(Sell+Close)

出力

出力ディレクトリに次の 2 つのファイルを生成します。

  • consolidated_trades_YYYY-MM-DD_HHMM.md - サマリーテーブルを含む Markdown レポート
  • consolidated_trades_YYYY-MM-DD_HHMM.csv - 統合されたすべてのデータを含む CSV

使用例

# 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"

タイムゾーン

すべてのタイムスタンプと時刻に基づく計算には、America/New_York タイムゾーンを使用する必要があります。すべての JSON 出力には、generated_at(ニューヨーク時間の文字列)と data_delay フィールドを含める必要があります。

コメント