From abd7affcd9d83487001ce23a7a9596528554a258 Mon Sep 17 00:00:00 2001
From: Administrator <admin@example.com>
Date: 星期三, 27 十一月 2024 17:18:50 +0800
Subject: [PATCH] 扫入选票策略修改/主力流入前排板块修改

---
 third_data/kpl_limit_up_data_manager.py |   43 +++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 43 insertions(+), 0 deletions(-)

diff --git a/third_data/kpl_limit_up_data_manager.py b/third_data/kpl_limit_up_data_manager.py
index 0f05416..e6021ec 100644
--- a/third_data/kpl_limit_up_data_manager.py
+++ b/third_data/kpl_limit_up_data_manager.py
@@ -36,6 +36,45 @@
     return kpl_data_manager.KPLLimitUpDataRecordManager.total_datas
 
 
+@tool.singleton
+class ContainsLimitupCodesBlocksManager:
+    """
+    鍖呭惈娑ㄥ仠浠g爜鐨勬澘鍧�
+    """
+    __block_codes_dict = {}
+
+    def __init__(self):
+        self.__load_data()
+
+    def __load_data(self):
+        records = get_history_limit_up_datas(tool.get_now_date_str())
+        if records:
+            codes = set([r[3] for r in records])
+            for code in codes:
+                self.__add_code(code)
+
+    def get_block_codes(self, block):
+        return self.__block_codes_dict.get(block)
+
+    def __add_code(self, code):
+        blocks = LimitUpCodesBlockRecordManager().get_radical_buy_blocks(code)
+        for b in blocks:
+            if b not in self.__block_codes_dict:
+                self.__block_codes_dict[b] = set()
+            self.__block_codes_dict[b].add(code)
+
+    def set_current_limit_up_datas(self, datas):
+        """
+        璁剧疆褰撳墠娑ㄥ仠鏁版嵁
+        @param datas:
+        @return:
+        """
+        if datas:
+            codes = [x[0] for x in datas]
+            for code in codes:
+                self.__add_code(code)
+
+
 class CodeLimitUpSequenceManager:
     """
     浠g爜韬綅绠$悊
@@ -319,3 +358,7 @@
         rate = int((volumes_data[0]["close"] - min_price) * 100 / min_price)
         cls.__k_max_rate[code] = rate
         return cls.__k_datas.get(code)
+
+
+if __name__ == "__main__":
+    ContainsLimitupCodesBlocksManager()
\ No newline at end of file

--
Gitblit v1.8.0