From b2b9497053639a359dc50c05674dfa81169ed31e Mon Sep 17 00:00:00 2001 From: Administrator <admin@example.com> Date: 星期三, 03 七月 2024 15:09:14 +0800 Subject: [PATCH] 外部API接口调整/增加历史K线更新接口 --- code_attribute/first_target_code_data_processor.py | 17 ++++++++++++++--- 1 files changed, 14 insertions(+), 3 deletions(-) diff --git a/code_attribute/first_target_code_data_processor.py b/code_attribute/first_target_code_data_processor.py index 921a5b1..eaff5e7 100644 --- a/code_attribute/first_target_code_data_processor.py +++ b/code_attribute/first_target_code_data_processor.py @@ -12,6 +12,7 @@ from code_attribute.gpcode_manager import WantBuyCodesManager from log_module.log import logger_first_code_record, logger_l2_codes_subscript from third_data.code_plate_key_manager import CodesHisReasonAndBlocksManager +from third_data.history_k_data_manager import HistoryKDataManager from third_data.history_k_data_util import HistoryKDatasUtils, JueJinApi from ths import l2_code_operate from trade import trade_data_manager, l2_trade_util @@ -42,7 +43,11 @@ def process_first_codes_datas(dataList, request_id=None): logger_l2_codes_subscript.info(f"{request_id}鍔犺浇l2浠g爜鐩稿叧鏁版嵁") # 鑾峰彇鏈�杩�5澶╃殑浜ゆ槗鏃ユ湡锛屼负鍚庨潰鐨勬暟鎹绠楀仛鍑嗗 - HistoryKDatasUtils.get_latest_trading_date_cache(5) + dates = HistoryKDatasUtils.get_latest_trading_date_cache(5) + latest_trading_date = None + if dates: + latest_trading_date = dates[0] + limit_up_price_dict = {} temp_codes = [] codes = [] @@ -95,7 +100,12 @@ if limit_up_price is None: continue try: - volumes_data = init_data_util.get_volumns_by_code(code, 150) + # 棣栧厛浠庣紦瀛橀噷闈㈣幏鍙� + volumes_data = None + if latest_trading_date: + volumes_data = HistoryKDataManager().get_history_bars(code, latest_trading_date) + if not volumes_data: + volumes_data = init_data_util.get_volumns_by_code(code, 150) volumes = init_data_util.parse_max_volume(code, volumes_data[:90], code_nature_analyse.is_new_top(code, limit_up_price, @@ -126,7 +136,8 @@ l2_trade_util.forbidden_trade(code, f"鏃犺鲸璇嗗害锛屾定鍋滀环({limit_up_price})>50") continue - if code_nature_analyse.is_price_too_high_in_days(code, volumes_data, limit_up_price)[0] and code.find("30")!=0: + if code_nature_analyse.is_price_too_high_in_days(code, volumes_data, limit_up_price)[ + 0] and code.find("30") != 0: # 鍒ゆ柇鏄惁澶珮 l2_trade_util.forbidden_trade(code, "6澶╁唴鑲′环闀垮緱澶珮") continue -- Gitblit v1.8.0