From e11395aa78e9259161ad601922b01f15c45e69be Mon Sep 17 00:00:00 2001 From: Administrator <admin@example.com> Date: 星期二, 25 七月 2023 14:51:54 +0800 Subject: [PATCH] bug修复 --- third_data/code_plate_key_manager.py | 38 +++++++++++++++++++++++++++++++++++--- 1 files changed, 35 insertions(+), 3 deletions(-) diff --git a/third_data/code_plate_key_manager.py b/third_data/code_plate_key_manager.py index bf3626a..200fd10 100644 --- a/third_data/code_plate_key_manager.py +++ b/third_data/code_plate_key_manager.py @@ -16,6 +16,34 @@ from trade import trade_manager +# 浠g爜绮鹃�夋澘鍧楃鐞� +class KPLCodeJXBlockManager: + __redisManager = redis_manager.RedisManager(3) + __code_blocks = {} + + def __get_redis(self): + return self.__redisManager.getRedis() + + def save_jx_blocks(self, code, blocks): + if blocks is None: + return + # 淇濆瓨鍓�2鏉℃暟鎹� + self.__get_redis().setex(f"kpl_jx_blocks-{code}", tool.get_expire(), json.dumps(blocks)) + self.__code_blocks[code] = blocks + + # 鑾峰彇绮鹃�夋澘鍧� + def get_jx_blocks(self, code): + if code in self.__code_blocks: + return self.__code_blocks[code] + val = self.__get_redis().get(f"kpl_jx_blocks-{code}") + if val is None: + return None + else: + val = json.loads(val) + self.__code_blocks[code] = val + return self.__code_blocks[code] + + # 寮�鐩樺暒绂佹浜ゆ槗鏉垮潡绠$悊 class KPLPlateForbiddenManager: __redisManager = redis_manager.RedisManager(3) @@ -329,6 +357,7 @@ __TargetCodePlateKeyManager = TargetCodePlateKeyManager() __LimitUpCodesPlateKeyManager = LimitUpCodesPlateKeyManager() __CodesHisReasonAndBlocksManager = CodesHisReasonAndBlocksManager() + __KPLCodeJXBlockManager = KPLCodeJXBlockManager() # 鑾峰彇鍙互涔扮殑鏉垮潡 # current_limit_up_datas: 浠婃棩瀹炴椂娑ㄥ仠 @@ -366,8 +395,10 @@ if k not in constant.KPL_INVALID_BLOCKS: keys.add(k) if not keys: - if k3: - keys |= k3 + # 鑾峰彇 + jx_blocks = cls.__KPLCodeJXBlockManager.get_jx_blocks(code) + if jx_blocks: + keys |= set([k[1] for k in jx_blocks[:2]]) log.logger_kpl_debug.info("{}鏈�缁堝叧閿瘝锛歿}", code, keys) # 娑ㄥ仠鍒楄〃涓尮閰嶅叧閿瘝锛岃繑鍥烇紙鏉垮潡:浠g爜闆嗗悎锛夛紝浠g爜闆嗗悎涓凡缁忔帓闄よ嚜韬� @@ -378,7 +409,8 @@ msg_list = [] for block in keys: is_top_8_record, top_8_record = kpl_block_util.is_record_top_block(code, block, limit_up_record_datas, 8) - is_top_4_current, top_4_current = kpl_block_util.is_current_top_block(code, block, current_limit_up_datas, 4) + is_top_4_current, top_4_current = kpl_block_util.is_current_top_block(code, block, current_limit_up_datas, + 4) is_top_4 = is_top_8_record and is_top_4_current msg_list.append(f"\n瀹炴椂top4: {top_4_current}(娑ㄥ仠鏁伴噺锛歿len(current_limit_up_datas)})") msg_list.append(f"鍘嗗彶top8: {top_8_record}") -- Gitblit v1.8.0