From 40074d68d34bc222a6b8b8fce9a7cca0fc8044c1 Mon Sep 17 00:00:00 2001
From: Administrator <admin@example.com>
Date: 星期一, 27 五月 2024 09:59:39 +0800
Subject: [PATCH] bug修复

---
 third_data/data_server.py |  108 +++++++++++++++++++++++++++--------------------------
 1 files changed, 55 insertions(+), 53 deletions(-)

diff --git a/third_data/data_server.py b/third_data/data_server.py
index 268ecd4..889c00e 100644
--- a/third_data/data_server.py
+++ b/third_data/data_server.py
@@ -708,61 +708,63 @@
 
     def __process_kpl_data(self, data_origin):
         def do_limit_up(result_list_):
-            if result_list_:
-                # 淇濆瓨娑ㄥ仠鏃堕棿
-                codes_set = set()
-                limit_up_reasons = {}
-                for d in result_list_:
-                    code = d[0]
-                    limit_up_reasons[code] = d[5]
-                    codes_set.add(code)
-                    if tool.is_shsz_code(code):
-                        limit_up_time = time.strftime("%H:%M:%S", time.localtime(d[2]))
-                        code_price_manager.Buy1PriceManager().set_limit_up_time(code, limit_up_time)
-                add_codes = codes_set - self.__latest_limit_up_codes_set
-                self.__latest_limit_up_codes_set = codes_set
-
-                if limit_up_reasons:
-                    # 缁熻娑ㄥ仠鍘熷洜鐨勭エ鐨勪釜鏁�
-                    limit_up_reason_code_dict = {}
-                    for code in limit_up_reasons:
-                        b = limit_up_reasons[code]
-                        if b not in limit_up_reason_code_dict:
-                            limit_up_reason_code_dict[b] = set()
-                        limit_up_reason_code_dict[b].add(code)
-                    cancel_buy_strategy.LCancelRateManager.set_block_limit_up_count(limit_up_reason_code_dict)
-
-                if add_codes:
-                    for code in add_codes:
-                        # 鏍规嵁娑ㄥ仠鍘熷洜鍒ゆ柇鏄惁鍙互涔�
+            try:
+                if result_list_:
+                    # 淇濆瓨娑ㄥ仠鏃堕棿
+                    codes_set = set()
+                    limit_up_reasons = {}
+                    for d in result_list_:
+                        code = d[0]
+                        limit_up_reasons[code] = d[5]
+                        codes_set.add(code)
                         if tool.is_shsz_code(code):
-                            try:
-                                # 鍒ゆ柇鏄惁涓嬪崟
-                                trade_state = trade_manager.CodesTradeStateManager().get_trade_state(code)
-                                if trade_state == trade_manager.TRADE_STATE_BUY_PLACE_ORDER or trade_state == trade_manager.TRADE_STATE_BUY_DELEGATED:
-                                    # 濮旀墭涓殑璁㈠崟锛屽垽鏂槸鍚﹂渶瑕佹挙鍗�
-                                    if not gpcode_manager.WantBuyCodesManager().is_in_cache(code):
-                                        yesterday_codes = kpl_data_manager.get_yesterday_limit_up_codes()
-                                        current_limit_up_datas, limit_up_record_datas, yesterday_current_limit_up_codes, before_blocks_dict = kpl_data_manager.KPLLimitUpDataRecordManager.latest_origin_datas, kpl_data_manager.KPLLimitUpDataRecordManager.total_datas, yesterday_codes, block_info.get_before_blocks_dict()
-                                        if not current_limit_up_datas:
-                                            current_limit_up_datas = []
-                                        if not limit_up_record_datas:
-                                            limit_up_record_datas = []
-                                        # 涔扮粷瀵硅�佸ぇ
-                                        # 涓�斾笉鑳芥挙鍗�
-                                        # if CodePlateKeyBuyManager.is_need_cancel(code, limit_up_reasons.get(code),
-                                        #                                          current_limit_up_datas,
-                                        #                                          limit_up_record_datas,
-                                        #                                          yesterday_current_limit_up_codes,
-                                        #                                          before_blocks_dict):
-                                        #     l2_data_manager_new.L2TradeDataProcessor.cancel_buy(code,
-                                        #                                                         f"娑ㄥ仠鍘熷洜锛坽limit_up_reasons.get(code)}锛変笉鏄�佸ぇ鎾ゅ崟",
-                                        #                                                         "鏉垮潡鎾�")
-                            except Exception as e:
-                                logger_debug.exception(e)
-                kpl_data_manager.KPLLimitUpDataRecordManager.save_record(tool.get_now_date_str(), result_list_)
-                self.__kplDataManager.save_data(type_, result_list_)
+                            limit_up_time = time.strftime("%H:%M:%S", time.localtime(d[2]))
+                            code_price_manager.Buy1PriceManager().set_limit_up_time(code, limit_up_time)
+                    add_codes = codes_set - self.__latest_limit_up_codes_set
+                    self.__latest_limit_up_codes_set = codes_set
 
