From 9513c56bfd52852356d177a0c68d957b2219a6ad Mon Sep 17 00:00:00 2001
From: Administrator <admin@example.com>
Date: 星期三, 20 十二月 2023 18:02:27 +0800
Subject: [PATCH] 买入条件调整

---
 utils/init_data_util.py |   27 +++++++++++++++++++++++----
 1 files changed, 23 insertions(+), 4 deletions(-)

diff --git a/utils/init_data_util.py b/utils/init_data_util.py
index ecd6e18..53977c9 100644
--- a/utils/init_data_util.py
+++ b/utils/init_data_util.py
@@ -30,11 +30,31 @@
 
 
 # 瑙f瀽鏈�澶ч噺
-def parse_max_volume(datas, is_new_top=False):
+def parse_max_volume(datas, is_new_or_near_top=False):
     max_volume = 0
-
     max_volume_date = None
-    if is_new_top:
+    # 鍒ゆ柇30澶╁唴鏄惁鏈夋定鍋�
+    if is_new_or_near_top:
+        # 30澶╁唴鏄惁鏈夋定鍋�
+        latest_limit_up_index = None
+        for i in range(30):
+            if i >= len(datas):
+                break
+            item = datas[i]
+            limit_up_price = float(gpcode_manager.get_limit_up_price_by_preprice(item["pre_close"]))
+            if abs(limit_up_price - item["high"]) < 0.001:
+                latest_limit_up_index = i
+                break
+        if latest_limit_up_index is not None:
+            # 绐佺牬鍓嶉珮鎴栬�呮帴杩戝墠楂橈紝30涓氦鏄撴棩鍐呮湁娑ㄥ仠
+            if latest_limit_up_index > 0 and datas[latest_limit_up_index - 1]["volume"] > datas[latest_limit_up_index]["volume"]:
+                return datas[latest_limit_up_index - 1]["volume"], datas[latest_limit_up_index - 1]["volume"], \
+                       datas[latest_limit_up_index - 1]['bob'].strftime("%Y-%m-%d")
+            else:
+                return datas[latest_limit_up_index]["volume"], datas[latest_limit_up_index]["volume"], \
+                       datas[latest_limit_up_index]['bob'].strftime("%Y-%m-%d")
+
+    if is_new_or_near_top:
         # 濡傛灉鏄獊鐮村墠楂樺氨鍙栨渶澶ч噺
         for item in datas:
             if max_volume < item["volume"]:
@@ -42,7 +62,6 @@
                 max_volume_date = item["bob"]
         return max_volume, max_volume, max_volume_date.strftime("%Y-%m-%d")
     else:
-
         date = None
         target_volume = None
         for i in range(len(datas)):

--
Gitblit v1.8.0