"""
=========================================
CV6 AI Trading OS
Decision Router
=========================================
"""

from fastapi import APIRouter

from app.decision.decision_manager import DecisionManager
from app.decision.decision_models import (
    DecisionRequest,
    DecisionResponse,
)

router = APIRouter(
    prefix="/decision",
    tags=["Decision"]
)

manager = DecisionManager()


@router.post(
    "/generate",
    response_model=DecisionResponse
)
def generate_decision(
    request: DecisionRequest
):

    result = manager.decide(
        ema=request.ema,
        rsi=request.rsi,
        macd=request.macd,
        supertrend=request.supertrend,
        atr=request.atr,
        vwap=request.vwap,
        strategy=request.strategy,
        confidence=request.confidence
    )

    return result