private void uiDataSet_SelectedIndexChanged(object sender, EventArgs e)
        {
            uiStrategy_panelExBlackScholesPanel.Enabled = true;

            uiStrategy_buttonXStart.Enabled = true;
            uiStrategy_buttonXStop.Enabled = true;
            uiStrategy_WorkingButtonsPanel.Enabled = true;

            uiBlackSPriceStrike.Text = @"1875.00";
            uiBlackSInterestRate.Text = @"5";
            uiBlackSUnderlyingPrice.Text = @"1870.00";
            uiBlackSVolality.Text = @"19";
            uiBlackSValueDate.Value = DateTime.Today;
            uiBlackSExpiryDate.Value = DateTime.Today.AddDays(30);

            if (uiStrategy_radioButtonDataFromFile.Checked)
            {
                if (uiStrategy_comboBoxExDataSet.Text != @"Default DataSet for file")
                {
                    _parametersDataSet = new ParametersDataSet(DataManager.GetDatasetData(_dataSets.First(a => a.DataSetName == uiStrategy_comboBoxExDataSet.Text).Id));
                    DisplayDatasetParams(_parametersDataSet);
                    UpdateOptParamsInstance(_parametersDataSet.Zim, _parametersDataSet.PointValue, _parametersDataSet.TickSize);
                    _addingNewDataSet = false;
                }
                uiStrategy.SelectedIndex = 0;
            }

            if (uiStrategy_radioButtonDataFromDB.Checked)
            {
                _parametersDataSet = new ParametersDataSet(DataManager.GetDatasetData(_dataSets.First(a => a.DataSetName == uiStrategy_comboBoxExDataSet.Text).Id));
                DisplayDatasetParams(_parametersDataSet);
                UpdateOptParamsInstance(_parametersDataSet.Zim, _parametersDataSet.PointValue, _parametersDataSet.TickSize);
                if (_data != null)
                {
                    uiStrategy.SelectedIndex = 0;
                }
                else
                {
                    uiStrategy_panelExBlackScholesPanel.Enabled = false;

                    uiStrategy_buttonXStart.Enabled = false;
                    uiStrategy_buttonXStop.Enabled = false;
                    uiStrategy_WorkingButtonsPanel.Enabled = false;
                }
                _addingNewDataSet = false;
            }

            if (uiStrategy_comboBoxExDataSet.Text == @"Default DataSet for file")
            {
                var tempDataset = new TemporaryDatasets();

                uiStrategy_dataGridViewNoOptomizationParameters.DataSource = tempDataset.AliDataSet151519;
                uiStrategy_dataGridViewOptomizationParameters.DataSource = tempDataset.OptimParams;
                UpdateOptParamsInstance(tempDataset.AliZim, tempDataset.AliPv, tempDataset.AliTickSize);
                uiStrategy.SelectedIndex = 0;
            }
        }
        private void DisplayDatasetParams(ParametersDataSet dataSet)
        {
            var parameterProvider = new DataTable();
            var optimalizableparamsProvider = new DataTable();
            var column = new DataColumn("Variables");
            var column2 = new DataColumn("Default Value");

            parameterProvider.Columns.Add(column);
            parameterProvider.Columns.Add(column2);

            column = new DataColumn("Triggers");
            optimalizableparamsProvider.Columns.Add(column);
            column = new DataColumn("Default Value");
            optimalizableparamsProvider.Columns.Add(column);
            column = new DataColumn("MinValue");
            optimalizableparamsProvider.Columns.Add(column);
            column = new DataColumn("MaxValue");
            optimalizableparamsProvider.Columns.Add(column);
            column = new DataColumn("Step");
            optimalizableparamsProvider.Columns.Add(column);

            DataRow row = parameterProvider.NewRow();
            row[0] = "DataSet Name";
            row[1] = dataSet.DataSetName;
            parameterProvider.Rows.Add(row);

            row = parameterProvider.NewRow();
            row[0] = "Time Value";
            row[1] = dataSet.TimeValue;
            parameterProvider.Rows.Add(row);

            row = parameterProvider.NewRow();
            row[0] = "Commission";
            row[1] = dataSet.Commission;
            parameterProvider.Rows.Add(row);

            row = parameterProvider.NewRow();
            row[0] = "Multiplier";
            row[1] = dataSet.Multiplier;
            parameterProvider.Rows.Add(row);

            row = parameterProvider.NewRow();
            row[0] = "Contract Size";
            row[1] = dataSet.ContractSize;
            parameterProvider.Rows.Add(row);

            row = parameterProvider.NewRow();
            row[0] = "Point Value";
            row[1] = dataSet.PointValue;
            parameterProvider.Rows.Add(row);

            row = parameterProvider.NewRow();
            row[0] = "ZIM";
            row[1] = dataSet.Zim;
            parameterProvider.Rows.Add(row);

            row = parameterProvider.NewRow();
            row[0] = "Tick Size";
            row[1] = dataSet.TickSize;
            _tickSize = dataSet.TickSize;
            parameterProvider.Rows.Add(row);

            row = optimalizableparamsProvider.NewRow();
            row[0] = "Stop Level";
            row[1] = dataSet.StopLevel;
            row[2] = dataSet.MinValue;
            row[3] = dataSet.MaxValue;
            row[4] = dataSet.Step;
            optimalizableparamsProvider.Rows.Add(row);

            row = optimalizableparamsProvider.NewRow();
            row[0] = "Reversal Level";
            row[1] = dataSet.ReversalLevel;
            row[2] = dataSet.MinValue;
            row[3] = dataSet.MaxValue;
            row[4] = dataSet.Step;
            optimalizableparamsProvider.Rows.Add(row);

            parameterProvider.Columns["Variables"].ReadOnly = true;
            optimalizableparamsProvider.Columns["Triggers"].ReadOnly = true;
            uiStrategy_dataGridViewOptomizationParameters.DataSource = optimalizableparamsProvider;
            uiStrategy_dataGridViewNoOptomizationParameters.DataSource = parameterProvider;

            uiStrategy_buttonXStart.Enabled = true;
            uiStrategy_buttonXStop.Enabled = false;
        }
        private void uiCancelDataSetButton_Click(object sender, EventArgs e)
        {
            if (_addingNewDataSet == false)
            {
                _parametersDataSet = new ParametersDataSet(DataManager.GetDatasetData(_dataSets.First(a => a.DataSetName == uiStrategy_comboBoxExDataSet.Text).Id));
                DisplayDatasetParams(_parametersDataSet);
                UpdateOptParamsInstance(_parametersDataSet.Zim, _parametersDataSet.PointValue, _parametersDataSet.TickSize);
                if (_data != null)
                {
                    uiStrategy.SelectedIndex = 0;
                }

                uiAddDatasetButton.Enabled = true;
                uiDeleteDatasetButton.Enabled = true;
                uiStrategy_buttonXSaveDataset.Enabled = true;
                uiStrategy_buttonXCancelDataSetButton.Enabled = true;
            }
            else if (_addingNewDataSet)
            {
                var provider = uiStrategy_dataGridViewNoOptomizationParameters.DataSource as DataTable;
                if (provider != null)
                {
                    foreach (DataRow row in provider.Rows)
                    {
                        row["Default Value"] = "";
                    }
                }
            }
        }