+                    if limit_up_reasons:
+                        # 缁熻娑ㄥ仠鍘熷洜鐨勭エ鐨勪釜鏁�
+                        limit_up_reason_code_dict = {}
+                        for code in limit_up_reasons:
+                            b = limit_up_reasons[code]
+                            if b not in limit_up_reason_code_dict:
+                                limit_up_reason_code_dict[b] = set()
+                            limit_up_reason_code_dict[b].add(code)
+                        cancel_buy_strategy.LCancelRateManager.set_block_limit_up_count(limit_up_reason_code_dict)
+
+                    if add_codes:
+                        for code in add_codes:
+                            # 鏍规嵁娑ㄥ仠鍘熷洜鍒ゆ柇鏄惁鍙互涔�
+                            if tool.is_shsz_code(code):
+                                try:
+                                    # 鍒ゆ柇鏄惁涓嬪崟
+                                    trade_state = trade_manager.CodesTradeStateManager().get_trade_state(code)
+                                    if trade_state == trade_manager.TRADE_STATE_BUY_PLACE_ORDER or trade_state == trade_manager.TRADE_STATE_BUY_DELEGATED:
+                                        # 濮旀墭涓殑璁㈠崟锛屽垽鏂槸鍚﹂渶瑕佹挙鍗�
+                                        if not gpcode_manager.WantBuyCodesManager().is_in_cache(code):
+                                            yesterday_codes = kpl_data_manager.get_yesterday_limit_up_codes()
+                                            current_limit_up_datas, limit_up_record_datas, yesterday_current_limit_up_codes, before_blocks_dict = kpl_data_manager.KPLLimitUpDataRecordManager.latest_origin_datas, kpl_data_manager.KPLLimitUpDataRecordManager.total_datas, yesterday_codes, block_info.get_before_blocks_dict()
+                                            if not current_limit_up_datas:
+                                                current_limit_up_datas = []
+                                            if not limit_up_record_datas:
+                                                limit_up_record_datas = []
+                                            # 涔扮粷瀵硅�佸ぇ
+                                            # 涓�斾笉鑳芥挙鍗�
+                                            # if CodePlateKeyBuyManager.is_need_cancel(code, limit_up_reasons.get(code),
+                                            #                                          current_limit_up_datas,
+                                            #                                          limit_up_record_datas,
+                                            #                                          yesterday_current_limit_up_codes,
+                                            #                                          before_blocks_dict):
+                                            #     l2_data_manager_new.L2TradeDataProcessor.cancel_buy(code,
+                                            #                                                         f"娑ㄥ仠鍘熷洜锛坽limit_up_reasons.get(code)}锛変笉鏄�佸ぇ鎾ゅ崟",
+                                            #                                                         "鏉垮潡鎾�")
+                                except Exception as e:
+                                    logger_debug.exception(e)
+                    kpl_data_manager.KPLLimitUpDataRecordManager.save_record(tool.get_now_date_str(), result_list_)
+                    self.__kplDataManager.save_data(type_, result_list_)
+            except Exception as e:
+                logger_debug.exception(e)
         # 灏�"姒傚康"浜屽瓧鏇挎崲鎺�
         data = data_origin
         type_ = data["type"]

--
Gitblit v1.8.0