From e9680308bd91bb112c29f03a1316a0fc49e1917a Mon Sep 17 00:00:00 2001 From: Administrator <admin@example.com> Date: 星期一, 09 九月 2024 14:58:35 +0800 Subject: [PATCH] 一个板块扫入之后不能再次扫入 --- servers/huaxin_trade_server.py | 27 ++++++++++++++++++++++++++- 1 files changed, 26 insertions(+), 1 deletions(-) diff --git a/servers/huaxin_trade_server.py b/servers/huaxin_trade_server.py index 7e865b9..0757a55 100644 --- a/servers/huaxin_trade_server.py +++ b/servers/huaxin_trade_server.py @@ -40,7 +40,8 @@ hx_logger_l2_orderdetail, hx_logger_l2_market_data, logger_l2_g_cancel, logger_debug, \ logger_system, logger_trade, logger_local_huaxin_l1_trade_info, logger_l2_codes_subscript, logger_l2_radical_buy from third_data import block_info, kpl_data_manager, history_k_data_manager, huaxin_l1_data_manager -from third_data.code_plate_key_manager import KPLCodeJXBlockManager, CodePlateKeyBuyManager, RadicalBuyBlockManager +from third_data.code_plate_key_manager import KPLCodeJXBlockManager, CodePlateKeyBuyManager, RadicalBuyBlockManager, \ + TargetCodePlateKeyManager from third_data.history_k_data_util import JueJinApi from trade import trade_manager, l2_trade_util, \ trade_data_manager, trade_constant @@ -787,11 +788,35 @@ result = RadicalBuyBlockManager.is_radical_buy(code, yesterday_codes) async_log_util.info(logger_l2_radical_buy, f"璁$畻鏉垮潡缁撴灉锛歿code}-{result}") self.__radical_buy_by_blocks_result_cache[code] = (time.time() + 3, result) + RadicalBuyDealCodesManager.radical_buy_blocks_dict[code] = result[0] else: # 鍙栫紦瀛� result = result[1] if result[0]: + # 濡傛灉鍏抽敭璇嶅寘鍚凡鎴愪氦鐨勫師鍥犲氨涓嶅啀涓嬪崟 + # 鑾峰彇宸茬粡鎴愪氦浠g爜鐨勬澘鍧� + # ---------------鑾峰彇宸茬粡鎴愪氦浠g爜鐨勬澘鍧�---------------- + deal_reasons = set() + for dc in deal_codes: + # 鑾峰彇娑ㄥ仠鍘熷洜 + limit_up_reason = kpl_data_manager.LimitUpDataConstant.get_limit_up_reason_with_history(dc) + if limit_up_reason in constant.KPL_INVALID_BLOCKS: + limit_up_reason = None + # 濡傛灉娑ㄥ仠鍘熷洜涓虹┖灏遍渶瑕佽幏鍙栦笂娆℃縺杩涗拱鐨勫師鍥� + if limit_up_reason is None: + radical_buy_blocks = RadicalBuyDealCodesManager.radical_buy_blocks_dict.get(dc) + deal_reasons |= radical_buy_blocks + else: + deal_reasons.add(limit_up_reason) + # 鎴愪氦浠g爜鐨勬澘鍧楀鏋滃拰鐩爣浠g爜鏉垮潡鏈変氦闆嗗氨涓嶆壂 + keys_, k1_, k11_, k2_, k3_, k4_ = TargetCodePlateKeyManager().get_plate_keys(code, + contains_today=False) + match_blocks = keys_ & deal_reasons + if match_blocks: + async_log_util.info(logger_l2_radical_buy, f"鏉垮潡鏈夋垚浜わ細{code}-{match_blocks}") + return + # 鏈夊彲浠ユ壂鐨勬澘鍧� # 鍒ゆ柇鏈�杩戠殑涓诲姩涔板崰浜嗘�讳拱棰濈殑澶氬皯 refer_sell_data = L2MarketSellManager().get_refer_sell_data(code, l2_huaxin_util.convert_time( -- Gitblit v1.8.0