From 8535f56dbf6e410b4a09f02f95d4d49bcc8753f2 Mon Sep 17 00:00:00 2001
From: Administrator <admin@example.com>
Date: 星期一, 27 三月 2023 18:58:54 +0800
Subject: [PATCH] 看盘页面数据调整

---
 server.py |   65 ++++++++++++++++++++++++--------
 1 files changed, 48 insertions(+), 17 deletions(-)

diff --git a/server.py b/server.py
index 5faf62e..1478572 100644
--- a/server.py
+++ b/server.py
@@ -30,9 +30,11 @@
 import ths_industry_util
 import ths_util
 import tool
+from output import code_info_output
 from third_data import hot_block_data_process
 from ths import l2_listen_pos_health_manager
-from trade import trade_gui, trade_data_manager, trade_manager, l2_trade_util, deal_big_money_manager
+from trade import trade_gui, trade_data_manager, trade_manager, l2_trade_util, deal_big_money_manager, \
+    first_code_score_manager
 import l2_code_operate
 from code_data_util import ZYLTGBUtil
 import l2.transaction_progress
@@ -286,11 +288,18 @@
                             logger_first_code_record.info("鏂板棣栨澘锛歿}", new_add_codes)
                             # 鑾峰彇60澶╂渶澶ц褰�
                             for code in codes:
+                                need_get_volumn = False
                                 if code not in global_util.max60_volumn or global_util.max60_volumn.get(code) is None:
+                                    need_get_volumn = True
+                                if not need_get_volumn and code_nature_analyse.CodeNatureRecordManager.get_nature(
+                                        code) is None:
+                                    need_get_volumn = True
+                                if need_get_volumn:
                                     volumes_data = juejin.get_volumns_by_code(code, 150)
-                                    volumes = juejin.parse_max_volume(volumes_data[:60])
+                                    volumes = juejin.parse_max_volume(volumes_data[:60], code_nature_analyse.is_new_top(
+                                        gpcode_manager.get_limit_up_price(code), volumes_data[:60]))
                                     logger_first_code_record.info("{} 鑾峰彇鍒伴鏉�60澶╂渶澶ч噺锛歿}", code, volumes)
-                                    code_volumn_manager.set_histry_volumn(code, volumes[0], volumes[1])
+                                    code_volumn_manager.set_histry_volumn(code, volumes[0], volumes[1], volumes[2])
                                     # 鍒ゆ柇K绾垮舰鎬�
                                     is_has_k_format, msg = code_nature_analyse.is_has_k_format(
                                         gpcode_manager.get_limit_up_price(code), volumes_data)
@@ -300,11 +309,9 @@
                                         bad_codes.add(code)
                                         # 鍔犲叆绂佹浜ゆ槗浠g爜
                                         l2_trade_util.forbidden_trade(code)
-                                        break
-                                    else:
-                                        code_nature_analyse.set_record_datas(code,
-                                                                             gpcode_manager.get_limit_up_price(code),
-                                                                             volumes_data)
+                                    code_nature_analyse.set_record_datas(code,
+                                                                         gpcode_manager.get_limit_up_price(code),
+                                                                         volumes_data)
 
                             # 绉婚櫎浠g爜
                             listen_codes = gpcode_manager.get_listen_codes()
@@ -704,9 +711,22 @@
                                         {"block_name": block, "block_size": len(block_datas), "index": i,
                                          "price": block_datas[i][5], "rate": block_datas[i][6]})
                                     break
-                    final_data = {'code': code, 'today': today_datas, 'last_day': last_datas}
+                    final_data = {'code': code, 'data': code_info_output.get_output_html(code)}
                     return_str = json.dumps({"code": 0, "data": final_data})
                     pass
+                # 鑾峰彇鏈�杩�2涓氦鏄撴棩娑ㄥ仠浠g爜
+                elif type == 72:
+                    day = tool.get_now_date_str()
+                    last_day = juejin.JueJinManager.get_previous_trading_date(day)
+                    data_list = list(hot_block_data_process.XGBHotBlockDataManager.list_all(day))
+                    data_list_last = list(hot_block_data_process.XGBHotBlockDataManager.list_all(last_day))
+                    data_list.extend(data_list_last)
+                    codes_set = set()
+                    if data_list:
+                        for d in data_list:
+                            if len(d[4]) > 6:
+                                codes_set.add(d[3])
+                    return_str = json.dumps({"code": 0, "data": list(codes_set)})
                 elif type == 201:
                     # 鍔犲叆榛戝悕鍗�
                     data = json.loads(_str)
@@ -872,18 +892,29 @@
 
 
 if __name__ == "__main__":
-    codes = ["601698"]
+    codes = ["002153", "002253", "002351"]
     for code in codes:
-        volumes_data = juejin.get_volumns_by_code(code, 150)
-        volumes_data = volumes_data[1:]
         global_data_loader.load_zyltgb()
         limit_up_price = float(gpcode_manager.get_limit_up_price(code))
-        # 鍒ゆ柇鑲℃��
-        # is_k_format, msg = code_nature_analyse.is_has_k_format(float(limit_up_price), volumes_data)
-        # print(code, is_k_format, msg)
+        volumes_data = juejin.get_volumns_by_code(code, 150)
+        volumes_data = volumes_data[1:]
+        volumes = juejin.parse_max_volume(volumes_data[:60],
+                                          code_nature_analyse.is_new_top(gpcode_manager.get_limit_up_price(code),
+                                                                         volumes_data[:60]))
+        logger_first_code_record.info("{} 鑾峰彇鍒伴鏉�60澶╂渶澶ч噺锛歿}", code, volumes)
+        code_volumn_manager.set_histry_volumn(code, volumes[0], volumes[1], volumes[2])
+        # 鍒ゆ柇K绾垮舰鎬�
+        is_has_k_format, msg = code_nature_analyse.is_has_k_format(
+            gpcode_manager.get_limit_up_price(code), volumes_data)
+        if not is_has_k_format:
+            logger_first_code_record.info("{}棣栨澘K绾垮舰鎬佷笉濂�,{}", code, msg)
+            # 鍔犲叆绂佹浜ゆ槗浠g爜
+            l2_trade_util.forbidden_trade(code)
 
         code_nature_analyse.set_record_datas(code,
-                                             limit_up_price,
+                                             gpcode_manager.get_limit_up_price(code),
                                              volumes_data)
 
-        print(code_nature_analyse.get_k_format(float(limit_up_price), volumes_data))
+        # code_nature_analyse.set_record_datas(code,
+        #                                      limit_up_price,
+        #                                      volumes_data)

--
Gitblit v1.8.0