07 · Financial Modeling Techniques¶
This module covers the core building blocks of a financial model: NPV, IRR, amortization schedules, and structuring a model with clearly separated inputs, calculations, and outputs — the standard layout professional analysts use.
1. Worked dataset — an investment decision¶
Build this on a sheet named Model, A1:B6:
| A | B | |
|---|---|---|
| 1 | Initial Investment | -10000 |
| 2 | Year 1 Cash Flow | 3000 |
| 3 | Year 2 Cash Flow | 4000 |
| 4 | Year 3 Cash Flow | 5000 |
| 5 | Year 4 Cash Flow | 3500 |
| 6 | Discount Rate | 0.10 |
2. NPV¶
- In
B8:=B1+NPV(B6,B2:B5)NPV()discounts a series of future cash flows (it assumes the first value in the range occurs one period from now), so the upfront investment inB1(which happens at time 0) is added separately, outside the NPV function. - Manual check, discounting each flow by
1.10^n: Year1:3000/1.10 = 2727.27Year2:4000/1.10^2 = 4000/1.21 = 3305.79Year3:5000/1.10^3 = 5000/1.331 = 3756.57Year4:3500/1.10^4 = 3500/1.4641 = 2390.55Sum of discounted flows:2727.27+3305.79+3756.57+2390.55 = 12180.18. AddB1 = -10000: NPV ≈2180.18. A positive NPV means the investment is expected to create value at a 10% discount rate.
3. IRR¶
- In
B9:=IRR(B1:B5)IRR is the discount rate at which NPV would be exactly zero. - Sanity check: since NPV at 10% is positive (
+2180.18), the true IRR must be higher than 10% (a higher discount rate shrinks NPV toward zero). Excel's IRR should return roughly21%— confirm the returned rate is indeed above 10%, consistent with the NPV sign.
4. Amortization schedule¶
Build a loan schedule for a 20000 loan at 6% annual, 5 years,
E1:H6:
| E | F | G | H | |
|---|---|---|---|---|
| 1 | Year | Payment | Interest | Principal |
| 2 | 1 | =-PMT($B$6,5,20000) |
=20000*$B$6 |
=E2payment-G2 |
Simplify with concrete formulas instead, E1:H6:
F2:=-PMT(0.06,5,20000)≈4747.11(annual payment).G2(Year 1 interest):=20000*0.06 = 1200.H2(Year 1 principal repaid):=F2-G2 ≈ 4747.11-1200=3547.11.- Remaining balance after Year 1:
20000-3547.11=16452.89. Year 2 interest:=16452.89*0.06≈987.17. Year 2 principal:≈4747.11-987.17=3759.94. Notice interest shrinks and principal grows each year as the balance declines — the hallmark shape of an amortization schedule.
5. Sensitivity — separating inputs from calculations¶
- Best practice: keep every raw assumption (discount rate, growth
rate, loan rate) in a clearly labeled "Inputs" block (like
B1:B6here), and have every calculation formula reference those cells — never hardcode a rate inside a calculation formula. This is why Section 2's NPV formula references$B$6rather than typing0.10directly: changing one input cell should flow through the entire model. - Test this: change
B6from0.10to0.08and confirmB8's NPV recalculates upward (a lower discount rate increases the present value of future cash flows) without editing any other formula.
Cheat sheet¶
| Function | Purpose |
|---|---|
NPV(rate, values) |
Present value of a series of future cash flows |
IRR(values) |
Discount rate that makes NPV = 0 |
PMT(rate,nper,pv) |
Fixed periodic payment for a loan/annuity |
| Amortization | Interest = balance × rate; Principal = Payment − Interest |
How It Actually Works¶
Functions like NPV, IRR, and XIRR aren't simple aggregations — they
implement genuine numerical algorithms under a friendly one-line interface.
NPV performs a straightforward geometric-series discount calculation, but
IRR has no closed-form algebraic solution for cash flows beyond two
periods, so Excel solves it the same way Goal Seek solves any equation:
iteratively, starting from an initial guess (0.1 by default) and refining
it via a numerical method (Excel uses an iterative approach similar to
Newton's method) until successive estimates converge within a tolerance or
a maximum iteration count is hit — which is exactly why IRR can return
#NUM! on cash flow patterns with multiple sign changes: those can have
more than one mathematically valid rate of return, and the iteration can
converge to a different one than expected, or fail to converge at all,
depending on the guess. This is also why circular financial models
(interest expense depending on a debt balance that depends on cumulative
cash flow that depends on interest expense) require Excel's iterative
calculation mode: the dependency graph's normal requirement — that
evaluation order be a strict topological sort with no cycles — is
deliberately relaxed, and the engine instead repeatedly re-evaluates the
circular cells for a fixed number of iterations or until values stop
changing beyond a set tolerance.
Exercise¶
Recompute NPV at a discount rate of 15% instead of 10% and confirm
it drops compared to Section 2's 2180.18 (a higher discount rate
always lowers NPV, all else equal) — then check whether it goes
negative, which would mean the investment fails to clear a 15% hurdle
rate.