public Client(string compId, string subId, string locationId, string targetCompanyId, string targetTraderId, string targetLocationId, string account) { client = new FixTcpClient(compId, subId, locationId, targetCompanyId, targetTraderId, targetLocationId); client.LogonReceived += HandleLogon; client.NewOrderReceived += NewOrderReceived; client.CancelReplaceRequestReceived += CancelReplaceRequestReceived; client.CancelRequestReceived += CancelRequestReceived; client.CancelRejectReceived += CancelRejectReceived; client.NewOrderAckReceived += HandleNewOrderAck; client.NewOrderAckReceived += NewOrderAckReceived; client.CancelReplaceAckReceived += CancelReplaceAckReceived; client.CancelAckReceived += CancelAckReceived; client.RejectReceived += RejectReceived; client.FillReceived += FillReceived; Account = account; }
public async void Start(IPAddress address, int port) { tcpListener = new TcpListener(address, port); tcpListener.Start(); Console.WriteLine($"globex server listening at {tcpListener.LocalEndpoint}"); snapshotTimer = new Timer(HandleSnapshotTimerInterval, null, 0, snapshotUpdateInterval); while (true) { TcpClient tcpClient = await tcpListener.AcceptTcpClientAsync(); FixTcpClient client = new FixTcpClient(senderCompId, senderTraderId, null, tcpClient); client.LogonReceived += HandleLogon; client.LogoutReceived += HandleLogout; client.NewOrderReceived += HandleCreateRequest; client.CancelReplaceRequestReceived += HandleUpdateRequest; client.CancelRequestReceived += HandleDeleteRequest; Console.WriteLine("client connected"); client.Listen(); } }