summaryrefslogtreecommitdiff
path: root/backend/app/schemas.py
diff options
context:
space:
mode:
Diffstat (limited to 'backend/app/schemas.py')
-rw-r--r--backend/app/schemas.py30
1 files changed, 30 insertions, 0 deletions
diff --git a/backend/app/schemas.py b/backend/app/schemas.py
index 87acd0d..2c64333 100644
--- a/backend/app/schemas.py
+++ b/backend/app/schemas.py
@@ -175,5 +175,35 @@ class WatchlistResponse(BaseModel):
limit: int = 10
+class RatioPoint(BaseModel):
+ value: float | None = None
+ spark: list[float | None] = Field(default_factory=list)
+ vs_sector: float | None = None
+
+
+class RatiosResponse(BaseModel):
+ pe_ttm: RatioPoint
+ ev_ebitda: RatioPoint
+ gross_margin: RatioPoint
+ net_margin: RatioPoint
+ price_to_book: RatioPoint
+ price_to_sales: RatioPoint
+ ev_to_sales: RatioPoint
+ p_fcf: RatioPoint
+ forward_pe: RatioPoint
+ operating_margin: RatioPoint
+ ebitda_margin: RatioPoint
+ fcf_margin: RatioPoint
+ roe: RatioPoint
+ roa: RatioPoint
+ roic: RatioPoint
+ debt_to_equity: RatioPoint
+ current_ratio: RatioPoint
+ quick_ratio: RatioPoint
+ interest_coverage: RatioPoint
+ dividend_yield: RatioPoint
+ dividend_payout: RatioPoint
+
+
class ErrorResponse(BaseModel):
detail: str