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());
        }
Example #2
0
        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;
            }
        }