From a00da3062c6c825b585f82275823ac45cdeb6502 Mon Sep 17 00:00:00 2001 From: Administrator <admin@example.com> Date: 星期五, 19 一月 2024 19:16:20 +0800 Subject: [PATCH] L后成交太快撤单 --- third_data/block_info.py | 47 +++++++++++++++++++++++++++++++++++++---------- 1 files changed, 37 insertions(+), 10 deletions(-) diff --git a/third_data/block_info.py b/third_data/block_info.py index 1ca14f6..b492143 100644 --- a/third_data/block_info.py +++ b/third_data/block_info.py @@ -9,6 +9,8 @@ from third_data.history_k_data_util import HistoryKDatasUtils from third_data.kpl_data_manager import KPLLimitUpDataRecordManager, KPLDataManager +from third_data import kpl_data_manager + __before_block_dict = {} __kplDataManager = KPLDataManager() @@ -16,12 +18,21 @@ def __load_before_block(code): if code not in __before_block_dict: - blocks = KPLLimitUpDataRecordManager.get_latest_blocks(code) + blocks = KPLLimitUpDataRecordManager.get_latest_blocks_set(code) if blocks: - blocks = blocks[0].split(',') __before_block_dict[code] = blocks return __before_block_dict.get(code) + + +# 鑾峰彇涔嬪墠鐨勬澘鍧� +def get_before_blocks(code): + return __before_block_dict.get(code) + + +# 鑾峰彇涔嬪墠鐨勪唬鐮�-鏉垮潡瀛楀吀 +def get_before_blocks_dict(): + return __before_block_dict def __get_code_from_code_info(code_info): @@ -58,7 +69,7 @@ if now_day in __blocks_dict: return __blocks_dict[now_day] now_date = datetime.datetime.now() - end_date = HistoryKDatasUtils.get_previous_trading_date(tool.get_now_date_str()) + end_date = HistoryKDatasUtils.get_previous_trading_date_cache(tool.get_now_date_str()) start_date = now_date - datetime.timedelta(days=(day_count * 2 + 10)) start_date = start_date.strftime("%Y-%m-%d") days = HistoryKDatasUtils.get_trading_dates(start_date, end_date) @@ -160,7 +171,7 @@ code_ = d[3] limit_up_codes_info_set.add((code_, d[5])) block_codes_set.add(code_) - elif d[3]==code: + elif d[3] == code: limit_up_codes_info_set.add((d[3], d[5])) # 鑾峰彇娑ㄥ仠鐨勯『搴� limit_up_index = -1 @@ -193,12 +204,13 @@ code_ = data[0] break_codes.add(code_) # 缁熻鍥炲皝 - for data in latest_datas: - if data[5] != target_block: - continue - # 鍥炲皝 - if data[2] != data[3]: - re_limit_codes.add(data[0]) + if latest_datas: + for data in latest_datas: + if data[5] != target_block: + continue + # 鍥炲皝 + if data[2] != data[3]: + re_limit_codes.add(data[0]) # 鎺掗櫎鑷繁 break_codes.discard(code) @@ -229,5 +241,20 @@ return fresult +# 鍒濆鍖栨澘鍧楁暟鎹� +def init(): + # 鍔犺浇鏁版嵁鍒板唴瀛樹腑 + kpl_data_manager.get_current_limit_up_data_records(10) + # 鍔犺浇鏈�杩戞暟鎹埌鍐呭瓨涓� + limit_up_datas = kpl_data_manager.KPLDataManager().get_data(kpl_util.KPLDataType.LIMIT_UP) + if limit_up_datas: + kpl_data_manager.KPLLimitUpDataRecordManager.latest_origin_datas = limit_up_datas + + +def init_code(code): + # 鍔犺浇鍘嗗彶娑ㄥ仠鍘熷洜 + __load_before_block(code) + + if __name__ == "__main__": get_info("603133") -- Gitblit v1.8.0