
    j                    |    d dl mZ d dlmZ d dlmZ d dlmZ  ed           G d d                      ZddZ	dS )    )annotations)	dataclass)Path)	BotConfigT)frozenc                  (    e Zd ZU ded<   dZded<   dS )RiskDecisionboolallowedokstrreasonN)__name__
__module____qualname____annotations__r        risk.pyr	   r	   	   s,         MMMFr   r	   daily_pnl_usdfloatdaily_trade_countintkill_switch_path
str | Pathcfgr   returnc                2   t          |                                          }|                                rt          dd          S | t	          |j                   k    rt          dd          S ||j        k    rt          dd          S t          d          S )NFkill_switchdaily_loss_limitdaily_trade_limitT)r   
expanduserexistsr	   absmax_daily_loss_usdmax_daily_trades)r   r   r   r   paths        r   	risk_gater(      s     !!,,..D{{}} 2E=111S344444E#5666C000E#6777r   N)
r   r   r   r   r   r   r   r   r   r	   )

__future__r   dataclassesr   pathlibr   configr   r	   r(   r   r   r   <module>r-      s    " " " " " " ! ! ! ! ! !             $       
     r   