From 4abf9cf02f57a62a89ab8b7c67731a9c53a9936b Mon Sep 17 00:00:00 2001
From: Administrator <admin@example.com>
Date: 星期二, 14 十一月 2023 09:49:09 +0800
Subject: [PATCH] BUG修复

---
 l2/l2_transaction_data_manager.py |   47 +++++++++++++++++++++++++++--------------------
 1 files changed, 27 insertions(+), 20 deletions(-)

diff --git a/l2/l2_transaction_data_manager.py b/l2/l2_transaction_data_manager.py
index 1b21b48..9013a19 100644
--- a/l2/l2_transaction_data_manager.py
+++ b/l2/l2_transaction_data_manager.py
@@ -6,11 +6,11 @@
 from code_attribute import gpcode_manager
 from l2 import l2_data_util, l2_data_manager, transaction_progress
 from l2.cancel_buy_strategy import LCancelRateManager, DCancelBigNumComputer, LCancelBigNumComputer, \
-    SecondCancelBigNumComputer
+    SecondCancelBigNumComputer, HourCancelBigNumComputer, FastCancelBigNumComputer
 from l2.l2_data_manager_new import L2TradeDataProcessor
 from l2.l2_data_util import L2DataUtil
 from log_module import async_log_util
-from log_module.log import hx_logger_l2_transaction, logger_l2_trade_buy_queue, hx_logger_l2_upload
+from log_module.log import hx_logger_l2_transaction, logger_l2_trade_buy_queue, hx_logger_l2_upload, hx_logger_l2_debug
 from trade import current_price_process_manager, trade_manager, l2_trade_factor
 from trade.deal_big_money_manager import DealOrderNoManager
 from trade.l2_trade_factor import L2PlaceOrderParamsManager
@@ -41,7 +41,7 @@
                 d = datas[i]
                 buy_no = f"{d[6]}"
                 if buyno_map and buy_no in buyno_map:
-                    async_log_util.info(hx_logger_l2_transaction, f"{code}鎴愪氦杩涘害锛歿buyno_map[buy_no]['index']}")
+                    async_log_util.info(hx_logger_l2_debug, f"{code}鎴愪氦杩涘害锛歿buyno_map[buy_no]['index']}")
                     buy_progress_index = buyno_map[buy_no]["index"]
                     break
             # ------缁熻淇濆瓨鎴愪氦澶у崟璁㈠崟鍙�------
@@ -72,33 +72,40 @@
                     rate = round(total_deal_nums / (thresh_hold_money // (float(limit_up_price) * 100)), 2)
                     LCancelRateManager().set_big_num_deal_rate(code, rate)
 
+                    # 鑾峰彇鎵ц浣嶆椂闂�
+            order_begin_pos = l2_data_manager.TradePointManager().get_buy_compute_start_data_cache(code)
             if buy_progress_index is not None:
-                # 鑾峰彇鎵ц浣嶆椂闂�
-                buy_single_index, buy_exec_index, compute_index, num, count, max_num_set, volume_rate = l2_data_manager.TradePointManager().get_buy_compute_start_data_cache(
-                    code)
-                cls.__TradeBuyQueue.set_traded_index(code, buy_progress_index)
+                cls.__TradeBuyQueue.set_traded_index(code, buy_progress_index, total_datas)
                 async_log_util.info(logger_l2_trade_buy_queue, "鑾峰彇鎴愪氦浣嶇疆鎴愬姛锛� code-{} index-{}", code,
                                     buy_progress_index)
-                limit_up_price = gpcode_manager.get_limit_up_price(code)
-                if buy_exec_index and buy_exec_index > -1:
-                    m_base_val = L2PlaceOrderParamsManager.get_base_m_val(code)
-                    need_cancel, msg = DCancelBigNumComputer().set_trade_progress(code,
-                                                                                  buy_progress_index,
-                                                                                  buy_exec_index,
-                                                                                  total_datas,
-                                                                                  m_base_val,
-                                                                                  limit_up_price)
-                    if need_cancel:
-                        L2TradeDataProcessor.cancel_buy(code, f"D鎾�:{msg}", source="d_cancel")
+                # limit_up_price = gpcode_manager.get_limit_up_price(code)
+                # 娉ㄩ噴鎺塂鎾ゅ崟
+                # if buy_exec_index and buy_exec_index > -1:
+                #     m_base_val = L2PlaceOrderParamsManager.get_base_m_val(code)
+                #     need_cancel, msg = DCancelBigNumComputer().set_trade_progress(code,
+                #                                                                   buy_progress_index,
+                #                                                                   buy_exec_index,
+                #                                                                   total_datas,
+                #                                                                   m_base_val,
+                #                                                                   limit_up_price)
+                #     if need_cancel:
+                #         L2TradeDataProcessor.cancel_buy(code, f"D鎾�:{msg}", source="d_cancel")
 
-                LCancelBigNumComputer().set_trade_progress(code, buy_progress_index, total_datas)
+                LCancelBigNumComputer().set_trade_progress(code, order_begin_pos.buy_single_index, buy_progress_index, total_datas)
+                FastCancelBigNumComputer().set_trade_progress(code, buy_progress_index)
                 SecondCancelBigNumComputer().set_transaction_index(
                     code,
                     buy_progress_index)
+                if order_begin_pos and order_begin_pos.buy_exec_index and order_begin_pos.buy_exec_index > -1:
+                    HourCancelBigNumComputer().set_transaction_index(code, order_begin_pos.buy_single_index, buy_progress_index)
             else:
                 pass
+            if order_begin_pos and order_begin_pos.buy_exec_index and order_begin_pos.buy_exec_index > -1:
+                # 瑙﹀彂L鎾や笂閲嶆柊璁$畻
+                LCancelBigNumComputer().re_compute_l_up_watch_indexes(code, order_begin_pos.buy_single_index)
+
         except Exception as e:
-            hx_logger_l2_transaction.exception(e)
+            hx_logger_l2_debug.exception(e)
         finally:
             use_time = int((time.time() - __start_time) * 1000)
             if use_time > 10:

--
Gitblit v1.8.0