dcf-model

Build DCF valuation models in Excel with scenarios, WACC, and sensitivity tables.

Updated Jun 7, 2026
One-click install
npx skills add https://github.com/Chensihakniroth/ANAKOT-AGENT --skill dcf-model-chensihakniroth
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: dcf-model
Source: https://github.com/Chensihakniroth/ANAKOT-AGENT/tree/main/optional-skills/finance/dcf-model
Command: npx skills add https://github.com/Chensihakniroth/ANAKOT-AGENT --skill dcf-model-chensihakniroth

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires openpyxl, requests, and includes scripts (resource) components.

What problem does it solve? Building an institutional-quality discounted cash flow model in Excel is slow and error-prone: formulas break when rows shift, sensitivity tables get left as placeholders, and assumptions lack source documentation. This Skill produces a complete, formula-driven DCF workbook that recalculates cleanly and flexes when assumptions change. ## Core Features & Use Cases - Full DCF Workflow in Excel: Generates revenue projections, FCF build, WACC via CAPM, terminal value, and an enterprise-to-equity bridge using live Excel formulas written with openpyxl — never hardcoded computed values. - Bear/Base/Bull Scenarios: Organizes assumptions into three scenario blocks with a case selector and INDEX-based consolidation column so the model switches scenarios instantly. - 5x5 Sensitivity Tables: Populates all 75 cells across three tables (WACC vs terminal growth, revenue growth vs EBIT margin, beta vs risk-free rate) with full DCF recalculation formulas, centered on the base case. - Validation & Recalculation: Ships a validate_dcf.py script that checks formula errors, terminal growth vs WACC, WACC range, and terminal value proportion, plus mandatory recalc.py runs before delivery. - Use Case: Ask for a DCF on a ticker like AAPL and receive a two-sheet Excel model (DCF + WACC) with sourced cell comments, scenario switching, and working sensitivity grids ready for investment committee review. ## Quick Start Build a DCF valuation model for Apple with Bear, Base, and Bull scenarios and sensitivity tables in Excel.

Frequently Asked Questions about dcf-model

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I build a DCF model in Excel with Python?▼

Use openpyxl to write live Excel formulas for revenue projections, FCF, WACC, and terminal value rather than hardcoded values. This Skill generates the full workbook, then recalculates it with recalc.py to confirm zero formula errors before delivery.

How to create sensitivity tables in Excel without Data Tables?▼

Write a full DCF recalculation formula into every cell of a 5x5 grid using openpyxl loops, referencing the row and column header assumptions. Use odd dimensions so the center cell equals the base case implied share price.

Does the DCF model support Bear, Base, and Bull scenarios?▼

Yes. Assumptions are organized into three separate scenario blocks with a case selector cell (1, 2, or 3). A consolidation column with INDEX formulas pulls the active scenario, so projections update when the selector changes.

Why does my DCF model show #REF! or #DIV/0! errors?▼

#REF! errors usually come from writing formulas before locking the row layout, so references shift when headers are inserted. #DIV/0! comes from empty divisors; wrap divisions in IF checks. Run validate_dcf.py to locate all error cells.

What happens if terminal growth exceeds WACC in a DCF?▼

Terminal growth greater than or equal to WACC makes the perpetuity formula produce infinite or negative value, which is mathematically invalid. The validation script flags this as a critical error and the model must be corrected.

What are the limitations of this DCF modeling approach?▼

The model is built headless with openpyxl, so Excel's native Data Table feature cannot be used and sensitivity grids rely on explicit formulas. It also depends on external data sources for historicals, beta, and market prices, which the user must supply or fetch.