diff options
| author | Tyler Hoang <tyler@tylerhoang.xyz> | 2026-05-18 01:21:40 -0700 |
|---|---|---|
| committer | Tyler Hoang <tyler@tylerhoang.xyz> | 2026-05-18 01:23:26 -0700 |
| commit | 8a7dff97216fd301c7f3c4f20bebec917451d911 (patch) | |
| tree | a035de96b5a34c433469e1a70c5d6a90bd0f959c /backend/app/schemas.py | |
| parent | dbd591e4e5eceb789cf2d841248632886fa9a2bd (diff) | |
feat: add DcfResult, MultipleResult, ValuationResponse schemas
Diffstat (limited to 'backend/app/schemas.py')
| -rw-r--r-- | backend/app/schemas.py | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/backend/app/schemas.py b/backend/app/schemas.py index 86f586c..87acd0d 100644 --- a/backend/app/schemas.py +++ b/backend/app/schemas.py @@ -128,6 +128,42 @@ class FinancialsResponse(BaseModel): cash_flow: FinancialStatement +class DcfResult(BaseModel): + available: bool = True + error: str | None = None + intrinsic_value_per_share: float | None = None + enterprise_value: float | None = None + equity_value: float | None = None + net_debt: float | None = None + cash_and_equivalents: float | None = None + total_debt: float | None = None + terminal_value_pv: float | None = None + fcf_pv_sum: float | None = None + growth_rate_used: float | None = None + base_fcf: float | None = None + wacc: float = 0.10 + terminal_growth: float = 0.03 + + +class MultipleResult(BaseModel): + available: bool = True + implied_price_per_share: float | None = None + implied_ev: float | None = None + equity_value: float | None = None + net_debt: float | None = None + multiple_used: float | None = None + + +class ValuationResponse(BaseModel): + symbol: str + current_price: float | None = None + shares_outstanding: float | None = None + dcf: DcfResult + ev_ebitda: MultipleResult + ev_revenue: MultipleResult + price_to_book: MultipleResult + + class WatchlistItem(BaseModel): symbol: str created_at: str |
