From 1a9060fd3373df54b6908ad234587f93a62d14fd Mon Sep 17 00:00:00 2001
From: Administrator <admin@example.com>
Date: 星期三, 28 五月 2025 23:28:34 +0800
Subject: [PATCH] bug修复

---
 trade/buy_radical/radical_buy_strategy.py |   22 +++++++++++++++-------
 1 files changed, 15 insertions(+), 7 deletions(-)

diff --git a/trade/buy_radical/radical_buy_strategy.py b/trade/buy_radical/radical_buy_strategy.py
index 8753d20..876852a 100644
--- a/trade/buy_radical/radical_buy_strategy.py
+++ b/trade/buy_radical/radical_buy_strategy.py
@@ -167,9 +167,22 @@
     # 姣忔涓婃澘鐨勫ぇ鍗曚笌閲戦
     big_order_count = radical_buy_data_manager.EveryLimitupBigDealOrderManager.get_big_buy_deal_order_count(code)
     big_order_money = radical_buy_data_manager.EveryLimitupBigDealOrderManager.get_big_buy_deal_order_money(code)
+
+    total_lack_money_info = radical_buy_data_manager.get_total_deal_big_order_info(code,
+                                                                                   gpcode_manager.get_limit_up_price_as_num(
+                                                                                       code),
+                                                                                   is_for_buy=True)
+    if total_lack_money_info and total_lack_money_info[2] > 1e8 and total_lack_money_info[0] <= 0:
+        # 瑕佹眰鐨勫ぇ鍗曞浜� 浠ュ悗锛屽洖灏佷拱锛屽彧瑕佹湁涓や釜澶у崟鎴愪氦浜�,绔嬪嵆涓嬪崟
+        THRESHOLD_MONEY, is_temp_threshold_money = radical_buy_data_manager.BeforeSubDealBigOrderManager().get_big_order_threshold_info(
+            code)
+        if big_order_money > THRESHOLD_MONEY * 2:
+            return BUY_MODE_DIRECT, f"鏈変袱涓互涓婂ぇ鍗曠灛鏃舵垚浜わ紙{big_order_money}/{THRESHOLD_MONEY * 2}锛�, 澶у崟瓒冲"
+
     if big_order_count >= 2:
+        # 鍒ゆ柇澶у崟鏄惁婊¤冻
         average_big_order_money = int(big_order_money / big_order_count)
-        # 濡傛灉鍧囦环娑ㄥ箙灏忎簬7%鍧囧ぇ鍗曠瓑浜�299w
+        # 濡傛灉鍧囦环娑ㄥ箙灏忎簬7%,鍧囧ぇ鍗曠瓑浜�299w
         average_rate = Buy1PriceManager().get_average_rate(code)
         if average_rate is not None and average_rate < 0.07:
             average_big_order_money = 299 * 10000
@@ -200,12 +213,7 @@
             if tool.is_sz_code(code) and refer_sell_money >= 5e7:
                 return BUY_MODE_DIRECT, f"鍓╀綑娑ㄥ仠鎬诲崠棰�-{left_limit_up_sell_money}锛屽潎澶у崟-{average_big_order_money}锛� 鍓╀綑闃堝��-{threshold_left_sell_money}锛� 鎬绘姏鍘嬪ぇ({refer_sell_money})"
             else:
-                # 鍒ゆ柇澶у崟鏄惁婊¤冻
-                total_lack_money_info = radical_buy_data_manager.get_total_deal_big_order_info(code,
-                                                                                               gpcode_manager.get_limit_up_price_as_num(
-                                                                                                   code),
-                                                                                               is_for_buy=True)
-                if total_lack_money_info[0] <= 0:
+                if total_lack_money_info[0] <= 0 and tool.is_sz_code(code):
                     return BUY_MODE_DIRECT, f"鍓╀綑娑ㄥ仠鎬诲崠棰�-{left_limit_up_sell_money}锛屽潎澶у崟-{average_big_order_money}, 澶у崟瓒冲"
     else:
         average_big_order_money = 0

--
Gitblit v1.8.0