From e95ea73d04c06f4cd46a3d1497c39c80352a8cd0 Mon Sep 17 00:00:00 2001
From: Administrator <admin@example.com>
Date: 星期五, 29 八月 2025 15:16:37 +0800
Subject: [PATCH] bug修复

---
 utils/init_data_util.py |   28 +++++++++++++++++-----------
 1 files changed, 17 insertions(+), 11 deletions(-)

diff --git a/utils/init_data_util.py b/utils/init_data_util.py
index be4543b..8f50a93 100644
--- a/utils/init_data_util.py
+++ b/utils/init_data_util.py
@@ -14,18 +14,20 @@
 
 def re_set_price_pres(codes, force=False):
     # 閫氳繃鍘嗗彶鏁版嵁缂撳瓨鑾峰彇
-    result = HistoryKDatasUtils.get_gp_latest_info(codes)
-    for item in result:
-        symbol = item['symbol']
-        symbol = symbol.split(".")[1]
-        pre_close = tool.to_price(decimal.Decimal(str(item['pre_close'])))
-        gpcode_manager.CodePrePriceManager.set_price_pre(symbol, pre_close, force)
+    for code in codes:
+        result = HistoryKDatasUtils.get_history_tick_n(code, 1)
+        for item in result:
+            symbol = item['symbol']
+            symbol = symbol.split(".")[1]
+            pre_close = tool.to_price(decimal.Decimal(str(item['close'])))
+            gpcode_manager.CodePrePriceManager().set_price_pre(symbol, pre_close, force)
 
 
 # 鑾峰彇杩�90澶╃殑鏈�澶ч噺涓庢渶杩戠殑閲�
 # 鑾峰彇鏈�杩戜竴娆℃定鍋�/娑ㄥ仠涓嬩竴涓氦鏄撴棩鐨勬渶澶у��
-def get_volumns_by_code(code, count=60):
-    datas = HistoryKDatasUtils.get_history_tick_n(code, count, "open,high,low,close,volume,pre_close,bob,amount")
+def get_volumns_by_code(code, count=60, juejin=False):
+    datas = HistoryKDatasUtils.get_history_tick_n(code, count, "open,high,low,close,volume,pre_close,bob,amount",
+                                                  juejin=juejin)
     if not datas:
         return None
     # 璁$畻
@@ -81,9 +83,11 @@
 
     # 鍒ゆ柇鏄惁娑ㄥ仠杩�
     target_index = None
+    has_limited_up = False
     for i in range(len(datas)):
         data = datas[i]
         if __is_limited_up(data):
+            has_limited_up = True
             next_data = None
             if i > 0:
                 next_data = datas[i - 1]
@@ -101,7 +105,9 @@
                 target_index = i
             if data['volume'] > datas[target_index]['volume']:
                 target_index = i
-    return datas[target_index]['volume'], datas[target_index]['volume'], datas[target_index]['bob'].strftime(
+    # 濡傛灉60涓氦鏄撴棩娌℃定鍋滐紝闇�瑕佸湪鏈�楂橀噺鐨勫熀纭�涓妜2
+    return datas[target_index]['volume'] * (2 if not has_limited_up else 1), datas[target_index]['volume'] * (
+        2 if not has_limited_up else 1), datas[target_index]['bob'].strftime(
         "%Y-%m-%d"), target_index
 
 
@@ -121,8 +127,8 @@
         if d["volume"] > max_volume_info[0]:
             max_volume_info = (d["volume"], d)
     if max_volume_info:
-        return max_volume_info[0]
-    return None
+        return max_volume_info[0], max_volume_info[1]['bob'].strftime("%Y-%m-%d")
+    return None, None
 
 
 # 杩斿洖锛�(60澶╂渶澶ч噺,鏄ㄦ棩閲�,閲忓弬鑰冩棩鏈�,鍙傝�冮噺鎹粖浜ゆ槗鏃ユ暟)

--
Gitblit v1.8.0