private void StartConnection() { try { if (SOCMain != null && SOCMain.Connected) { SOCMain.Shutdown(SocketShutdown.Both); Thread.Sleep(100); SOCMain.Close(); } IPAddress[] AIPAdresses = Dns.GetHostEntry(HOST).AddressList; var ADRESS = AIPAdresses[0]; SOCMain = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); IPEndPoint IPEPMain = new IPEndPoint(ADRESS, PORT); SOCMain.Blocking = false; AsyncCallback ACallbackConnected = new AsyncCallback(OcConnect); //Thread.Sleep(1000); SOCMain.BeginConnect(IPEPMain, ACallbackConnected, SOCMain); var CEDAA_CreditalsWithBrandCode = CEDA_Authentification.AuthenticateCredentialsWithBrandCode(USERID, PASSWORD, BRANDCODE); //var CEDAA_Creditals = CEDA_Authentification.AuthenticateCredentials(USERID, PASSWORD); //LOGIN FOR TOKEN TOKEN = CEDAA_CreditalsWithBrandCode.token; // TOKEN = CEDAA_Creditals.token; if (ORBlotter != null || PSBlotter != null || ARCHIVE != null || OSBlotter != null) { ODBlotter.Restart(TOKEN); PSBlotter.Restart(TOKEN); ARCHIVE.Restart(TOKEN); OSBlotter.Restart(TOKEN); this.SendString(TOKEN + "\r"); } //this.UpdateDeals(); //this.UpdateAccount(); } catch { try { TsslInfo.Text = "Restart Failed [" + ++iRestartFails + "]x "; } catch { } this.StartConnection(); } }
private void TimrControls_Tick(object sender, EventArgs e) { int InLbxPairs = LbxCCYPairs.Items.Count; int InLbxDeals = LbxDealsOpened.Items.Count; List <Rates> LRATES = ORBlotter.GetData; List <Deals> LDEALS = ODBlotter.GetData; int LRCount = LRATES.Count; if (InLbxPairs < LRCount) { if (InLbxPairs > 0) { LbxCCYPairs.Items.Clear(); } for (int i = 0; i < LRCount; i++) { LbxCCYPairs.Items.Add(LRATES[i].CCY_Pair); } } if (LbxDealsOpened.SelectedIndex >= 0) { Deals DEAL = ODBlotter.Get(LbxDealsOpened.SelectedItem.ToString()); TbxDealPair.Text = DEAL.PRODUCT; if (DEAL.BUY) { TbxDealKind.Text = "BUY "; } else { TbxDealKind.Text = "SELL"; } TbxDealProfitOrLoss.Text = AUTOTREADER.ConvertToUSD(DEAL.PRODUCT, DEAL.BUY, ACCOUNT.CalculateProfitOrLoss(DEAL, ORBlotter.Get(DEAL.PRODUCT))) + ""; ChartPointPredition CPP = AUTOTREADER.TryGet(DEAL.PRODUCT, TimeFrame.ONE_MINUTE); if (CPP == null || CPP.Type == ChartPointPredition.Kind.Uncertain || !CPP.IsActual) { TbxDealPredictionKind.Text = "Uncertain"; TbxDealPredictionPercentage.Text = ""; TbxDealPredictionValue.Text = ""; } else { if (CPP.Type == ChartPointPredition.Kind.Average) { TbxDealPredictionKind.Text = "Average"; } else if (CPP.Type == ChartPointPredition.Kind.Down) { TbxDealPredictionKind.Text = "Down"; } else if (CPP.Type == ChartPointPredition.Kind.Up) { TbxDealPredictionKind.Text = "Up"; } TbxDealPredictionPercentage.Text = Math.Round(CPP.Propability, 2).ToString(); TbxDealPredictionValue.Text = Math.Round(CPP.Change, 5).ToString(); } } if (this.IsConnected()) { this.UpdateMargin(); this.UpdateAction(); } if (!OSBlotter.IsLoaded) { BtnAutoTrader.Enabled = false; BtnBuy.Enabled = false; BtnClose.Enabled = false; BtnSell.Enabled = false; } else { BtnAutoTrader.Enabled = true; BtnBuy.Enabled = true; BtnClose.Enabled = true; BtnSell.Enabled = true; } }