
     Sj                    f   d dl mZ d dlZd dlZd dlZd dlZd dlZd dlmZ ej	        
                    d d           d dlmZmZ  ed          Zedz  Zedz  Z ed          Z ed	          Z ed
          ZdZddZddZddZddZd dZd!dZd"dZedk    r e e                      dS )#    )annotationsN)Pathz2/home/agent/projects/CryptoTradingBot/Crypto_Agent)
CANDIDATESinspect_candidatez.venv/bin/pythonzruntime/experimentsz2/home/agent/.local/state/CryptoTradingBot/v77_logszE/home/agent/.local/state/CryptoTradingBot/v77_supervisor_markers.jsonz=/home/agent/.local/state/CryptoTradingBot/v77_supervisor.lock)*candidate_v77_trend_retest_anti_chase_long$research_v77_bear_trend_retest_short6research_v77_2_relative_strength_momentum_continuationstrategy_idstrreturnboolc                   t           | z  dz  }	 t          |                    d                                                    }t	          d          t          |          z  }|                                sdS |dz                                                      dd          }|dz                                                      dd          }n# t          $ r Y dS w xY wd	|v od
|  |v od|  |v od|v od|vod|vod|vS )Nzbot.pidutf-8encodingz/procFcmdlineignoreenviron"src.tools.v77_trend_retest_runtimez--strategy-id zCTB_STRATEGY_ID=zCTB_PAPER_TRADING=truezCTB_LIVE_TRADING_ALLOWED=truezCTB_LIVE_ORDER_ALLOWED=truezHL_MAINNET_SIGNED_ACTION=true)
RUNTIME_ROOTint	read_textstripr   r   exists
read_bytesdecode	Exception)r
   pid_pathpidproccmdenvs         7/home/agent/.hermes/scripts/ctb_v77_paper_supervisor.pyprocess_is_safer$      sP   k)I5H($$g$66<<>>??G}}s3xx'{{}} 	5i++--44WhGGi++--44WhGG   uu 	-3 	7---4	7,{,,3	7 %+	7 ,36		7
 *4	7 ,36s   A(C 9AC 
CCr   c                   t                               dd           t           |  dz  }t          j                                        }|                    d| dddddd           |                    d          5 }t          j        t          t                    d	d
d| dd                    t          |          j                  dddddgt          ||t          j        d          }d d d            n# 1 swxY w Y   |j        S )NTparentsexist_okz.log.truefalse)
PYTHONPATHCTB_STRATEGY_IDCTB_PAPER_TRADINGCTB_DRY_RUNCTB_LIVE_TRADING_ALLOWEDCTB_LIVE_ORDER_ALLOWEDHL_MAINNET_SIGNED_ACTIONab-mr   z--strategy-idz--coins,z--iterations720z--interval-seconds60--json)cwdr"   stdoutstderrstart_new_session)LOG_ROOTmkdirosr   copyupdateopen
subprocessPopenr   PYTHONjoinr   coinsREPOSTDOUTr   )r
   log_pathr"   logr    s        r#   start_strategyrL   1   sI   NN4$N///[....H
*//

CJJ&#$+")$+     
t		 
FT#G388J{$;$ABB$d $"
 
 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
  8Os   :A+C11C58C5dictc           
     p   t           | z  }t          j        t          t                    dddt          |          dt
          |          j        dgt          i t          j	        ddiddd	
          }|j
        dk    r#t          |j        p|j        dd                    t          j        |j                  S )Nr4   zsrc.tools.v77_promotion_report--runtime-dir--strategy-versionr8   r,   r)   Tx   r9   r"   textcapture_outputtimeoutr   r   rC   runr   rE   r   strategy_versionrH   r?   r   
returncodeRuntimeErrorr;   r:   jsonloadsr
   runtimer    s      r#   refresh_promotion_reportr`   Q   s    [(G>	Vd<osSZ||]qs}  J  tK  t\  ^f  	g-rz-<--  D !DK64;>???:dk"""    c           
     p   t           | z  }t          j        t          t                    dddt          |          dt
          |          j        dgt          i t          j	        ddiddd	
          }|j
        dk    r#t          |j        p|j        dd                    t          j        |j                  S )Nr4   zsrc.tools.v77_signal_funnelrO   rP   r8   r,   r)   TrQ   rR   r   rV   rW   r^   s      r#   refresh_signal_funnelrc   `   s    [(G>	Vd9?CPWLLZnpz  |G  qH  qY  [c  	d-rz-<--  D !DK64;>???:dk"""ra   dict[str, bool]c                     	 t          j        t                              d                    } t	          | t
                    rd |                                 D             ni S # t          $ r i cY S w xY w)Nr   r   c                N    i | ]"\  }}t          |          t          |          #S  )r   r   ).0keyvalues      r#   
