"""
=========================================
CV6 AI Trading OS
Decision Models
=========================================
"""

from typing import Optional
from pydantic import BaseModel


class DecisionRequest(BaseModel):

    ema: float

    rsi: float

    macd: float

    supertrend: float

    atr: float

    vwap: float

    strategy: str

    confidence: float


class DecisionResponse(BaseModel):

    decision: str

    confidence: float

    score: int

    reason: str

    ema: Optional[float] = None

    rsi: Optional[float] = None

    macd: Optional[float] = None

    supertrend: Optional[float] = None

    atr: Optional[float] = None

    vwap: Optional[float] = None