from pydantic import BaseModel, Field from typing import List, Optional, Any class CandleSchema(BaseModel): timestamp: int = Field(..., description="Thời gian (miliseconds)") open: float = Field(..., description="Giá mở cửa") high: float = Field(..., description="Giá cao nhất") low: float = Field(..., description="Giá thấp nhất") close: float = Field(..., description="Giá đóng cửa") volume: float = Field(..., description="Khối lượng giao dịch") turnover: float = Field(..., description="Giá trị giao dịch") macd: Optional[float] = Field(None, description="MACD value") macdsignal: Optional[float] = Field(None, description="MACD signal") macdhist: Optional[float] = Field(None, description="MACD histogram") ema34: Optional[float] = Field(None, description="EMA 34") ema50: Optional[float] = Field(None, description="EMA 50") ema100: Optional[float] = Field(None, description="EMA 100") ema200: Optional[float] = Field(None, description="EMA 200") rsi: Optional[float] = Field(None, description="RSI") class CandleResponseSchema(BaseModel): data: List[CandleSchema] indicators: Any