From 8d151575d6fa5696545eba6555badbdc6a544dc4 Mon Sep 17 00:00:00 2001
From: admin <admin@example.com>
Date: 星期四, 27 二月 2025 18:15:35 +0800
Subject: [PATCH] 指数日志记录

---
 utils/hx_qc_value_util.py |   40 ++++++++++++++++++++++++++++++++++++++--
 1 files changed, 38 insertions(+), 2 deletions(-)

diff --git a/utils/hx_qc_value_util.py b/utils/hx_qc_value_util.py
index ec99f31..0b8c90a 100644
--- a/utils/hx_qc_value_util.py
+++ b/utils/hx_qc_value_util.py
@@ -8,6 +8,7 @@
 
 from huaxin_client import l1_api_client
 from log_module.log import logger_debug
+from strategy import data_cache
 from utils import tool
 
 __response_data = {}
@@ -144,12 +145,47 @@
     return None
 
 
+def __read_callback_data(data_callback_queue: multiprocessing.Queue):
+    """
+    璇诲彇鏁版嵁鍥炶皟
+    :param data_callback_queue:
+    :return:
+    """
+    while True:
+        try:
+            data = data_callback_queue.get()
+            type_ = data[0]
+            data = data[1]
+            if type_ == "stock_index_datas":
+                for k in data:
+                    """
+                   鍊肩殑鏍煎紡涓猴細
+                    {
+                       "LastPrice": pStockIndexData.LastPrice,
+                       "SecurityID": pStockIndexData.SecurityID,
+                       "UpdateTime": pStockIndexData.UpdateTime,
+                       "Volume": pStockIndexData.Volume,
+                       "Turnover": pStockIndexData.Turnover,
+                       "LXLastPrice": pStockIndexData.LXLastPrice,
+                   }
+                   """
+                    d = data[k]
+                    data_cache.stock_index_dict[k] = (round(d["LastPrice"], 2), d["Volume"], d["Turnover"])
+        except:
+            pass
+
+
 def run():
     global request_queue
-    request_queue, response_queue = multiprocessing.Queue(), multiprocessing.Queue()
+    request_queue, response_queue, data_callback_queue = multiprocessing.Queue(), multiprocessing.Queue(), multiprocessing.Queue()
     # 鍚姩澧炲�兼湇鍔¤繘绋�
-    process = multiprocessing.Process(target=l1_api_client.run, args=(request_queue, response_queue,), daemon=True)
+    process = multiprocessing.Process(target=l1_api_client.run,
+                                      args=(request_queue, response_queue, data_callback_queue,), daemon=True)
     process.start()
+
+    # 璇诲彇鏁版嵁鍥炶皟
+    threading.Thread(target=__read_callback_data, args=(data_callback_queue,), daemon=True).start()
+
     __set_response(response_queue)
 
 

--
Gitblit v1.8.0