From 3ea84f8adaeeb851e590fa74ceed009a0a19b08c Mon Sep 17 00:00:00 2001
From: Administrator <admin@example.com>
Date: 星期二, 28 十一月 2023 17:46:38 +0800
Subject: [PATCH] 近6个交易日涨幅过高实现

---
 third_data/kpl_block_util.py |   22 ++++++++++++++++++++--
 1 files changed, 20 insertions(+), 2 deletions(-)

diff --git a/third_data/kpl_block_util.py b/third_data/kpl_block_util.py
index 53bfc80..f03b2e6 100644
--- a/third_data/kpl_block_util.py
+++ b/third_data/kpl_block_util.py
@@ -25,6 +25,19 @@
     return limit_up_codes
 
 
+# 鑾峰彇涓绘澘寮�1涓旂洰鍓嶆槸娑ㄥ仠鐨勪唬鐮�
+def get_shsz_open_limit_up_codes_current(code, block, current_limit_up_datas):
+    # 鑾峰彇浠婃棩9锛�30鐨勬椂闂存埑
+    time_str = datetime.datetime.now().strftime("%Y-%m-%d") + " 09:30:00"
+    timestamp = time.mktime(time.strptime(time_str, '%Y-%m-%d %H:%M:%S'))
+    limit_up_codes = set()
+    for k in current_limit_up_datas:
+        if k[5] == block:
+            if int(k[2]) < timestamp:
+                limit_up_codes.add(k[0])
+    return limit_up_codes
+
+
 # 浠g爜鏄惁鏄悗鎺�
 def is_back_row(code, block, current_limit_up_datas):
     codes = set()
@@ -155,7 +168,7 @@
 # 鑾峰彇褰撴棩瀹炴椂韬綅
 # before_blocks_dict鏍煎紡浣峽"浠g爜":set("鏉垮潡")}
 def get_code_current_rank(code, block, current_limit_up_datas, code_limit_up_reason_dict,
-                          yesterday_current_limit_up_codes, shsz=False):
+                          yesterday_current_limit_up_codes, exclude_codes, open_limit_up_count, shsz=False):
     block_codes_infos = []
     limit_up_time = time.time()
     for k in current_limit_up_datas:
@@ -174,9 +187,14 @@
     block_codes_infos.append((code, limit_up_time))
     block_codes_infos.sort(key=lambda x: x[1])
     front_codes = []
+    first_count = 0
     for i in range(0, len(block_codes_infos)):
+        if i == open_limit_up_count and exclude_codes and block_codes_infos[i][0] in exclude_codes:
+            # 闈炲紑1鑰佸ぇ琚帓闄�
+            first_count += 1
+            continue
         if block_codes_infos[i][0] == code:
-            return i, front_codes
+            return i - first_count, front_codes
         else:
             front_codes.append(block_codes_infos[i][0])
     return 0, []

--
Gitblit v1.8.0