+
    *O.j                     r   R t ^ RIt^ RIHt ^ RIHtHt ^ RIHt ^ RI	H
t
HtHt ^ RIHt ^ RIHtHtHtHtHtHt ]! 4       tRR	R
RRR^R^//RRR
RRR^R^//RRR
RRRR//RRR
RRRR//RRR
RRRRRRRRR RR ///.tR!R"R#R$R%R&/R!R'R#R(R%R&/R!R)R#R*R%R&/.tR+ t]R,8X  d   ]P6                  ! ]! 4       4       R# R# )-z&Database seed script for initial data.N)Decimal)selecttext)get_settings)AsyncSessionLocalBaseengine)get_password_hash)	BotConfigRiskProfileStrategySymbolUserUserRolenamezTrend Followingstrategy_typetrend
parameters	ema_shortema_longzMean Reversionmean_reversion	bb_period
rsi_periodBreakoutbreakoutvolume_thresholdg      ?zConservative Scalpingscalpingmax_spread_pctg?Ensembleensembleweightsg333333?g?g      ?symbolBTCUSDT
base_assetBTCquote_assetUSDTETHUSDTETHBNBUSDTBNBc                  j	  "   \         P                  ! 4       ;_uu_4       GR j  xL
 p V P                  \        P                  P
                  4      G R j  xL
  V P                  \        R4      4      G R j  xL
  V P                  \        R4      4      G R j  xL
  V P                  \        R4      4      G R j  xL
  R R R 4      GR j  xL
  \        4       ;_uu_4       GR j  xL
 pVP                  \        \        4      P                  \        P                  R8H  4      4      G R j  xL
 pVP                  4       '       g5   VP                  \        R\        R4      \         P"                  R7      4       \$         F  pVP                  \        \&        4      P                  \&        P(                  VR,          8H  4      4      G R j  xL
 pVP                  4       '       d   Kh  VP                  \'        R/ VB 4       K  	  \*         F  pVP                  \        \,        4      P                  \,        P.                  VR,          8H  4      4      G R j  xL
 pVP                  4       '       d   Kh  VP                  \-        R/ VB 4       K  	  VP                  \        \0        4      P                  \0        P2                  R	8H  4      4      G R j  xL
 pVP                  4       '       g   VP                  \1        R
\5        \7        \8        P:                  4      4      \5        \7        \8        P<                  4      4      \8        P>                  \8        P@                  \8        PB                  \8        PD                  \5        \7        \8        PF                  4      4      R	R7	      4       VP                  \        \H        4      4      G R j  xL
 pVP                  4       '       g-   VP                  \I        \8        PJ                  RR/R7      4       VPM                  4       G R j  xL
  \O        R4       \O        R4       R R R 4      GR j  xL
  R #  EL. EL  EL EL EL EL  + GR j  xL 
 '       g   i     EL; i EL ELX EL EL2 EL L Ll LH  + GR j  xL 
 '       g   i     R # ; i5i)NzBALTER TABLE users ADD COLUMN IF NOT EXISTS totp_secret VARCHAR(64)zMALTER TABLE users ADD COLUMN IF NOT EXISTS totp_enabled BOOLEAN DEFAULT falsezGALTER TABLE audit_logs ADD COLUMN IF NOT EXISTS user_agent VARCHAR(255)zadmin@trading.localzAdmin123!Change)emailpassword_hashroler!   r   TzDefault Conservative)	r   max_risk_per_trade_pctmax_daily_loss_pctmax_trades_per_daymax_consecutive_lossesmin_confidence_buyensemble_sell_threshold	kelly_cap
is_defaultr   g      ?)active_symbolsstrategy_weightszDatabase seeded successfully.z1Admin user: admin@trading.local / Admin123!Change )(r   beginrun_syncr   metadata
create_allexecuter   r   r   r   wherer,   scalar_one_or_noneaddr	   r   ADMINSYMBOLSr   r!   
STRATEGIESr   r   r   r6   r   strsettingsr/   r0   r1   r2   r3   r4   r5   r
   default_symbolscommitprint)connsessionadminsexistingstprofile_existsconfig_existss           scripts\seed.pyseedrS      s,    ||~~~mmDMM44555ll4 defffll4 opqqqll4 ijkkk	 ~ !"""goofTl&8&8G\9\&]^^''))KK/"34E"F! A$__VF^-A-A&--STU]S^B^-_``H..00FKQK( 
 B$__VH-=-C-CHMMUWX^U_D_-`aaH..00HNrN+ 
  'vk/B/H/HI_I_cgIg/hii0022KK/+23x7V7V3W+X'.s83N3N/O'P'/'B'B+3+J+J'/'B'B,4,L,L%c(*<*<&=>#
 &oofY.?@@//11KK#+#;#;&0#%6 nn-.ABa #"" 5fqk	 ~~~ #^ a
 b j  A 	] #"""si  "R3QR3-Q$Q!Q$7Q8!Q$Q!Q$;Q<Q$ R3Q!R3&R'R3*AR,R-RBRR
R)A/RR

R5ARRR/CRRR&?R%R&R R3RR3Q$Q$Q$Q$!R3$Q>	*Q-+
Q>	6Q>	8
R3RR
RRRRR3R0	R
R0	(R0	*	R3__main__)__doc__asynciodecimalr   
sqlalchemyr   r   app.core.configr   app.core.databaser   r   r   app.core.securityr	   
app.modelsr
   r   r   r   r   r   rF   rD   rC   rS   __name__runr9       rR   <module>r`      sD   ,   # ( = = / O O> ,VXZdfhHij0@,Q\^`bnprPstZ*lEWY\D]^$oz<RbdhQijZ*lYQXZ^`prv  yC  EI  KU  W[  Q\  E]  ^
 y,}fEy,}fEy,}fE7Ct zKK r_   