//When we try to connect to the websocket the objects are instantiated private void btnConnect_Click(object sender, EventArgs e) { try { if (btnConnect.Text == "Connect") { if (cboWebsocketURL.SelectedIndex != 1 && cboWebsocketURL.SelectedIndex != 0) { return; } string apiKey = ""; string apiSecret = ""; if (websocketClient == null || !websocketClient.GetIsConnected()) { if (chkAuthenticate.Checked) { apiKey = txtAPIKey.Text; apiSecret = txtAPISecret.Text; } websocketClient = new BitMexWebsocketClient(new Uri(cboWebsocketURL.Text), apiKey, apiSecret); websocketInterpreter = new BitMexWebsocketInterpreter(); trades = new List <BitMexWebsocketTrade>(); DelegateManagement(); } websocketClient.Connect(); } if (btnConnect.Text == "Disconnect") { websocketClient.Disconnect(); websocketClient = null; } } catch (Exception ex) { ActivityLog.Error("FORM", ex.Message); } }