public void AddTradingPair(string pair, TimeInterval interval, DateTime?endTime) { //var endTime = GetEndDate(DateTime.Now.Date, interval, NumberOfCandleSticks); var candleSticks = _binanceClient.GetCandleSticks(pair, interval, null, endTime, _numberOfCandleSticks).Result; Pairs.Add(pair, new TradingPairInfo(pair, interval, candleSticks)); _algorthm = new Algorthm(_request, candleSticks.ToList()); }
private void optimizeToolStripMenuItem_Click(object sender, EventArgs e) { string[] function_strings = tb_Critetions.Lines; string[] bounders = tb_Bounders.Lines; //размерность int N = 0; //пока не проверим все ограничения, не знаем скольки размерная задача //количество блоков разбиения int blockCount = Int32.Parse(tb_num_of_blocks.Text); //создаem сетку var limitations = new List <AxisRange>(); string[] temp; foreach (string str in bounders) { if (str == "") { continue; // если есть пустые строки ограничений, не берем их в расчёт } temp = str.Split(' '); limitations.Add(new AxisRange(double.Parse(temp.First()), double.Parse(temp.Last()))); ++N; } List <IFunction> functions = new List <IFunction>(); foreach (string str in function_strings) { functions.Add(new Function(str, N)); } var grid = new Grid(limitations, blockCount); Algorthm Alg = new Algorthm(functions, grid.GetPoints()); var points = Alg.Run(); resultsTextBox.Clear(); foreach (IPoint point in points) { resultsTextBox.Text += "Point: ("; for (int i = 0; i < N; i++) { resultsTextBox.Text += point.GetPointOnAxis(i); if (i + 1 < N) { resultsTextBox.Text += ";"; } } resultsTextBox.Text += ")" + Environment.NewLine; } }