| | |
| | | # from huaxin_api import trade_client, l2_client, l1_client |
| | | |
| | | |
| | | def createTradeServer(pipe_server, pipe_trade, pipe_l1): |
| | | def createTradeServer(pipe_server, pipe_trade, pipe_l1, pipe_l2): |
| | | # 初始化参数 |
| | | global_data_loader.init() |
| | | |
| | |
| | | t1.start() |
| | | |
| | | # 交易接口服务 |
| | | t1 = threading.Thread(target=trade_api_server.run, args=(pipe_server,), daemon=True) |
| | | t1 = threading.Thread(target=trade_api_server.run, args=(pipe_server, pipe_l2), daemon=True) |
| | | t1.start() |
| | | |
| | | # redis后台服务 |
| | |
| | | pst_trade, pst_strategy = multiprocessing.Pipe() |
| | | # 交易与l2之间的通信 |
| | | ptl2_trade, ptl2_l2 = multiprocessing.Pipe() |
| | | # l1与trade间的通信 |
| | | pl1t_l1, pl1t_trade = multiprocessing.Pipe() |
| | | # 策略与l2之间的通信 |
| | | psl2_strategy, psl2_l2 = multiprocessing.Pipe() |
| | | |
| | | # l1与策略间的通信 |
| | | pl1t_l1, pl1t_strategy = multiprocessing.Pipe() |
| | | |
| | | serverProcess = multiprocessing.Process(target=createServer, args=(pss_server,)) |
| | | serverProcess.start() |
| | | |
| | | tradeServerProcess = multiprocessing.Process(target=createTradeServer, args=(pss_strategy, pst_strategy, pl1t_trade,)) |
| | | tradeServerProcess = multiprocessing.Process(target=createTradeServer, |
| | | args=(pss_strategy, pst_strategy, pl1t_strategy, psl2_strategy)) |
| | | tradeServerProcess.start() |
| | | |
| | | # 等待服务器启动 |
| | | time.sleep(10) |
| | | |
| | | # 交易进程与L2进程 |
| | | tradeProcess = multiprocessing.Process(target=huaxin_api.trade_client.run, args=(ptl2_trade, pst_trade)) |
| | | l2Process = multiprocessing.Process(target=huaxin_api.l2_client.run, args=(ptl2_l2,)) |
| | | l2Process = multiprocessing.Process(target=huaxin_api.l2_client.run, args=(ptl2_l2, psl2_l2,)) |
| | | tradeProcess.start() |
| | | l2Process.start() |
| | | # L1订阅数据 |