From c48eecb7dd2ba02cb79f3142d67ed3d4a26f57a5 Mon Sep 17 00:00:00 2001 From: Administrator <admin@example.com> Date: 星期一, 27 十一月 2023 10:27:21 +0800 Subject: [PATCH] bug修复 --- third_data/kpl_api.py | 5 +++-- trade/huaxin/huaxin_trade_server.py | 2 +- trade/trade_manager.py | 5 +++++ trade/huaxin/huaxin_trade_api.py | 3 +++ trade/huaxin/huaxin_trade_data_update.py | 6 ++++-- 5 files changed, 16 insertions(+), 5 deletions(-) diff --git a/third_data/kpl_api.py b/third_data/kpl_api.py index c8a20a8..c82f5e0 100644 --- a/third_data/kpl_api.py +++ b/third_data/kpl_api.py @@ -135,5 +135,6 @@ if __name__ == "__main__": - start = time.time() - print(getZYLTAmount("000333"), time.time() - start) + limit_up_infos = getLimitUpInfo() + limit_up_infos = json.loads(limit_up_infos) + print(limit_up_infos) diff --git a/trade/huaxin/huaxin_trade_api.py b/trade/huaxin/huaxin_trade_api.py index 97d5baf..9bc7249 100644 --- a/trade/huaxin/huaxin_trade_api.py +++ b/trade/huaxin/huaxin_trade_api.py @@ -95,6 +95,9 @@ insertDate=insertDate, direction=direction, is_shadow_order=is_shadow_order) try: + if order.direction == str(huaxin_util.TORA_TSTP_D_Sell): + # 鍒锋柊鎸佷粨鍒楄〃 + huaxin_trade_data_update.add_position_list() TradeResultProcessor.process_buy_order(order) TradeResultProcessor.process_sell_order(order) finally: diff --git a/trade/huaxin/huaxin_trade_data_update.py b/trade/huaxin/huaxin_trade_data_update.py index c511bf3..6ba7a27 100644 --- a/trade/huaxin/huaxin_trade_data_update.py +++ b/trade/huaxin/huaxin_trade_data_update.py @@ -13,7 +13,7 @@ from trade import trade_manager from trade.huaxin import huaxin_trade_api, huaxin_trade_record_manager from trade.huaxin.huaxin_trade_order_processor import HuaxinOrderEntity, TradeResultProcessor -from utils import huaxin_util, tool +from utils import huaxin_util, tool, init_data_util import concurrent.futures trade_data_request_queue = queue.Queue() @@ -109,7 +109,9 @@ # 鑾峰彇鎸佷粨鑲$殑娑ㄥ仠浠� position_codes = set() for d in datas: - gpcode_manager.get_limit_up_price(d["securityID"]) + limit_up_price = gpcode_manager.get_limit_up_price(d["securityID"]) + if not limit_up_price: + init_data_util.re_set_price_pre(d["securityID"]) if d["prePosition"] > 0: position_codes.add(d["securityID"]) queue_l1_r_strategy_w.put_nowait( diff --git a/trade/huaxin/huaxin_trade_server.py b/trade/huaxin/huaxin_trade_server.py index 5ab900a..5d30195 100644 --- a/trade/huaxin/huaxin_trade_server.py +++ b/trade/huaxin/huaxin_trade_server.py @@ -1058,7 +1058,7 @@ manager = outside_api_command_manager.ApiCommandManager() manager.init(middle_api_protocol.SERVER_HOST, middle_api_protocol.SERVER_PORT, - OutsideApiCommandCallback()) + OutsideApiCommandCallback(),trade_client_count=30) manager.run(blocking=False) # 鐩戝惉L2鏁版嵁 diff --git a/trade/trade_manager.py b/trade/trade_manager.py index 6d5260f..a13109c 100644 --- a/trade/trade_manager.py +++ b/trade/trade_manager.py @@ -3,6 +3,7 @@ 瀵逛竴绯诲垪鐨勪唬鐮佷氦鏄撳彉閲忥紝涓嬪崟锛屾挙鍗曡繘琛岀鐞� """ # 浜ゆ槗绠$悊鍣� +import copy import datetime import json import threading @@ -184,6 +185,7 @@ __redis_manager = redis_manager.RedisManager(2) __instance = None + def __new__(cls, *args, **kwargs): if not cls.__instance: cls.__instance = super(CodesTradeStateManager, cls).__new__(cls, *args, **kwargs) @@ -221,6 +223,9 @@ return cache_result[1] return TRADE_STATE_NOT_TRADE + def get_trade_state_dict(self): + return copy.deepcopy(self.__trade_state_cache) + # 璁剧疆浜ゆ槗鐘舵�� def set_trade_state(self, code, state): async_log_util.info(logger_trade, "set_trade_state {}-{}".format(code, state)) -- Gitblit v1.8.0