§
    qWÞi›  ã                   óÖ  — d dl mZmZmZ d dlmZ d dlmZ d dlm	Z	  eddg¬¦  «        Z
e
                     d¦  «         ee¦  «        fd	efd
„¦   «         Ze
                     d¦  «         ee¦  «        fd	efd„¦   «         Ze
                     d¦  «         ee¦  «        fd	efd„¦   «         Ze
                     d¦  «         edd¬¦  «         ee¦  «        fded	efd„¦   «         ZdS )é    )Ú	APIRouterÚDependsÚQuery)ÚAsyncSession)Úget_db)Úperformance_enginez/api/v1/analyticsÚ	analytics)ÚprefixÚtagsz/globalÚdbc              ƒ   ó>   K  — t          j        | ¦  «        ƒ d{V —†}|S )z Overall bot performance metrics.N)r   Úget_global_stats©r   Ústatss     ú</var/www/html/crypto-bot/backend/app/api/routes/analytics.pyÚglobal_statsr   
   s/   è è € õ %Ô5°bÑ9Ô9Ð9Ð9Ð9Ð9Ð9Ð9€EØ€Ló    z/strategiesc              ƒ   óB   K  — t          j        | ¦  «        ƒ d{V —†}d|iS )z#Per-strategy performance breakdown.NÚ
strategies)r   Úget_strategy_statsr   s     r   Ústrategy_statsr      s5   è è € õ %Ô7¸Ñ;Ô;Ð;Ð;Ð;Ð;Ð;Ð;€EØ˜%Ð Ð r   z/pairsc              ƒ   óB   K  — t          j        | ¦  «        ƒ d{V —†}d|iS )zPer-pair performance breakdown.NÚpairs)r   Úget_pair_statsr   s     r   Ú
pair_statsr      s5   è è € õ %Ô3°BÑ7Ô7Ð7Ð7Ð7Ð7Ð7Ð7€EØUÐÐr   z/timeÚDAILYzDAILY | WEEKLY | MONTHLY)ÚdescriptionÚperiodc              ƒ   óê   K  — d}|                       ¦   «         |vrddlm}  |dd|› ¬¦  «        ‚t          j        ||                       ¦   «         ¦  «        ƒ d{V —†}|                       ¦   «         |dœS )	z%Time-bucketed performance statistics.)r   ÚWEEKLYÚMONTHLYr   )ÚHTTPExceptioni  zperiod must be one of )Ústatus_codeÚdetailN)r   Údata)ÚupperÚfastapir"   r   Úget_time_stats)r   r   Úvalidr"   r   s        r   Ú
time_statsr*      s’   è è € ð +€EØ‡|‚|~„~˜UÐ"Ð"Ø)Ð)Ð)Ð)Ð)Ð)Øˆm¨Ð4TÈUÐ4TÐ4TÐUÑUÔUÐUÝ$Ô3°B¸¿º¹¼ÑGÔGÐGÐGÐGÐGÐGÐG€EØ—l’l‘n”n¨eÐ4Ð4Ð4r   N)r'   r   r   r   Úsqlalchemy.ext.asyncior   Úapp.databaser   Úapp.analytics.performancer   ÚrouterÚgetr   r   r   Ústrr*   © r   r   ú<module>r2      s¦  ðØ -Ð -Ð -Ð -Ð -Ð -Ð -Ð -Ð -Ð -Ø /Ð /Ð /Ð /Ð /Ð /à Ð Ð Ð Ð Ð Ø 8Ð 8Ð 8Ð 8Ð 8Ð 8à	ˆÐ-°[°MÐ	BÑ	BÔ	B€ð ‡‚ˆIÑÔØ*1¨'°&©/¬/ð ð ˜<ð ð ð ñ Ôðð ‡‚ˆMÑÔØ,3¨G°F©O¬Oð !ð !˜\ð !ð !ð !ñ Ôð!ð ‡‚ˆHÑÔØ(/¨°©¬ð ð ˜ð ð ð ñ Ôðð ‡‚ˆGÑÔà%˜Ð-GÐHÑHÔHØw˜v‘”ð
5ð 
5Øð
5àð
5ð 
5ð 
5ñ Ôð
5ð 
5ð 
5r   