From 994079acd0ac30a32e2b0391881890be16b0afc0 Mon Sep 17 00:00:00 2001
From: Administrator <admin@example.com>
Date: 星期二, 17 六月 2025 11:01:13 +0800
Subject: [PATCH] ‘功能完善

---
 main.py |   41 +++++++++++++++++++++++++++++++++++++----
 1 files changed, 37 insertions(+), 4 deletions(-)

diff --git a/main.py b/main.py
index 2e20643..c9ad640 100644
--- a/main.py
+++ b/main.py
@@ -4,17 +4,19 @@
 import time
 
 import requests
+import schedule
 
 from api import outside_api_callback
 from api.outside_api_command_manager import ApiCommandManager
 from db.redis_manager_delegate import RedisUtils
-from huaxin_client import l2_market_client, trade_client
+from huaxin_client import l2_market_client, trade_client, l1_subscript_codes_manager
 from log_module import async_log_util
 from log_module.log import logger_debug
 from server import data_server
 from strategy import strategy_manager
 from strategy.env_info import RealTimeEnvInfo
 from third_data import hx_qc_value_util
+from third_data.kpl_block_manager import KPLCodeJXBlocksManager
 from trade.huaxin import huaxin_trade_api
 from utils import tool, middle_api_protocol
 
@@ -27,7 +29,7 @@
                 if data.get("type") == 'set_target_codes':
                     # [(浠g爜, 鏃堕棿鎴�, 浠锋牸, 鎬讳氦鏄撻噺, 鎬讳氦鏄撻, 涔�5, 鍗�5)]
                     market_data_list = data["data"]["data"]
-                    if  strategy_manager.low_suction_strtegy:
+                    if strategy_manager.low_suction_strtegy:
                         strategy_manager.low_suction_strtegy.add_ticks(market_data_list)
                     RealTimeEnvInfo().ticks = (tool.get_now_time_str(), len(market_data_list))
             except Exception as e:
@@ -39,6 +41,32 @@
                                               args=(queue_l1_w_strategy_r,))
     l2MarketProcess.start()
     read_results()
+
+
+def __init():
+    """
+    鍒濆鍖�
+    @return:
+    """
+
+    # 瀹氭椂鏇存柊浠g爜绮鹃�夋澘鍧�
+    def run_pending():
+        # 鏇存柊浠婃棩浠g爜绮鹃�夋澘鍧�
+        codes = set()
+        codes_sh, codes_sz = l1_subscript_codes_manager.get_codes()
+        codes |= set([x.decode() for x in codes_sh])
+        codes |= set([x.decode() for x in codes_sz])
+        day = tool.get_now_date_str()
+        schedule.every().day.at("11:05:00").do(lambda: KPLCodeJXBlocksManager(day, codes).start_download_blocks())
+        while True:
+            try:
+                schedule.run_pending()
+            except:
+                pass
+            finally:
+                time.sleep(1)
+
+    threading.Thread(target=run_pending, daemon=True).start()
 
 
 def test():
@@ -66,9 +94,9 @@
     threading.Thread(target=lambda: RedisUtils.run_loop(), daemon=True).start()
 
     # --------鍚姩鏈湴API鎺ュ彛----------
-    manager = ApiCommandManager(middle_api_protocol.SERVER_HOST, middle_api_protocol.SERVER_PORT, outside_api_callback.MyAPICallback())
+    manager = ApiCommandManager(middle_api_protocol.SERVER_HOST, middle_api_protocol.SERVER_PORT,
+                                outside_api_callback.MyAPICallback())
     manager.run(blocking=False)
-
 
     # --------鍚姩浜ゆ槗----------
     huaxin_trade_api.run()
@@ -76,9 +104,14 @@
     threading.Thread(target=test, daemon=True).start()
     # test()
 
+    # ----鍒濆鍖�------------
+    __init()
+
     # 鍒濆鍖栨暟鎹�
     strategy_manager.low_suction_strtegy = strategy_manager.LowSuctionStrategy(tool.get_now_date_str())
 
+
+
     # -------鍚姩L2 market璁㈤槄------
     __run_l2_market_subscript()
     print("鍚姩瀹屾垚")

--
Gitblit v1.8.0