From 7284224d58773be6da3c569be3d54ac3b2646661 Mon Sep 17 00:00:00 2001
From: Administrator <admin@example.com>
Date: 星期四, 06 七月 2023 11:16:08 +0800
Subject: [PATCH] 更改包结构/动态引入windows平台依赖的相关包

---
 output/code_info_output.py |   69 ++++++++++++++++++++++++----------
 1 files changed, 48 insertions(+), 21 deletions(-)

diff --git a/output/code_info_output.py b/output/code_info_output.py
index d26fb87..808522d 100644
--- a/output/code_info_output.py
+++ b/output/code_info_output.py
@@ -6,30 +6,25 @@
 # 涓嬪崟鍙傛暟淇℃伅
 # 閫夎偂瀹�
 # 甯傚満鐑害
-import os
 import sys
 import time
-
-import code_volumn_manager
+import code_attribute
+from code_attribute import code_volumn_manager, limit_up_time_manager, global_data_loader, gpcode_manager
 import constant
-import global_data_loader
-import global_util
-import gpcode_manager
-import limit_up_time_manager
-import log
-import tool
+from utils import global_util, tool
+from logs import log
 from l2 import l2_data_manager, l2_data_util, transaction_progress, l2_data_manager_new, code_price_manager
 from l2.cancel_buy_strategy import HourCancelBigNumComputer
 import l2.l2_data_manager_new
-from third_data import kpl_data_manager, kpl_util, kpl_api, block_info
-from third_data.code_plate_key_manager import RealTimeKplMarketData
-from third_data.kpl_data_manager import KPLLimitUpDataRecordManager, KPLDataManager
+from third_data import kpl_data_manager, kpl_api
+from third_data.kpl_data_manager import KPLLimitUpDataRecordManager
 from trade import first_code_score_manager, l2_trade_factor, trade_manager, l2_trade_util
 from trade.l2_trade_factor import L2TradeFactorUtil
 import trade.deal_big_money_manager
 from jinja2 import Environment, FileSystemLoader
 
 base_output_content = {}
+kpl_block_info_dict = {}
 
 __kplDataManager = kpl_data_manager.KPLDataManager()
 
@@ -48,7 +43,7 @@
 
 
 def render(params):
-    env = Environment(loader=FileSystemLoader('D:/workspace/trade/output'))
+    env = Environment(loader=FileSystemLoader('/workspace/trade/output'))
     css = env.get_template('css/index.css')
     params["css"] = css.render()
     template = env.get_template('index.html')
@@ -68,6 +63,8 @@
 
 
 def get_output_params(code, jingxuan_cache_dict, industry_cache_dict):
+    __start_time = time.time()
+
     def format_plate_output(_plat):
         if _plat in jingxuan_cache_dict:
             return _plat, money_desc(jingxuan_cache_dict[_plat][3])
@@ -88,9 +85,9 @@
     if l2_trade_util.WhiteListCodeManager.is_in(code):
         code_extra_infos.append("鐧藉悕鍗�")
     # 鑾峰彇鐧藉悕鍗�,榛戝悕鍗�
-    if trade_manager.gpcode_manager.WantBuyCodesManager.is_in(code):
+    if code_attribute.gpcode_manager.WantBuyCodesManager.is_in(code):
         code_extra_infos.append("鎯充拱鍗�")
-    if trade_manager.gpcode_manager.PauseBuyCodesManager.is_in(code):
+    if code_attribute.gpcode_manager.PauseBuyCodesManager.is_in(code):
         code_extra_infos.append("鏆備笉涔�")
     params["code"] = code
     params["code_name"] = f"{gpcode_manager.get_code_name(code)} {code}  锛坽','.join(code_extra_infos)}锛�"
@@ -179,6 +176,9 @@
 
         params["score_data"]["k_form"] = {"score": k_score, "datas": k_source}
 
+        log.logger_debug.info(f"K绾垮舰鎬佽�楁椂锛歿time.time() - __start_time}")
+        __start_time = time.time()
+
         # 鍘嗗彶鑲℃��
         nature_score = 0
         nature_source = []
@@ -206,6 +206,9 @@
                     code_nature_datas["first_open_limit_up_yijia"] = "鏃犻鏉跨偢鏉�"
 
         params["score_data"]["code_nature"] = code_nature_datas
+
+        log.logger_debug.info(f"鍘嗗彶鑲℃�ц�楁椂锛歿time.time() - __start_time}")
+        __start_time = time.time()
 
         # 鏉垮潡鐑害
         hot_block_score = 0
@@ -247,6 +250,8 @@
 
         # zyltgb, limit_price, bidding, k_form, code_nature, hot_block, volume_rate, limit_up_time,
         # deal_big_money
+        log.logger_debug.info(f"鏉垮潡鐑害鑰楁椂锛歿time.time() - __start_time}")
+        __start_time = time.time()
 
         ###############################涓嬪崟淇℃伅###############################
         params["trade_data"] = {}
