From 48fb7a00951f91bdc707e5dd2d196e5bccb752c3 Mon Sep 17 00:00:00 2001 From: Administrator <admin@example.com> Date: 星期三, 18 六月 2025 18:41:30 +0800 Subject: [PATCH] 异常保护 --- l2_test.py | 26 +++++++++++++++++++++----- 1 files changed, 21 insertions(+), 5 deletions(-) diff --git a/l2_test.py b/l2_test.py index 4015391..d555401 100644 --- a/l2_test.py +++ b/l2_test.py @@ -11,6 +11,7 @@ import psutil import requests +from api import low_suction_data_pusher from code_attribute import global_data_loader from huaxin_client import l2_client_test, l1_subscript_codes_manager from log_module.log import logger_local_huaxin_l2_transaction_big_order, logger_system, \ @@ -18,6 +19,7 @@ from third_data.custom_block_in_money_manager import CodeInMoneyManager, BlockInMoneyRankManager from third_data.history_k_data_manager import HistoryKDataManager from third_data.history_k_data_util import HistoryKDatasUtils +from trade.buy_radical.block_special_codes_manager import BlockSpecialCodesManager from utils import tool, middle_api_protocol, global_util import urllib.parse as urlparse from urllib.parse import parse_qs @@ -123,12 +125,16 @@ volume = zylt_volume_map.get(code) # 浠婃棩娑ㄥ仠浠疯绐佺牬鏄ㄦ棩鏈�楂樹环 k_bars = HistoryKDataManager().get_history_bars(code, last_trade_day) - if k_bars and 30e8 <= k_bars[0]["close"] * volume * tool.get_limit_up_rate(code) <= 300e8: - # 鑷敱娴侀�氬競鍊煎湪30浜�-300浜夸互涓� + if k_bars and 10e8 <= k_bars[0]["close"] * volume * tool.get_limit_up_rate(code) <= 300e8: + # 鑷敱娴侀�氬競鍊煎湪10浜�-300浜夸互涓� limit_up_price = round(tool.get_limit_up_rate(code) * k_bars[0]["close"], 2) - if limit_up_price > k_bars[0]["high"]: + if limit_up_price > k_bars[0]["high"] or True: # 浠婃棩娑ㄥ仠浠疯绐佺牬鏄ㄦ棩鏈�楂樹环 codes.add(code) + # 鑾峰彇杈ㄨ瘑搴︾殑绁� + special_codes = BlockSpecialCodesManager().get_origin_code_blocks_dict().keys() + if special_codes: + codes |= set(special_codes) return codes except Exception as e: logger_system.exception(e) @@ -138,8 +144,14 @@ def __save_accurate_big_order(big_accurate_order_queue): while True: try: - data = big_accurate_order_queue.get() - logger_local_huaxin_l2_transaction_accurate_big_order.info(f"{data}") + datas = [] + while not big_accurate_order_queue.empty(): + data = big_accurate_order_queue.get() + datas.append(data) + if datas: + low_suction_data_pusher.push_big_order(datas) + for data in datas: + logger_local_huaxin_l2_transaction_accurate_big_order.info(f"{data}") except: pass @@ -217,6 +229,10 @@ __upload_data("jingxuan_rank", json.dumps(fins)) __upload_data("jingxuan_rank_out", json.dumps(fouts)) __upload_codes_in_money() + try: + low_suction_data_pusher.push_block_in(in_list) + except: + pass except Exception as e: logging.exception(e) finally: -- Gitblit v1.8.0