<dictcomp>z load_markers.<locals>.<dictcomp>r   s*    DDD*#uC$u++DDDra   )r\   r]   MARKER_PATHr   
isinstancerM   itemsr   )raws    r#   load_markersrp   o   s    j...@@AAHRSVX\H]H]eDD		DDDDcee   			s   A!A$ $A32A3markersNonec                    t           j                            dd           t                               t	          j        | dd          d           d S )NTr&      )indent	sort_keysr   r   )rl   parentr>   
write_textr\   dumps)rq   s    r#   save_markersrz   w   sO    TD9994:ga4HHHSZ[[[[[ra   c                 $   t           j                            dd           t                               d          } 	 t	          j        | t          j        t          j        z             n# t          $ r Y dS w xY wg }t                      }t          D ]}t          t          |         t                    }|j        r,t          |          }|                    d| d| d           nO|j        d	k    rD|                    d
| d|j         dd                    |j        d d                    d           	 t)          |           nD# t*          $ r7}|                    d| dt-          |          j                    Y d }~nd }~ww xY w	 t1          |          }nE# t*          $ r8}|                    d| dt-          |          j                    Y d }~Id }~ww xY w|                    d          du }|rZ|                    |          sE|                    d| d|                    d           d|                    d           d           |||<   t5          |           |r"t7          d                    |                     dS )NTr&   wr   )runtime_rootu%   ⚙️ v77 Paper-Supervisor startete z
 neu (PID z(); paper=true, live=false, signed=false.healthyu   ⚠️ v77 Prozesslage z: z!; kein blinder Neustart, blocker=r5      r)   u)   ⚠️ v77 Signal-Funnel fehlgeschlagen: u,   ⚠️ v77 Promotion-Report fehlgeschlagen: promotion_eligibleu,   🟢 v77 erreicht quantitative Paper-Gates: z	. closed=closed_lifecyclesz, PF=profit_factorzO, weiterhin live=false; manueller Preflight und explizites Sir-GO erforderlich.
)	LOCK_PATHrw   r>   rB   fcntlflockLOCK_EXLOCK_NBBlockingIOErrorrp   
STRATEGIESr   r   r   restart_allowedrL   appendstaterF   blockersrc   r   type__name__r`   getrz   print)	lockmessagesrq   r
   
assessmentr   excreporteligibles	            r#   mainr   |   sv   4$777>>#DD%-%-78888   qqHnnG! ( (&z+'>\ZZZ
% 	^ --COO  IK  I  I[^  I  I  I  J  J  J  J**OO  ]k  ]  ]ZEU  ]  ]x{  yA  yA  BL  BU  VX  WX  VX  BY  yZ  yZ  ]  ]  ]  ^  ^  ^	m!+.... 	m 	m 	mOOkkkW[\_W`W`Wikkllllllll	m	-k::FF 	 	 	OOn;nnZ^_bZcZcZlnnoooHHHH	 ::233t; 	GKK44 	OO`{ ` ` **%899` `@F

?@[@[` ` `  
  ( #dii!!"""1sA   ,A* *
A87A89E		
F
-FF
F
G (-GG __main__)r
   r   r   r   )r
   r   r   r   )r
   r   r   rM   )r   rd   )rq   rd   r   rr   )r   r   )
__future__r   r\   r   r?   rC   syspathlibr   pathinsert"src.tools.paper_runtime_supervisorr   r   rH   rE   r   r=   rl   r   r   r$   rL   r`   rc   rp   rz   r   r   
SystemExitrg   ra   r#   <module>r      s   " " " " " "   				     



       G H H H L L L L L L L Lt@AA	"	"++4DEEdZ[[DPQQ	
   ,   @# # # ## # # #   \ \ \ \
% % % %P z
*TTVV

 ra   