| | |
| | | """ |
| | | import json |
| | | import logging |
| | | import random |
| | | import socket |
| | | import threading |
| | | import time |
| | | |
| | | # 心跳信息 |
| | | import crypt |
| | | from huaxin import socket_util |
| | | from huaxin.client_network import SendResponseSkManager |
| | | |
| | |
| | | # 交易服务 |
| | | from third_data import data_server |
| | | from trade.huaxin import trade_server, trade_api_server |
| | | import huaxin |
| | | from huaxin import trade_client,l2_client,l1_client |
| | | |
| | | |
| | | def createTradeServer(pipe_server, pipe_trade, pipe_l1): |
| | |
| | | serverProcess = multiprocessing.Process(target=createServer, args=(pss_server,)) |
| | | serverProcess.start() |
| | | # 交易进程与L2进程 |
| | | tradeProcess = multiprocessing.Process(target=huaxin.trade_client.run, args=(ptl2_trade, pst_trade)) |
| | | l2Process = multiprocessing.Process(target=huaxin.l2_client.run, args=(ptl2_l2,)) |
| | | tradeProcess = multiprocessing.Process(target=trade_client.run, args=(ptl2_trade, pst_trade)) |
| | | l2Process = multiprocessing.Process(target=l2_client.run, args=(ptl2_l2,)) |
| | | tradeProcess.start() |
| | | l2Process.start() |
| | | # L1订阅数据 |
| | | huaxin.l1_client.run_async(pl1t_l1) |
| | | l1_client.run_async(pl1t_l1) |
| | | # 将tradeServer作为主进程 |
| | | createTradeServer(pss_strategy, pst_strategy, pl1t_trade) |
| | |
| | | client_id = data_json["client_id"] |
| | | hx_logger_trade_callback.info(f"response:request_id-{data_json['request_id']}") |
| | | # 设置响应内容 |
| | | trade_api.set_response(client_id, data_json["request_id"], data_json['data']) |
| | | trade_api.set_response(data_json["request_id"], data_json['data']) |
| | | finally: |
| | | sk.sendall(socket_util.load_header(json.dumps({"code": 0}).encode(encoding='utf-8'))) |
| | | elif data_json["type"] == "trade_callback": |