DCFモデルビルダー

株式評価のための本格的なDCF(ディスカウント・キャッシュフロー)モデルを作成します。SEC提出書類やアナリストレポートから財務データを取得し、適切なWACC計算に基づく包括的なキャッシュフロー予測、感応度分析を実施し、プロフェッショナルなExcelモデルをエグゼクティブサマリーとともに出力します。ユーザーがDCF手法による企業評価、本源的価値分析、成長予測とターミナルバリュー計算を含む詳細な財務モデリングを求める場合に使用します。

DCFモデルビルダー とは?

このスキルは、投資銀行基準に準拠した機関投資家向けDCFモデルを構築するためのものです。ユーザーが企業の本源的価値を分析したい場合、SEC提出書類やアナリストレポートから財務データを取得し、収益予測、WACC計算、ターミナルバリュー、感応度分析を経て、完全なExcelモデルを生成します。主なプラットフォームはExcel(Office JSアドイン環境またはスタンドアロン.xlsxファイル)で、Python/openpyxlまたはOffice JS APIの両方をサポートします。モデルはすべて数式ベースで構築され、仮定を変更すると自動的に再計算されるため、柔軟性が高く、ユーザーによるWhat-If分析が可能です。感応度テーブルは5×5または7×7の奇数グリッドで中心セルがベースケースとなるように設計され、中心セルは青色で強調表示されます。また、各ステップでユーザーとの確認を挟むことで、エラーを早期に発見し、モデルの正確性を高めます。

対応~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/wind-alice/alicemarket/tree/main/skills/dcf-model

Installed? Explore more 生産性&コラボレーション skills: steipete/gemini, steipete/gh-issues, steipete/skill-creator · View all 6 →

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

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

ドキュメント

DCFモデルビルダー は何をしますか?

概要

このスキルは、投資銀行基準に準拠した機関投資家向けDCF(ディスカウント・キャッシュフロー)モデルを作成します。各分析は、詳細なExcelモデル(感応度分析はDCFシートの下部に含まれます)を生成します。

ツール

  • ユーザーから提供された情報およびデータソーシングに利用可能なMCPサーバーをすべてデフォルトで使用します。

重要な制約 - 最初に必ず読んでください

これらの制約は、すべてのDCFモデル構築プロセスに適用されます。開始前に確認してください:

環境:Office JS vs Python/openpyxl:

  • Excel内で実行する場合(Officeアドイン / Office JS環境): Office JSを直接使用してください。Python/openpyxlは使用しないでください。range.formulas = [["=D19*(1+$B$8)"]] のように数式を記述します。再計算のための別途ステップは不要です。Excelがネイティブに計算します。スタイル設定には range.format.* を使用します。計算セルには数式を設定し、ハードコード値は使用しないという同じルールが適用されます。.formulas を設定し、派生セルには .values を決して設定しないでください。
  • スタンドアロンの .xlsx ファイルを生成する場合(ライブのExcelセッションなし): 以下に説明するようにPython/openpyxlを使用し、納品前に recalc.py を実行してください。
  • このスキルの残りの部分ではopenpyxlの例を使用していますが、その環境ではOffice JS API呼び出しに変換してください。ただし、すべての原則(数式文字列、セルコメント、セクションチェックポイント、感応度テーブルのループ)は同じように適用されます。

⚠️ Office JSのマージセルの落とし穴: セクションヘッダーをマージセルで構築する場合、マージされた範囲に対して .merge() を呼び出してから .values を設定しないでください。Office JSは範囲の元のサイズを報告し続けるため、InvalidArgument: The number of rows or columns in the input array doesn't match the size or dimensions of the range エラーが発生します。代わりに、値を左上のセルのみに書き込み、その後で範囲全体をマージしてフォーマットします:

// 間違い — InvalidArgumentが発生:
const hdr = ws.getRange("A7:H7");
hdr.merge();
hdr.values = [["MARKET DATA & KEY INPUTS"]];  // 1×1の配列 vs 1×8の範囲 → 失敗

