INNER CODE UNIT · Python
get_trade_stats
GifariKemal/xaubot-ai · web-dashboard/api/main.py:192
async def get_trade_stats(
start_date: Optional[str] = None,
end_date: Optional[str] = None,
):
"""Get aggregate trade statistics."""
if not db.is_available():
return {"totalTrades": 0, "winRate": 0, "netProfit": 0, "profitFactor": 0, "avgWin": 0, "avgLoss": 0, "bestTrade": 0, "worstTrade": 0}
where = ["closed_at IS NOT NULL"]
params = []
date_clauses, date_params = _date_filter("closed_at", start_date, end_date)
where.extend(date_clauses)
params.extend(date_params)
where_sql = " AND ".join(where)
row = db.query(
f"""SELECT
COUNT(*) as total_trades,