Communityライティング&編集github.com

Ceschiu/finance-portfolio

バイサイド職向けの技術準備キット:Pythonによるポートフォリオ分析、Claudeエージェントスキル、Excel用VBAマクロ、SQL演習を含みます。

finance-portfolio とは?

このスキルは、企業価値評価のための割引キャッシュフロー(DCF)分析を自動化します。ユーザーが提供するフリーキャッシュフロー(FCFF)、加重平均資本コスト(WACC)、ターミナル成長率(g)、純債務、発行済株式数をもとに、Pythonスクリプトを実行してエンタープライズバリュー、エクイティバリュー、1株あたりの公正価値を計算します。また、WACCとgに対する感応度テーブルを生成し、結果を表形式で表示します。このスキルは財務機関には使用せず、入力値の検証(負のキャッシュフローやg ≥ WACCの警告)や欠損値の処理など、エッジケースにも対応しています。主にClaude CodeやCursorなどのAIエージェントプラットフォームで使用されることを想定しており、Skill.mdに定義されたJSONスキーマに従い入出力を行います。

対応✓Claude Code~Codex CLI~Cursor
npx skills add Ceschiu/finance-portfolio

Installed? Explore more ライティング&編集 skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

DCFアナライザー

このスキルを使用するタイミング

企業の割引キャッシュフロー(DCF)評価を構築します。ユーザーが企業のFCFとWACCを提供した場合、企業の本源的価値を尋ねた場合、または1株あたりの公正価値を尋ねた場合に使用します。対象企業が金融機関である場合は使用しないでください。

入力

  1. FCFF(フリーキャッシュフロー・トゥ・ザ・ファーム):N年間(N = len(FCFF))
  2. WACC(加重平均資本コスト)またはそのすべての構成要素(株主資本コスト、負債コスト、税率、E/V、D/V)
  3. ターミナル成長率g
  4. 企業の純負債(NetDebt)
  5. 発行済株式数(NShares)

ユーザーはメッセージまたはCSVでデータを提供できます。スキルはそれらを統合し、コントラクトに従ってinput.jsonを作成します。

手順

  1. 入力値を確認します。指標、値、符号を考慮します(負のCFなし、g < WACC)。
  2. すべての入力が正しい場合、必要に応じて変換します(例:パーセントを小数に変換:WACC、g、Ke、t...)。
  3. WACCが直接与えられていない場合(その構成要素が与えられている場合)、WACCを計算します。
  4. 入力を一時的なJSONに書き込み、scripts/dcf.py <path>をBash経由で実行し、stdoutからJSONをパースします。
  5. WACCとgに関する感応度テーブルを作成します。

出力

企業のエンタープライズバリュー、エクイティバリュー、および1株あたりの公正価値の表を、感応度テーブルとともに関係します。表の下に、結果に関する簡単なコメントを添えます。

エッジケース

  • g ≥ WACCの場合、警告を返し、ユーザーに有効な値を求めます。
  • 感応度テーブルのセルでgがWACCより大きい場合、対応するfv_shareはnullになります。
  • FCFがすべて負の場合、警告を返し、計算しません。
  • 値が欠損している場合、ユーザーにその値が欠損しているかどうかを尋ね、代わりにどの値を使用するかを確認します。
  • 計算中にその他のエラーが発生した場合、問題を説明する警告を返します。

コントラクト

スキルはinput.jsonを作成します。これはPythonスクリプトscripts/dcf.pyへの入力です。Bashでpython scripts/dcf.py input.jsonを実行します。

INPUTスキーマ(キー):

{
  "FCFF": [float, ...],
  "WACC": float | null,
  "g": float,
  "NetDebt": float,
  "NShares": float,
  "E_V": float | null,
  "Ke": float | null,
  "D_V": float | null,
  "Kd": float | null,
  "t": float | null,
  "wacc_steps": [float, ...] | null,
  "g_steps": [float, ...] | null
}

欠損値にはnullを使用します。Nはlen(FCFF)から導出されます。WACCがnullの場合、その構成要素(E_V, Ke, D_V, Kd, t)はすべて提供される必要があります。

スクリプトはJSONオブジェクトをstdoutに出力し、スキルがそれをパースします。

OUTPUTスキーマ(成功時):

{
  "ok": true, "error": null, "field": null,
  "enterprise_value": float,
  "equity_value": float,
  "fair_value_per_share": float,
  "sensitivity": [{"wacc": float, "g": float, "fv_share": float | null}, ...]
}

OUTPUTスキーマ(エラー時):

{"ok": false, "error": "<message>", "field": "<key>"}

参考資料

すべての計算式についてはreferences/dcf_methodology.mdを使用してください。

関連スキル