From 887822efb6af05e3ae93db85dacf133967a6b0ef Mon Sep 17 00:00:00 2001 From: Marc Blatter Date: Sat, 4 Jul 2026 14:08:08 +0200 Subject: [PATCH] Bot auto-update: src/__pycache__/main_ml.cpython-310.pyc,src/__pycache__/web_dashboard.cpython-310.pyc,src/main_ml.py,src/web_dashboard.py --- src/__pycache__/main_ml.cpython-310.pyc | Bin 28086 -> 28101 bytes src/__pycache__/web_dashboard.cpython-310.pyc | Bin 19547 -> 19995 bytes src/main_ml.py | 4 ++-- src/web_dashboard.py | 4 ++-- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/__pycache__/main_ml.cpython-310.pyc b/src/__pycache__/main_ml.cpython-310.pyc index 10a53893ef0d14bebdfc266fa0bee0fb4188eaf9..6176e44df7c7e4389ff4d8672b7f73e16d5d2b6f 100644 GIT binary patch delta 744 zcmW;JT}V@57zgn4oP7uz%Sg)7(j$J$r@2yx;C&a; z(}f|*22u85PTw5ahe)-`3Q;Sq83ht1cokg~bkliuE`B`k|9yCQ-{(Y@Ai4xPuTH1o z}#$+5r$b+(Hg*QJYvX!5!PtP2MDw4#TrO_DEHSTINLkUwfQ=v zaU3o&!YKPy@>2m({BnFRgmIlQ176{7W1*ZljbY6r702~JFW))Aww@T_wUK~A%yg@I zd1(R{P7c6F^qJ;T{ecZZowz>);sHO`%U{a&<%orDUheXv-JGe~9^!&Ku-lxRqz`Bf zoKF!{iY30>0N1P!?!+N;dU{?wI~qUduxJSJ{oDW_0^sDH{NOHJG4FwKOexENJ7_4g z!4kV#wgB)18%{^GZ{&ALQQ|dbSu8MuZ5EU#pejEk49RgUp}oc3;=SCWS4%o-qd`dH zM1-9!PX{Q#ZflDAB_(4xXf?qUu2}O-Zz*Ua_7Rmt57AHDB@Pmu#4TbIkxWz(&xlE^ zwiUxWyk;}OD8_87Ag~t|XL+Nsa|vy z30cx(RN8;b|LCv1M!ui5Ru8jyrM492*ko<10*0`_Q7YT+aKZ=t?C8@j(9t)E8P;`1 zl>m(OG;{zg;y-ble8d)4o%Shh#~&8PZda4~6RqcQ&EqBr=|_(|Njj>N^8H z@;JR~wZSO+WsRv}ihew}3&M1jEd!?McH0iFcx780%Aco;a(?guxGYqDI~N-A!4eiiu?OSi=q;Xu4#kB zn;kS*NI)IZh}J+3?n7pUoQ11oP^AEnAkh$SidbAgRHQydrJPPoDwjG`@yx=dFrx4F+zQX|{^t6NW86{Ti6^6OIpzCUH zZTFvQ&(X?8jNz!{al}1#qGA(d2hT*%+NGvn&~FW zdl0>dWW;(zHR2Isk~TSu;1yMzW&G|xoZlgt%~w@u47br8K#Wmy&5ZDxm%SS{>jmLJ zcZ*Q9%^`G1vT#&x6s1DJB;Th=wZHlA>0CAZ3ddbJ{9i7(O5h!vb#oafvg zn5QxKfZ+qS9zx8rzGDeG7-RiSJpfUvm(qBPY^l!h5bYy~Fuf?XXy0QwNB>F^JY@~d zZZO?KC4z{LU?v_w#G_HHzObd1C+hTfm)m4x_A`+Q5<*#D@%t@a7%Q6yCQ#_S#Jxr?jCoY2qY}6UXsiwbQ8sl){{)1^GzNv36XUV9IPYZV*!duvzHb218D)_R^#T1?qpIVl z@}Yf)_Pap%05+4ZwgwECejn1>WsMp0+84*Rw7c4l&dgnCGFxyLc8p!^x~8MT)J$#L zXs!Tq87;NHvoiWVfJV;^wCkwNs2OOk>Cvh;P`YPrc3lyr^^K5Q3T51^%R{eci`i8! zR`EbM?3oBSUN`>^FTLw7Z4Tac-SSi-Q7GlIh1;cyJ9RdhOeM1AeB$kr8>>)+J*#1n zY~49DTiGb)<_dXUbQ{JhcN^wfrBoE%7BSnAb24C%wyOfVo1urtec0GcZGDO(wTbQ^~?Y)%SYZQjMsnm#sT6o=nIEa zC=jOz5(G(tQG|w3;6>4kUIav1-t>jwj@nZt*0Oc6Tn~1xPg){^tbDNWh9#op{jzZNkm{-CAD6R> z@mJMXr#5xWGF}%kj&8$b`J5{z$u*E`SSy86))g~IhW#YBtT{g6#Yg$^B9)H}1BVa!J2kOH!T>t<8 delta 1015 zcmZ9KO-vI(7=}B$TiY(B(8fjtq!j2M{lP-{2SW-HLJEz42lqk>Gu0xr&2&XbOdt`D z9?V=!G)5C+yqexT=-GoDyqHuIy&2+74<>5F?;A{L*v&khdFP#XzMam)N95xJ;wm*Z z>K1ssKjv0nT)6LQSH6>%F^z09_Y*%o^_0*SdV1G#hZtQ_X$7T?b>|h@PS5OWp!Z0< z1M~^%V*%R9g47SKiv{v_+D&_Qt>6ktR{&h~o*?)_(84U3chU&$m5E{SZu@Bz%rOXz z{|`-o$xi#|S!s&Mz$AG3>3}S-7Ze{&fig&kq!OjWMvQss$PI=6q!von;zpdsR};)l zN9h{f9z}!^5kO77#>|?!#)`ZHh7rQ!;*H)(mcxI#0x%8WPR*o){ygv93tZ`}rMD9S{Qr?6iaB3hjtWJ8QPePpb9)oGBF%(X-u zb=GsR$k5ql!CWfy!V2T#m@ zjul|#(^$+5;wWFQ+{%@gSkdHLyd9?yBHrvF&&5=;pUjEn<~{f~lkRB}7B}6OeXqb! zaRHPayQ&jiaS^AgDLezxFVZK{p4&}t(Q|l3>?+Sz-+4AiZHD!_X_hy|d?tIs&{iv@ zqIjIS*dTAl;jxL|nZ&F-OT1NvRxVXc9)oU8qlFcd4`5dXt!B-ym2xH@1A(Uza|kSf kXAz5{w2&f2@oXWjdUPVbEwsXqX0>eNYfsq8NuvGz2l?#f(EtDd diff --git a/src/main_ml.py b/src/main_ml.py index 291e226..b421035 100644 --- a/src/main_ml.py +++ b/src/main_ml.py @@ -737,8 +737,8 @@ class MLTradingBot: result = None # ONLY RECORD if order was SUCCESSFUL - if result and result.get('status') in ['FILLED', 'NEW', 'PARTIALLY_FILLED']: - # Ensure current_trades reflects completed trade + if result and (result.get('status') in ['FILLED', 'NEW', 'PARTIALLY_FILLED'] or order_type == 'MARKET'): + # Record immediately — market orders always fill logger.info(f'🔍 DEBUG: Storing BUY position {pair}: qty={qty}, price={price}') self.current_trades[pair] = { 'qty': qty, diff --git a/src/web_dashboard.py b/src/web_dashboard.py index 1d7c37a..d567e1d 100644 --- a/src/web_dashboard.py +++ b/src/web_dashboard.py @@ -68,7 +68,7 @@ async def websocket_endpoint(websocket: WebSocket): active_connections.remove(websocket) # @app.get("/api/state") -n@app.get("/api/state") +@app.get("/api/state") async def get_state(): """Proxy to State Manager""" try: @@ -208,7 +208,7 @@ async def trigger_liquidation(): @app.get("/") -n@app.get("/api/state") +@app.get("/api/state") async def get_state(): """Proxy to State Manager""" try: