From 6c5e549ae07867e5482eadd2b648b68a88491ce2 Mon Sep 17 00:00:00 2001
From: Administrator <admin@example.com>
Date: 星期三, 12 六月 2024 13:30:34 +0800
Subject: [PATCH] bug修复

---
 main.py |    9 +++++----
 1 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/main.py b/main.py
index f8dac3c..ce32901 100644
--- a/main.py
+++ b/main.py
@@ -8,6 +8,7 @@
 import time
 
 from code_attribute import target_codes_manager, gpcode_manager, code_market_manager, history_k_data_util
+from db.redis_manager_delegate import RedisUtils
 from huaxin_client import l2_client_for_cb, trade_client_for_cb
 from huaxin_client.client_network import SendResponseSkManager
 from log_module import async_log_util, log_export
@@ -16,6 +17,7 @@
 from third_data.kpl_data_manager import PullTask, KPLCodeJXBlockManager, KPLLimitUpDataRecordManager
 from trade import huaxin_trade_api, huaxin_trade_data_update, huaxin_sell_util, backtest_trade
 from trade.buy_strategy import BuyStrategyDataManager
+from trade.trade_manager import CodeTradeStateManager
 from utils import middle_api_protocol, outside_api_command_manager, constant, tool, huaxin_util, socket_util, sell_util, \
     output_util, l2_huaxin_util, output_data_util
 
@@ -258,8 +260,6 @@
     # print("涓嬪崟锛�", huaxin_trade_api.order(1, "127075", 10, 140.5, blocking=True))
 
 
-__deal_codes = set()
-
 
 def read_l2_results(trade_call_back_queue):
     while True:
@@ -269,7 +269,7 @@
                 async_log_util.info(logger_trade, f"姝h偂娑ㄥ仠锛屽噯澶囦拱鍏ュ彲杞�猴細{result}")
                 # 鑾峰彇鍙互涔扮殑浠g爜
                 code, trade_time = result[0], result[1]
-                if code in __deal_codes:
+                if  CodeTradeStateManager().get_trade_state(code) == CodeTradeStateManager.TRADE_STATE_ALREADY_BUY:
                     async_log_util.info(logger_trade, f"宸茬粡涓嬪崟杩囷細{result}")
                     continue
                 # 鑾峰彇鑲$エ浠g爜鐨勫彲杞�轰唬鐮�
@@ -282,7 +282,6 @@
                     async_log_util.info(logger_trade, f"鍑嗗涓嬪崟锛歿cb_code}-{buy_price}")
                     # 涔板叆20鑲�
                     result = huaxin_trade_api.order(1, cb_code, 20, buy_price, blocking=True)
-                    __deal_codes.add(code)
                     async_log_util.info(logger_trade, f"鍙浆鍊轰笅鍗曠粨鏋滐細{result}")
                     huaxin_trade_data_update.add_position_list()
                     huaxin_trade_data_update.add_money_list()
@@ -380,6 +379,8 @@
     threading.Thread(target=read_l2_results, args=(trade_call_back_queue,), daemon=True).start()
     # ===========寮傛鏃ュ織鎸佷箙鍖�==========
     threading.Thread(target=async_log_util.run_sync, daemon=True).start()
+    # ===========Redis缂撳瓨======================
+    threading.Thread(target=RedisUtils.run_loop, daemon=True).start()
     # 杩愯L2鏁版嵁鐩戝惉闃熷垪
     queue_market = multiprocessing.Queue()
     threading.Thread(target=__read_market_data, args=(queue_market,), daemon=True).start()

--
Gitblit v1.8.0