// 正しい — 最初に単一セルに値を設定し、その後で範囲をマージ+フォーマット:
ws.getRange("A7").values = [["MARKET DATA & KEY INPUTS"]];
const hdr = ws.getRange("A7:H7");
hdr.merge();
hdr.format.fill.color = "#1F4E79";
hdr.format.font.bold = true;
hdr.format.font.color = "#FFFFFF";

これはDCF内のすべてのマージセクションヘッダー(マーケットデータ、シナリオブロック、キャッシュフロー予測、ターミナルバリュー、評価サマリー、感応度テーブル)に適用されます。

数式優先、ハードコード回避(譲歩不可):

  • すべての予測、マージン、割引係数、現在価値、感応度セルは、ライブのExcel数式でなければなりません。Pythonで計算して数値として書き込むことは絶対に避けてください。
  • openpyxlを使用する場合:ws["D20"] = "=D19*(1+$B$8)" が正しく、ws["D20"] = calculated_revenue は間違いです。
  • ハードコード値として許可されるのは次のものだけです:(1) 生の過去データ、(2) 仮定のドライバー(成長率、WACCインプット、ターミナルg)、(3) 現在の市場データ(株価、負債残高)。
  • Pythonで何かを計算し、その結果を書き込もうとしていることに気づいたら — すぐに止めてください。モデルはユーザーが仮定を変更したときに柔軟に再計算される必要があります。

ユーザーと段階的に確認する(エンドツーエンドで一気に構築しない):

  • データ取得後 → ユーザーに生のインプットブロック(収益、マージン、株式数、純負債)を表示し、投影前に確認を得る。
  • 収益予測後 → 予測されたトップラインと成長率を表示し、マージン構築前に確認を得る。
  • FCF構築後 → 完全なFCFスケジュールを表示し、WACC計算前にロジックを確認する。
  • WACC後 → 計算とインプットを表示し、割引前に確認を得る。
  • ターミナルバリュー+現在価値後 → 株式価値ブリッジ(EV → 株式価値 → 1株当たり価値)を表示し、感応度テーブル前に確認を得る。
  • 各段階でエラーを発見する — 間違ったマージン仮定を感応度テーブル構築後に発見すると、下流のすべてを再構築する必要があります。

感応度テーブル:

  • 行と列の数は奇数にします(標準:5×5、場合によっては7×7) — これにより真の中心セルが保証されます。
  • 中心セル=ベースケース。軸の値を設定して、中央の行ヘッダーと中央の列ヘッダーがモデルの実際の仮定と正確に一致するようにします(例:ベースWACC = 9.0%の場合、中央の行は9.0%、ターミナルg = 3.0%の場合、中央の列は3.0%)。したがって、中心セルの出力はモデルの実際の暗黙の株価と等しくなる必要があります — これがテーブルが正しく構築されていることの妥当性チェックです。
  • 中心セルを強調表示:中程度の青い塗りつぶし(#BDD7EE)+太字フォントで、どのセルがベースケースかを即座に視認できるようにします。
  • すべてのセル(通常は3つのテーブル×25セル=75)に完全なDCF再計算数式を入力します。
  • openpyxlのループ(またはOffice JSのループ)を使用して、プログラムで数式を記述します。
  • プレースホルダーテキスト、線形近似、手動ステップは禁止です。
  • 各セルは、その仮定の組み合わせに対して完全なDCFを再計算する必要があります。

セルコメント:

  • 各ハードコード値を作成するときに、セルコメントを追加します。
  • 形式:"出典:[システム/文書]、[日付]、[参照]、[該当する場合はURL]"
  • 次のセクションに進む前に、すべての青色のインプットにコメントが付いている必要があります。
  • 最後にまとめて追加したり、「TODO: 出典を追加」と書いたりしないでください。

モデルレイアウト計画:

  • 数式を書き始める前に、すべてのセクションの行位置を定義します。
  • 最初にすべてのヘッダーとラベルを記述します。
  • 2番目にすべてのセクション区切り線と空白行を記述します。
  • その後、固定された行位置を使用して数式を記述します。
  • 数式は作成後すぐにテストします。

数式の再計算:

  • 納品前に python recalc.py model.xlsx 30 を実行します。
  • ステータスが「成功」になるまで、すべてのエラーを修正します。
  • 数式エラーはゼロにする必要があります(#REF!、#DIV/0!、#VALUE! など)。

シナリオブロック:

  • ベア/ベース/ブルの各ケースに対して個別のブロックを作成します。
  • 各ブロック内で、予測期間全体にわたって仮定を横方向に表示します。
  • IF数式を使用:=IF($B$6=1,[Bearのセル],IF($B$6=2,[Baseのセル],[Bullのセル]))
  • 数式が正しいシナリオブロックのセルを参照していることを確認します。

DCFプロセスのワークフロー

ステップ1:データの取得と検証

MCPサーバー、ユーザー提供データ、およびウェブからデータを取得します。

データソースの優先順位:

  1. MCPサーバー(設定されている場合) - Daloopaなどのプロバイダーからの構造化財務データ
  2. ユーザー提供データ - ユーザーのリサーチによる過去の財務データ
  3. ウェブ検索/フェッチ - 必要に応じて現在の株価、ベータ、負債、現金

検証チェックリスト:

  • 純負債と純現金を確認(評価において重要)
  • 希薄化後の発行済株式数を確認(最近の自社株買い/発行をチェック)
  • 過去のマージンがビジネスモデルと整合していることを検証
  • 収益成長率を業界ベンチマークと相互確認
  • 税率が妥当であることを確認(通常21-28%)

ステップ2:過去の分析(3〜5年)

分析と文書化:

  • 収益成長トレンド:CAGRを計算し、ドライバーを特定
  • マージンの推移:粗利益率、EBITマージン、FCFマージンを追跡
  • 資本集約度:D&AおよびCapExの売上高に対する割合
  • 運転資本効率:NWC変化の売上高成長に対する割合
  • リターン指標:ROIC、ROEのトレンド

以下のようなサマリーテーブルを作成:

過去の指標(LTM):
収益:X百万ドル
収益成長率:X% CAGR
粗利益率:X%
EBITマージン:X%
D&Aの売上高比率:X%
CapExの売上高比率:X%
FCFマージン:X%

ステップ3:収益予測の構築

方法論:

  1. 最新の実際の収益(LTMまたは最新会計年度)から開始
  2. 各予測年度に成長率を適用
  3. 金額と計算された成長率%の両方を表示

成長率のフレームワーク:

  • 1〜2年目:短期的な可視性を反映した高めの成長
  • 3〜4年目:業界平均に向けて徐々に減速
  • 5年目以降:ターミナル成長率に近づく

数式構造:

  • 収益

Individual skills in this repo

This repo contains 19 individual skills — each has its own dedicated page.

wind-alice/add_to_winner_decision_skill

判断盈利仓是否适合继续加仓,并给出加仓前提、节奏安排、保护规则与停止扩张边界。适用于趋势延续、核心持仓滚动放大与强势股二次进攻场景。

wind-alice/after_close_watchlist_recap_skill

在收盘后总结自选股当日表现、驱动因素、强弱分化与次日观察点。适用于每日收盘复盘、维护自选股观察节奏、为次日盘前准备提供输入等场景。

wind-alice/a-share-primary-theme-identification

用于A股市场主线识别,聚焦市场结构 / 题材周期 / 资金行为。本skill主要用户问题回答、撰写报告、撰写金融类文章等场景。本报告输出内容较多,不适合简单对话场景。各类信息与数据的获取,可以使用wind.financial.data工具,以合理的关键字或关键字组合进行获取。每天开盘后、午盘、收盘后,用户都需要快速知道: 今天市场到底在交易什么,真正的主线是什么,情绪在什么位置,明天应该盯哪里。

wind-alice/avatar-charlie-munger-thinking

使用查理·芒格式的逆向思考、激励分析、认知偏误叠加和多学科模型检验复杂决策。用于评估商业与投资判断、组织行为、政策效果、重大选择、全民共识、失败风险,或识别论证中的单一视角和心理盲区。

wind-alice/avatar-nassim-taleb-risk

使用纳西姆·塔勒布式的尾部风险、利益共担、减法、林迪效应和杠铃策略分析不确定性。用于投资、商业、政策、职业、产品或个人决策中的出局风险、不可逆损失、脆弱性、代理问题、新旧方案比较和资源配置。

wind-alice/avatar-naval-ravikant-thinking

使用纳瓦尔·拉维坎特式的重新定义、欲望审计、特定知识和杠杆框架澄清职业、创业、财富、幸福、自由与人生选择。用于识别错误问题、冲突欲望、独特竞争力、AI替代风险、许可依赖、边际成本和长期复利方向。

wind-alice/avatar-warren-buffett-investing

使用沃伦·巴菲特式的能力圈、护城河、管理层诚信、所有者收益和资本配置框架分析企业与长期投资。用于研究公司商业模式、竞争优势、现金质量、管理层、估值、安全边际,或判断一项投资应继续研究、等待还是放弃。

wind-alice/backtest-expert

Expert guidance for systematic backtesting of trading strategies. Use when developing, testing, stress-testing, or validating quantitative trading strategies. Covers "beating ideas to death" methodology, parameter robustness testing, slippage modeling, bias prevention, and interpreting backtest results. Applicable when user asks about backtesting, strategy validation, robustness testing, avoiding overfitting, or systematic trading development.

wind-alice/breakout_candidate_finder_skill

批量识别突破形态成熟、量价结构健康、催化配合较好的候选股,并输出优先级、触发条件与失效边界。适用于短中线选股、盘前候选池整理、板块轮动中筛选领涨预备股等场景。

wind-alice/breakout_trade_execution_skill

围绕突破交易制定从观察、触发、跟进到失效处理的落地执行方案,兼顾量价确认、环境配合与失败撤退。适用于盘前预案、盘中突破跟踪与强势股首日执行场景。

wind-alice/bull_bear_case_builder_skill

同时搭建看多与看空逻辑,比较证据强弱、关键变量与情景路径,帮助识别核心分歧。适用于防止确认偏误、研究前辩论、投资观点校验等场景。

wind-alice/business_model_decoder_skill

把公司如何获客、交付、定价、赚钱和扩张的逻辑拆解清楚,帮助快速理解业务运转方式。适用于看不懂公司业务、研究前补基础、业务结构梳理等场景。

wind-alice/buyback_program_reviewer_skill

判断回购计划的规模、动机、执行约束与真实利好程度。适用于公司宣布回购、估值争议期、资本配置分析等场景。

wind-alice/canslim_growth_scan_skill

依据成长股框架批量筛选业绩、预期、相对强度与供需结构共振的强势标的,并输出候选分层与跟踪重点。适用于成长股猎手、趋势成长选股、候选池批量扫描等场景。

wind-alice/conference_call_takeaway_skill

提炼业绩会中的新信息、管理层语气变化、问答焦点与潜在警讯。适用于听完业绩会、阅读纪要后快速更新观点等场景。

wind-alice/daily_watchlist_morning_brief_skill

为自选股生成盘前简报,汇总隔夜公告、新闻、价格变化、事件日程与今日观察重点。适用于开盘前快速浏览重点、晨会准备、盘前设定观察顺序等场景。

wind-alice/dip_buy_decision_skill

判断下跌或回调中的个股是否值得承接,并给出观察区、试错条件、分批节奏与放弃标准。适用于趋势回踩、事件后回落、震荡低吸与左侧谨慎试错场景。

wind-alice/dividend_change_explainer_skill

解读分红提升、削减、暂停或恢复背后的原因、持续性与投资含义。适用于收益型投资判断、公告复盘、长期现金流跟踪等场景。

wind-alice/dividend_growth_entry_skill

寻找股息持续增长、经营质量稳定且估值回落到合理区间的候选股,并输出入场观察区、成长支撑与失效边界。适用于收益成长双目标选股、长期配置、回调布局等场景。

関連スキル