@@ -260,11 +265,13 @@
                                                                                     (score, score_list),
                                                                                     score_source_list))
         # 鏄惁鍙互涔板叆鐨勪俊鎭�
-        can_buy_info = l2.l2_data_manager_new.L2TradeDataProcessor.can_buy_first(code, limit_up_price, __L2PlaceOrderParamsManager.score_index,
-                                                          __L2PlaceOrderParamsManager.score,
-                                                          __L2PlaceOrderParamsManager.score_info,
-                                                          (volume_rate,
-                                                           code_volumn_manager.get_volume_rate_index(volume_rate)))
+        can_buy_info = l2.l2_data_manager_new.L2TradeDataProcessor.can_buy_first(code, limit_up_price,
+                                                                                 __L2PlaceOrderParamsManager.score_index,
+                                                                                 __L2PlaceOrderParamsManager.score,
+                                                                                 __L2PlaceOrderParamsManager.score_info,
+                                                                                 (volume_rate,
+                                                                                  code_volumn_manager.get_volume_rate_index(
+                                                                                      volume_rate)))
         params["trade_data"]["can_buy_info"] = can_buy_info
 
         __base_L2PlaceOrderParamsManager = l2_trade_factor.L2PlaceOrderParamsManager(code, False, volume_rate,
@@ -349,6 +356,9 @@
             elif trade_state == trade_manager.TRADE_STATE_BUY_SUCCESS:
                 params["trade_data"]["trade_state"]["desc"] = "宸叉垚浜�"
 
+        log.logger_debug.info(f"涓嬪崟淇℃伅鑰楁椂锛歿time.time() - __start_time}")
+        __start_time = time.time()
+
         # H鎾ょ洃鍚寖鍥�
         if trade_state == trade_manager.TRADE_STATE_BUY_PLACE_ORDER or trade_state == trade_manager.TRADE_STATE_BUY_DELEGATED or trade_state == trade_manager.TRADE_STATE_BUY_SUCCESS:
             hcancel_datas_dict, cancel_indexes_set = HourCancelBigNumComputer.get_watch_index_dict(code)
@@ -368,6 +378,8 @@
                     params["trade_data"]["h_cancel"]["datas"].append(
                         (val["time"], val["num"], money_desc(val["num"] * float(val["price"]) * 100),
                          (1 if canceled else 0)))
+        log.logger_debug.info(f"H鎾ょ洃鍚寖鍥磋�楁椂锛歿time.time() - __start_time}")
+        __start_time = time.time()
 
     ##############################涓诲姩涔帮紝琚姩涔�##################################
     # 杩斿洖涓诲姩涔�,琚姩涔�,涓嶄拱鐨勫垪琛�(浠g爜, 鍚嶇О, 寰楀垎, 鏄惁娑ㄥ仠)
@@ -383,20 +395,33 @@
             {"name": d[1], "code": d[0], "score": d[2], "limit_up": d[3], "open_limit_up": d[4]})
 
     params["passive_buy_codes"] = params["passive_buy_codes"]
+    log.logger_debug.info(f"涓诲姩涔帮紝琚姩涔拌�楁椂锛歿time.time() - __start_time}")
+    __start_time = time.time()
 
     trade_info = __load_trade_record(code, total_datas)
     params["trade_record"] = {"open_limit_up": trade_info[0], "records": trade_info[2]}
+
+    log.logger_debug.info(f"璇诲彇浜ゆ槗璁板綍鑰楁椂锛歿time.time() - __start_time}")
+    __start_time = time.time()
 
     ##############################寮�鐩樺暒鐩稿叧淇℃伅##################################
     industry = global_util.code_industry_map.get(code)
     params["kpl_code_info"] = {
         "industry": format_plate_output(industry)}
     # 鑾峰彇寮�鐩樺暒鏉垮潡
-    plate_info = kpl_api.getStockIDPlate(code)
+    plate_info = None
+    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()
         params["kpl_code_info"]["plate"] = [(k[0], k[1], k[2], format_plate_output(k[1])[1]) for k in plate_info]
+
+    log.logger_debug.info(f"寮�鐩樺暒鏉垮潡鑰楁椂锛歿time.time() - __start_time}")
+    __start_time = time.time()
 
     # 鑾峰彇浠g爜鐨勫巻鍙叉定鍋滄暟鎹�,(娑ㄥ仠鍘熷洜,鏃ユ湡,鏉垮潡)
     code_records = KPLLimitUpDataRecordManager.get_latest_infos(code, 4, False)[:2]
@@ -415,6 +440,8 @@
             params["kpl_code_info"]["today"] = (format_plate_output(d[2]), d[1], plates)
             break
 
+    log.logger_debug.info(f"鑾峰彇浠g爜鐨勫巻鍙叉定鍋滄暟鎹�楁椂锛歿time.time() - __start_time}")
+    __start_time = time.time()
     return params
 
 

--
Gitblit v1.8.0