Aportia Docs
Stocks & REITs

Valuation Models

Valuation models estimate a stock's intrinsic fair value — the price at which it should theoretically trade based on its financials and a required rate of return. These are analytical tools, not investment advice.

Discount Rate (CAPM)

Before any valuation model runs, Aportia calculates the required rate of return k using the Capital Asset Pricing Model. This is the minimum return an investor should expect given the asset's risk level.

Formula: k = Risk-Free Rate + Beta × Equity Risk Premium

ParameterDefault valueMeaning
Risk-Free Rate (Rf)4.3%Approximate yield on long-term US Treasuries
Equity Risk Premium (ERP)5.0%Historical average excess return of equities over risk-free assets
BetaCalculated (or 1.0 if unavailable)Asset's market sensitivity

The resulting k is always clamped between 6% and 15% to prevent unrealistic discount rates from extreme Beta values.

📖 Investopedia — CAPM

Gordon Growth Model — Fair Price

The Gordon Growth Model estimates intrinsic value as the present value of all future dividends, assuming they grow at a constant perpetual rate.

Formula: Fair Price = D₁ / (k − g) where D₁ = D₀ × (1 + g)

ParameterSource
D₀Current annual dividend per share
gGrowth rate = min(5-year Dividend CAGR, 8%) — capped at 8% for sustainability
kDiscount rate from CAPM

Internal safety rules for g:

  • g is always non-negative (negative growth blocks the model)
  • g is capped at min(5%, k − 2%) inside the formula, ensuring a minimum spread of 2% between k and g

Sanity checks — the result is discarded if:

  1. Fair Price < 20% of the current price (the dividend yield is too low relative to the price for DDM to be applicable)
  2. Fair Price > 5× the current price (the spread k−g is unrealistically thin)

Not shown when:

  • The company pays no dividend
  • Dividend history is older than 10 years
  • Dividend CAGR is negative
  • Dividend CAGR is based on less than 3 years of data
  • Either sanity check fails

📖 Investopedia — Gordon Growth Model

Gordon Max Buy Price

The maximum price at which to buy while still maintaining a margin of safety below the Gordon Fair Price.

Formula: Max Buy Price = Gordon Fair Price × (1 − Margin of Safety)

Default margin of safety: 10% (configurable from 0% to 50%).

📖 Investopedia — Margin of Safety

DCF Fair Price — Discounted Cash Flow Model

The DCF model is used when dividend history is insufficient but the company generates positive Free Cash Flow. It estimates fair value by projecting future cash flows and discounting them back to today.

Aportia uses a two-phase model over 10 years:

Phase 1 (Years 1–5): Cash flows grow at the recent revenue growth rate g1, clamped between −5% and +30%.

Phase 2 (Years 6–10): Growth decelerates linearly from g1 toward a terminal growth rate g_terminal (default: 3%, clamped between 1% and 4%).

Terminal Value (the value of all cash flows beyond year 10, using the Gordon formula applied to FCF):

Terminal Value = FCF_year10 × (1 + g_terminal) / (k − g_terminal)

All future cash flows and the terminal value are discounted back to the present using the CAPM discount rate k. The result is divided by shares outstanding to give a per-share fair value.

Not shown when:

  • FCF is zero or negative
  • k ≤ g_terminal (the denominator of the terminal value formula would be invalid)
  • The resulting fair price is less than 10% of the current price

📖 Investopedia — DCF

DCF Max Buy Price

Formula: DCF Max Buy Price = DCF Fair Price × (1 − Margin of Safety)

Same logic as the Gordon Max Buy Price, applied to the DCF valuation.

On this page