Administrator
2023-07-17 a9681c7b03a6fde559bf77ef65917d6d4db5d84c
trade/huaxin/trade_server.py
@@ -5,17 +5,18 @@
import random
import socket
import socketserver
import threading
import time
from code_attribute import gpcode_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 l2.cancel_buy_strategy import HourCancelBigNumComputer, LCancelBigNumComputer, DCancelBigNumComputer
from l2.huaxin import huaxin_target_codes_manager
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, 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
from trade.huaxin import huaxin_trade_api as trade_api, trade_api_server, huaxin_trade_api
trade_data_request_queue = queue.Queue()
@@ -173,8 +174,10 @@
                                code)
                            if True:
                                if buy_progress_index is not None:
                                    logger_l2_trade_buy_queue.info("获取成交位置成功: code-{} index-{}", code, buy_progress_index)
                                    buy_time = l2_data_util.local_today_datas.get(code)[buy_progress_index]["val"]["time"]
                                    logger_l2_trade_buy_queue.info("获取成交位置成功: code-{} index-{}", code,
                                                                   buy_progress_index)
                                    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(
@@ -185,13 +188,18 @@
                                                                             l2_data_util.local_today_datas.get(
                                                                                 code))
                                    # 计算大单成交额
                                    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))
                                    DCancelBigNumComputer.set_trade_progress(code, buy_progress_index, buy_exec_index,
                                                                             l2_data_util.local_today_datas.get(
                                                                                 code),
                                                                             l2_data_util.local_today_num_operate_map.get(
                                                                                 code), 1000 * 10000,
                                                                             gpcode_manager.get_limit_up_price(code))
                        except Exception as e:
                            hx_logger_l2_transaction.exception(e)
@@ -232,8 +240,21 @@
        super().finish()
def clear_invalid_client():
    while True:
        try:
            huaxin_trade_api.ClientSocketManager.del_invalid_clients()
        except:
            pass
        finally:
            time.sleep(2)
def run():
    print("create TradeServer")
    t1 = threading.Thread(target=lambda: clear_invalid_client(), daemon=True)
    t1.start()
    laddr = "0.0.0.0", 10008
    tcpserver = MyThreadingTCPServer(laddr, MyBaseRequestHandle)  # 注意:参数是MyBaseRequestHandle
    tcpserver.serve_forever()