huaxin_client/l2_client.py | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
huaxin_client/l2_data_manager.py | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
log_module/log.py | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
log_module/log_export.py | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
huaxin_client/l2_client.py
@@ -572,6 +572,7 @@ __init_l2() l2_data_manager.run_upload_common() l2_data_manager.run_upload_trading_canceled() l2_data_manager.run_log() global l2CommandManager l2CommandManager = command_manager.L2CommandManager() l2CommandManager.init(MyL2ActionCallback()) huaxin_client/l2_data_manager.py
@@ -10,7 +10,8 @@ from huaxin_client.client_network import SendResponseSkManager # 活动时间 from log_module.log import logger_local_huaxin_l2_error, logger_local_huaxin_l2_upload from log_module import log_export from log_module.log import logger_local_huaxin_l2_error, logger_local_huaxin_l2_upload, logger_local_huaxin_l2_buy_no order_detail_upload_active_time_dict = {} transaction_upload_active_time_dict = {} @@ -20,6 +21,7 @@ target_codes = set() common_queue = queue.Queue() trading_canceled_queue = queue.Queue() log_buy_no_queue = queue.Queue() # 买入订单号的字典 buy_order_nos_dict = {} # 最近的大单成交单号 @@ -57,6 +59,8 @@ if data['SecurityID'] not in buy_order_nos_dict: buy_order_nos_dict[data['SecurityID']] = set() buy_order_nos_dict[data['SecurityID']].add(data['OrderNO']) # 买入订单号需要记录日志 log_buy_no_queue.put_nowait((data['SecurityID'], data['OrderNO'])) tmep_order_detail_queue_dict[code].put( (data['SecurityID'], data['Price'], data['Volume'], data['Side'], data['OrderType'], data['OrderTime'], @@ -225,6 +229,17 @@ logger_local_huaxin_l2_error.error(f"上传普通数据出错:{str(e)}") def __run_log(): print("__run_log") while True: try: temp = log_buy_no_queue.get() if temp: logger_local_huaxin_l2_buy_no.info(f"{temp[0]}#{temp[1]}") except: pass # 运行上传任务 def run_upload_task(code): # 如果代码没有在目标代码中就不需要运行 @@ -250,6 +265,14 @@ t.start() def run_log(): fdatas = log_export.load_huaxin_local_buy_no() global buy_order_nos_dict buy_order_nos_dict = fdatas t = threading.Thread(target=lambda: __run_log(), daemon=True) t.start() if __name__ == "__main__": code = "603809" target_codes.add(code) log_module/log.py
@@ -237,6 +237,10 @@ filter=lambda record: record["extra"].get("name") == "local_huaxin_g_cancel", rotation="00:00", compression="zip", enqueue=True) logger.add(self.get_local_huaxin_path("l2", "l2_buy_no"), filter=lambda record: record["extra"].get("name") == "local_huaxin_l2_buy_no", rotation="00:00", compression="zip", enqueue=True) def get_path(self, dir_name, log_name): @@ -344,6 +348,9 @@ logger_local_huaxin_trade_debug = __mylogger.get_logger("local_huaxin_trade_debug") logger_local_huaxin_l1 = __mylogger.get_logger("local_huaxin_l1_show_info") logger_local_huaxin_g_cancel = __mylogger.get_logger("local_huaxin_g_cancel") logger_local_huaxin_l2_buy_no = __mylogger.get_logger("local_huaxin_l2_buy_no") def close_print(): log_module/log_export.py
@@ -305,6 +305,24 @@ return fdatas # 加载华鑫本地买入订单号 def load_huaxin_local_buy_no(): path = f"{constant.get_path_prefix()}/logs/huaxin_local/l2/l2_buy_no.{tool.get_now_date_str()}.log" fdatas = {} if os.path.exists(path): with open(path, 'r', encoding="utf-8") as f: lines = f.readlines() for line in lines: if line: data = line.split("-")[1].strip() code = data.split("#")[0] buy_no = int(data.split("#")[1]) if code not in fdatas: fdatas[code] = set() fdatas[code].add(buy_no) return fdatas if __name__ == '__main__': logger_l2_process_time.info("test123") # print(get_h_cancel_compute_info("603912"))