From f5b416d9cb5214ff0e46ca6305098085d2fe8742 Mon Sep 17 00:00:00 2001 From: Administrator <admin@example.com> Date: 星期三, 27 九月 2023 18:02:11 +0800 Subject: [PATCH] L2与交易之间的通信采用队列方式/实现L撤单比例动态计算 --- third_data/data_server.py | 20 +++++++++++++++++--- 1 files changed, 17 insertions(+), 3 deletions(-) diff --git a/third_data/data_server.py b/third_data/data_server.py index 1fa8dad..b38a9c4 100644 --- a/third_data/data_server.py +++ b/third_data/data_server.py @@ -10,7 +10,7 @@ from utils import global_util, tool from code_attribute import gpcode_manager from log_module import log, log_analyse, log_export -from l2 import code_price_manager, l2_data_util, l2_data_manager_new +from l2 import code_price_manager, l2_data_util, l2_data_manager_new, cancel_buy_strategy from l2.cancel_buy_strategy import HourCancelBigNumComputer from output.limit_up_data_filter import IgnoreCodeManager from third_data import kpl_util, kpl_data_manager, kpl_api, block_info @@ -495,6 +495,18 @@ 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: # 鏍规嵁娑ㄥ仠鍘熷洜鍒ゆ柇鏄惁鍙互涔� @@ -510,7 +522,7 @@ if not current_limit_up_datas: current_limit_up_datas = [] if not limit_up_record_datas: - 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, @@ -518,7 +530,9 @@ before_blocks_dict): pass # TODO 娴嬭瘯鏆傛椂娉ㄩ噴 - # l2_data_manager_new.L2TradeDataProcessor.cancel_buy(code, f"娑ㄥ仠鍘熷洜锛坽 limit_up_reasons.get(code)}锛変笉鏄�佸ぇ鎾ゅ崟", "鏉垮潡鎾�") + 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_) -- Gitblit v1.8.0