Administrator
2023-07-13 c94fb34591a84b5e520bc6ba05f3a723b29674e5
trade/huaxin/trade_server.py
@@ -7,11 +7,12 @@
import socketserver
import time
from code_attribute import gpcode_manager
from l2 import l2_data_manager_new, l2_log, code_price_manager
from l2 import l2_data_manager_new, l2_log, code_price_manager, l2_data_util, l2_data_manager
from l2.cancel_buy_strategy import HourCancelBigNumComputer, LCancelBigNumComputer
from log_module.log import hx_logger_l2_upload, hx_logger_contact_debug, hx_logger_trade_callback, \
    hx_logger_l2_orderdetail, hx_logger_l2_transaction, hx_logger_l2_market_data
    hx_logger_l2_orderdetail, hx_logger_l2_transaction, hx_logger_l2_market_data, logger_l2_trade_buy_queue
from trade import deal_big_money_manager
from trade.huaxin import huaxin_trade_api as trade_api, trade_api_server
@@ -156,6 +157,38 @@
                        code = data["code"]
                        datas = data["data"]
                        hx_logger_l2_transaction.info(f"{code}#{datas}")
                        buyno_map = l2_data_util.local_today_buyno_map.get(code)
                        buy_progress_index = None
                        for d in datas:
                            buy_no = d[6]
                            if buy_no in buyno_map:
                                print(f"{code}成交进度:{buyno_map[buy_no]}")
                                buy_progress_index = buyno_map[buy_no]["index"]
                        # 获取执行位时间
                        buy_single_index, buy_exec_index, compute_index, num, count, max_num_set, volume_rate = l2_data_manager.TradePointManager.get_buy_compute_start_data(
                            code)
                        if True:
                            if buy_progress_index is not None:
                                buy_time = l2_data_util.local_today_datas.get(code)[buy_progress_index]["val"]["time"]
                                HourCancelBigNumComputer.set_trade_progress(code, buy_time, buy_exec_index,
                                                                            buy_progress_index,
                                                                            l2_data_util.local_today_datas.get(
                                                                                code),
                                                                            l2_data_util.local_today_num_operate_map.get(
                                                                                code))
                                LCancelBigNumComputer.set_trade_progress(code, buy_progress_index,
                                                                         l2_data_util.local_today_datas.get(
                                                                             code))
                                logger_l2_trade_buy_queue.info("获取成交位置成功: code-{} index-{}", code, buy_progress_index)
                                # 计算大单成交额
                                deal_big_money_manager.set_trade_progress(code, buy_progress_index,
                                                                          l2_data_util.local_today_datas.get(
                                                                              code),
                                                                          l2_data_util.local_today_num_operate_map.get(
                                                                              code))
                        sk.sendall(json.dumps({"code": 0}).encode(encoding='utf-8'))
                    elif data_json["type"] == "l2_market_data":
                        data = data_json["data"]
@@ -173,7 +206,7 @@
                        if limit_up_price is not None:
                            # 处理买1,卖1信息
                            code_price_manager.Buy1PriceManager.process(code, buy_1_price, time_str, limit_up_price,
                                                                        sell_1_price, sell_1_volume//100)
                                                                        sell_1_price, sell_1_volume // 100)
                        hx_logger_l2_market_data.info(f"{code}#{data}")
                        sk.sendall(json.dumps({"code": 0}).encode(encoding='utf-8'))
                else: