
    i                     	   d Z ddlZddlZ ej                  ej                  j                  ej                  j                  e                   ddlm	Z	m
Z
mZmZmZmZmZmZmZmZmZmZmZ  ed        ed        ed       defdefdefd	efd
e	fde
fdefdefdZdZdZej5                         D ]7  \  Z\  ZZeek(  ZerdndZeredz  Znedz  Z ededdedde de d	       9 g dZ e D  cg c]	  } | ev s|  c} Z! e"e!       e"e       k(  Z#e#rdndZe#redz  Znedz  Z ededdddd e"e!       d e"e        d e"e       d       g dZ$e$D  cg c]	  } | ev s|  c} Z% e"e%       e"e$      k(  Z&e&rdndZe&redz  Znedz  Z ededdddd e"e%       d e"e$       d e"e       d        e         ed        ed        ed       	 dd l'mZ(mZ) e(dk(  Z*e)d	k(  Z+ ede*rdnddd!e(         ede+rdnddd"e)        e*redz  Znedz  Ze+redz  Znedz  Z	 dd%l.m	Z/m
Z0 e/d
k(  Z1e0dk(  Z2 ede1rdnddd&e/         ede2rdnddd'e0        e1redz  Znedz  Ze2redz  Znedz  Z	 dd)l3mZ4mZ5 e4dk(  Z6e5dk(  Z7 ede6rdnddd*e4         ede7rdnddd+e5        e6redz  Znedz  Ze7redz  Znedz  Z	 dd-l8m9Z9  e9       Z:e D  cg c]  } | e:jv                  v s|  c} Z<e$D  cg c]  } | e:jz                  v s|  c} Z> e"e<       e"e       k(  Z? e"e>       e"e$      k(  Z@ ede?rdnddd. e"e<       d e"e                ede@rdnddd/ e"e>       d e"e$              e?redz  Znedz  Ze@redz  Znedz  Z e         ed       eez   ZAedk(  r ed1e deA d2       n ed1e deA d3e d4        ed       yc c} w c c} w # e,$ rZ- ed#e-        ed$z  ZY dZ-[-dZ-[-ww xY w# e,$ rZ- ed(e-        ed$z  ZY dZ-[-dZ-[-ww xY w# e,$ rZ- ed,e-        ed$z  ZY dZ-[-{dZ-[-ww xY wc c} w c c} w # e,$ rZ- ed0e-        ed$z  ZY dZ-[-dZ-[-ww xY w)5zJVerification rapide: les optimisations IA sont-elles actives dans le bot ?    N)STOP_LOSS_PERCENTTAKE_PROFIT_PERCENTENABLE_TRAILING_STOPTRAILING_STOP_DISTANCETRAILING_STOP_ACTIVATIONMAX_OPEN_POSITIONSMIN_AI_SCORE_FOR_BUYMIN_BUY_SIGNALSMIN_SELL_SIGNALSSTRATEGY_CONSENSUS_THRESHOLDML_CONFIDENCE_THRESHOLDSYMBOL_BLACKLISTSYMBOL_WHITELISTz<============================================================u%     VERIFICATION INTEGRATION IA → BOT   K   F   gQ?gHzG?g{Gz?g{Gz?
   )r
   r	   r   r   r   r   r   r   OKFAIL   z  [4sz] 35sz = z  (IA attend ))ACTUSDTWIFUSDTLINKUSDTSOPHUSDT	EIGENUSDTSTRKUSDTzSYMBOL_BLACKLIST (IA tokens)/z presents  (total: )OPUSDT
PEOPLEUSDT
SAHARAUSDTzSYMBOL_WHITELIST (IA tokens)z  MODULES DEPENDANTS)r   r   z&] enhanced_signal_engine  CONSENSUS = z&] enhanced_signal_engine  ML_CONF   = z!  [FAIL] enhanced_signal_engine:    )r   r   z] dynamic_sltp            SL = z] dynamic_sltp            TP = z  [FAIL] dynamic_sltp: )r	   r
   z%] crypto_data_fetcher     AI_SCORE = z(] crypto_data_fetcher     BUY_SIGNALS = z  [FAIL] crypto_data_fetcher: )get_blacklist_managerz*] DynamicBlacklist         IA blacklist = z*] DynamicBlacklist         IA whitelist = z  [FAIL] market_regime: z  RESULTAT: z
 checks OKz OK, z	 ECHEC(S))B__doc__sysoschdirpathdirnameabspath__file__configr   r   r   r   r   r   r	   r
   r   r   r   r   r   printexpectedok_count
fail_countitemskeyia_valactualmatchiconai_bl_expectedai_bl_presentlenbl_okai_wl_expectedai_wl_presentwl_okenhanced_signal_engineescmlcesc_okmlc_ok	Exceptionedynamic_sltpdsldtpdsl_okdtp_okcrypto_data_fetchercdf_aicdf_bscai_okcbs_okmarket_regimer%   bmpermanent_blacklistai_in_bl	whitelistai_in_wlbl2_okwl2_oktotal)ss   0./_verify_integration.py<module>r\      s9   P  2	3 4    h - . h ?+!56%')E$F $&=> 12 "56#%;<12	 
%^^- GC	&&fE4fDAa
	CRy3s)3vhmF81
EFG Y*Dqa3C.CDMc.11t&(a-(Aoj D9B5c:#c->P=QQRSVWeSfRggz{~  @P  |Q  {R  RS  T  U 8*Dqa3C.CDMc.11t&(a-(Aoj D9B5c:#c->P=QQRSVWeSfRggz{~  @P  |Q  {R  RS  T  U  h   hjBYFD[F	CF2..TUXTY
Z[	CF2..TUXTY
Z[x1}x
/*x1}x
/*QD[FD[F	CF2..McU
ST	CF2..McU
STx1}x
/*x1}x
/*]r\Fq[F	CF2..STZS[
\]	CF2..VW]V^
_`x1}x
/*x1}x
/*3		 B)IaQ"2H2H-HIH)?aQ",,->?H]c.11F]c.11F	CF2..XY\]eYfXgghilm{i|h}
~	CF2..XY\]eYfXgghilm{i|h}
~x1}x
/*x1}x
/*
  h:?	L
!E7*
56	L
!E7%
|9
EF hw E E.  	-aS
12!OJ  	#A3
'(!OJ  	*1#
./!OJ J?  	$QC
()!OJs   6	O( O(	O-)O- AO2 3AP AP8 Q% *Q>QQ% 	Q Q !BQ% 2P7PPP5P00P58Q=QQ
Q% %R*Q??R