From 4f768a335ab9f61e8b63d1e7bba88ea00a6c4315 Mon Sep 17 00:00:00 2001
From: Administrator <admin@example.com>
Date: 星期一, 18 十二月 2023 16:24:21 +0800
Subject: [PATCH] 买入规则修改

---
 output/code_info_output.py |   46 ++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 46 insertions(+), 0 deletions(-)

diff --git a/output/code_info_output.py b/output/code_info_output.py
index d6e860b..b5220e4 100644
--- a/output/code_info_output.py
+++ b/output/code_info_output.py
@@ -312,6 +312,52 @@
     return params
 
 
+# 鑾峰彇寮�鐩樺暒鏉垮潡淇℃伅
+def get_kpl_block_info(code):
+    def format_plate_output(_plat):
+        return _plat, ''
+
+    ##############################寮�鐩樺暒鐩稿叧淇℃伅##################################
+    industry = global_util.code_industry_map.get(code)
+    kpl_code_info = {
+        "industry": format_plate_output(industry)}
+    # 鑾峰彇寮�鐩樺暒鏉垮潡
+    plate_info = None
+    jingxuan_block_info = KPLCodeJXBlockManager().get_jx_blocks_cache(code)
+    if not jingxuan_block_info:
+        jingxuan_block_info = KPLCodeJXBlockManager().get_jx_blocks_cache(code, by=True)
+    if jingxuan_block_info:
+        jingxuan_blocks = jingxuan_block_info[0]
+        plate_info = [(0, x, 0) for x in jingxuan_blocks]  # set([x[1] for x in jingxuan_blocks])
+    if not plate_info:
+        if code not in kpl_block_info_dict:
+            plate_info = kpl_api.getStockIDPlate(code)
+        else:
+            plate_info = kpl_block_info_dict.get(code)
+    if plate_info:
+        kpl_block_info_dict[code] = plate_info
+        plate_info.sort(key=lambda x: x[2])
+        plate_info.reverse()
+        kpl_code_info["plate"] = [(k[0], k[1], k[2], format_plate_output(k[1])[1]) for k in plate_info]
+
+    code_records = KPLLimitUpDataRecordManager.get_latest_infos(code, 4, False)[:2]
+    if code_records:
+        code_records = [(format_plate_output(k[0]), k[1], [format_plate_output(k1) for k1 in k[2].split("銆�")]) for k in
+                        code_records]
+    kpl_code_info["code_records"] = code_records
+
+    if not KPLLimitUpDataRecordManager.total_datas:
+        KPLLimitUpDataRecordManager.load_total_datas()
+    for d in KPLLimitUpDataRecordManager.total_datas:
+        if d[3] == code:
+            # 鑾峰彇浠婃棩
+            plates = d[6].split("銆�")
+            plates = [format_plate_output(p) for p in plates]
+            kpl_code_info["today"] = (format_plate_output(d[2]), d[1], plates)
+            break
+    return kpl_code_info
+
+
 def __load_trade_record(code, total_datas):
     def format_l2_data(item):
         return f"{item['val']['time']}#{item['val']['num']}鎵�#{round(item['val']['num'] * float(item['val']['price']) * 100 / 10000, 1)}涓�"

--
Gitblit v1.8.0