From 0516355520573c81518a20fd4421b8c105d67bae Mon Sep 17 00:00:00 2001
From: Administrator <admin@example.com>
Date: 星期日, 15 十二月 2024 23:27:49 +0800
Subject: [PATCH] 成交代码可订阅/修改订阅代码输出接口

---
 servers/data_server.py |   39 ++++++++++++++++++---------------------
 1 files changed, 18 insertions(+), 21 deletions(-)

diff --git a/servers/data_server.py b/servers/data_server.py
index 2e9e9c3..183c050 100644
--- a/servers/data_server.py
+++ b/servers/data_server.py
@@ -9,6 +9,7 @@
 import requests
 
 from code_attribute.gpcode_manager import BlackListCodeManager
+from l2.huaxin import huaxin_target_codes_manager
 from l2.l2_transaction_data_manager import HuaXinBuyOrderManager
 from log_module.log import logger_system, logger_debug, logger_kpl_limit_up, logger_request_api
 from third_data.custom_block_in_money_manager import CodeInMoneyManager
@@ -16,9 +17,10 @@
     ContainsLimitupCodesBlocksManager
 from third_data.kpl_limit_up_data_manager import LatestLimitUpBlockManager, CodeLimitUpSequenceManager
 from third_data.third_blocks_manager import BlockMapManager
+from trade.buy_radical import radical_buy_data_manager
 from trade.buy_radical.block_special_codes_manager import BlockSpecialCodesManager
 from trade.buy_strategy import OpenLimitUpGoodBlocksBuyStrategy
-from trade.buy_radical.radical_buy_data_manager import RadicalBuyBlockManager
+from trade.buy_radical.radical_buy_data_manager import RadicalBuyBlockManager, BeforeSubDealBigOrderManager
 from utils import global_util, tool, data_export_util
 from code_attribute import gpcode_manager
 from log_module import log_analyse, log_export, async_log_util
@@ -890,28 +892,24 @@
 
         elif url.path == "/get_l2_subscript_codes":
             # 鑾峰彇L2璁㈤槄鐨勪唬鐮�
-            ps_dict = dict([(k, v[0]) for k, v in parse_qs(url.query).items()])
+            codes = huaxin_target_codes_manager.HuaXinL2SubscriptCodesManager.get_subscript_codes()
+            fresults = []
             try:
-                records = LimitUpDataConstant.history_limit_up_datas
-                # 鑾峰彇鍘嗗彶娑ㄥ仠
-                if not records:
-                    KPLLimitUpDataRecordManager.load_total_datas()
-                    records = KPLLimitUpDataRecordManager.total_datas
-                if not records:
-                    records = []
-                codes = set([x[3] for x in records])
-                fdatas = []
                 if codes:
-                    block_top_in_list = RealTimeKplMarketData.top_in_list_cache
-                    in_blocks = [x[1] for x in block_top_in_list]
-                    yesterday_codes = kpl_data_manager.get_yesterday_limit_up_codes()
-                    if yesterday_codes is None:
-                        yesterday_codes = set()
                     for code in codes:
-                        index = current_price_process_manager.compute_code_order(code, in_blocks[:30], yesterday_codes)
-                        if 0 <= index <= 1000:
-                            fdatas.append((code, gpcode_manager.get_code_name(code)))
-                response_data = json.dumps({"code": 0, "data": fdatas})
+                        try:
+                            # 鑾峰彇鎴愪氦澶у崟锛�(鍙傝�冨ぇ鍗曢噾棰�,宸叉垚浜ゅぇ鍗曢噾棰�,澶у崟瑕佹眰閲戦)
+                            th = BeforeSubDealBigOrderManager().get_big_order_threshold(code)
+                            deal_big_money_info = radical_buy_data_manager.get_total_deal_big_order_info(
+                                code, gpcode_manager.get_limit_up_price_as_num(code))
+                            deal_big_order_info = (
+                                output_util.money_desc(th), output_util.money_desc(deal_big_money_info[1]),
+                                output_util.money_desc(deal_big_money_info[2]))
+                        except:
+                            deal_big_order_info = None
+                        code_name = gpcode_manager.get_code_name(code)
+                        fresults.append((code, code_name, deal_big_order_info))
+                response_data = json.dumps({"code": 0, "data": fresults})
             except  Exception as e:
                 response_data = json.dumps({"code": 1, "data": str(1)})
 
@@ -1100,7 +1098,6 @@
             # 淇濆瓨甯傚満鐑害
             if strong is not None:
                 RealTimeKplMarketData.set_market_strong(strong)
-
 
         return json.dumps({"code": 0})
 

--
Gitblit v1.8.0