void SetPanelLimitations()
{
chbAmbiguousBars = new CheckBox();
chbAmbiguousBars.Parent = pnlLimitations;
chbAmbiguousBars.ForeColor = colorText;
chbAmbiguousBars.BackColor = Color.Transparent;
chbAmbiguousBars.Text = Language.T("Maximum number of ambiguous bars");
chbAmbiguousBars.Checked = true;
chbAmbiguousBars.AutoSize = true;
nudAmbiguousBars = new NumericUpDown();
nudAmbiguousBars.Parent = pnlLimitations;
nudAmbiguousBars.TextAlign = HorizontalAlignment.Center;
nudAmbiguousBars.BeginInit();
nudAmbiguousBars.Minimum = 0;
nudAmbiguousBars.Maximum = 100;
nudAmbiguousBars.Increment = 1;
nudAmbiguousBars.Value = 10;
nudAmbiguousBars.EndInit();
chbMaxDrawdown = new CheckBox();
chbMaxDrawdown.Parent = pnlLimitations;
chbMaxDrawdown.ForeColor = colorText;
chbMaxDrawdown.BackColor = Color.Transparent;
chbMaxDrawdown.Text = Language.T("Maximum equity drawdown") + " [" + (Configs.AccountInMoney ? Configs.AccountCurrency + "]" : Language.T("pips") + "]");
chbMaxDrawdown.Checked = false;
chbMaxDrawdown.AutoSize = true;
nudMaxDrawdown = new NumericUpDown();
nudMaxDrawdown.Parent = pnlLimitations;
nudMaxDrawdown.TextAlign = HorizontalAlignment.Center;
nudMaxDrawdown.BeginInit();
nudMaxDrawdown.Minimum = 0;
nudMaxDrawdown.Maximum = Configs.InitialAccount;
nudMaxDrawdown.Increment = 10;
nudMaxDrawdown.Value = Configs.InitialAccount / 4;
nudMaxDrawdown.EndInit();
chbEquityPercent = new CheckBox();
chbEquityPercent.Parent = pnlLimitations;
chbEquityPercent.ForeColor = colorText;
chbEquityPercent.BackColor = Color.Transparent;
chbEquityPercent.Text = Language.T("Maximum equity drawdown") + " [% " + Configs.AccountCurrency + "]";
chbEquityPercent.Checked = true;
chbEquityPercent.AutoSize = true;
nudEquityPercent = new NumericUpDown();
nudEquityPercent.Parent = pnlLimitations;
nudEquityPercent.TextAlign = HorizontalAlignment.Center;
nudEquityPercent.BeginInit();
nudEquityPercent.Minimum = 1;
nudEquityPercent.Maximum = 100;
nudEquityPercent.Increment = 1;
nudEquityPercent.Value = 25;
nudEquityPercent.EndInit();
chbMinTrades = new CheckBox();
chbMinTrades.Parent = pnlLimitations;
chbMinTrades.ForeColor = colorText;
chbMinTrades.BackColor = Color.Transparent;
chbMinTrades.Text = Language.T("Minimum number of trades");
chbMinTrades.Checked = true;
chbMinTrades.AutoSize = true;
nudMinTrades = new NumericUpDown();
nudMinTrades.Parent = pnlLimitations;
nudMinTrades.TextAlign = HorizontalAlignment.Center;
nudMinTrades.BeginInit();
nudMinTrades.Minimum = 10;
nudMinTrades.Maximum = 1000;
nudMinTrades.Increment = 10;
nudMinTrades.Value = 100;
nudMinTrades.EndInit();
chbMaxTrades = new CheckBox();
chbMaxTrades.Parent = pnlLimitations;
chbMaxTrades.ForeColor = colorText;
chbMaxTrades.BackColor = Color.Transparent;
chbMaxTrades.Text = Language.T("Maximum number of trades");
chbMaxTrades.Checked = false;
chbMaxTrades.AutoSize = true;
nudMaxTrades = new NumericUpDown();
nudMaxTrades.Parent = pnlLimitations;
nudMaxTrades.TextAlign = HorizontalAlignment.Center;
nudMaxTrades.BeginInit();
nudMaxTrades.Minimum = 10;
nudMaxTrades.Maximum = 10000;
nudMaxTrades.Increment = 10;
nudMaxTrades.Value = 1000;
nudMaxTrades.EndInit();
chbWinLossRatio = new CheckBox();
chbWinLossRatio.Parent = pnlLimitations;
chbWinLossRatio.ForeColor = colorText;
chbWinLossRatio.BackColor = Color.Transparent;
chbWinLossRatio.Text = Language.T("Minimum win / loss trades ratio");
chbWinLossRatio.Checked = false;
chbWinLossRatio.AutoSize = true;
nudWinLossRatio = new NumericUpDown();
nudWinLossRatio.Parent = pnlLimitations;
nudWinLossRatio.TextAlign = HorizontalAlignment.Center;
nudWinLossRatio.BeginInit();
nudWinLossRatio.Minimum = 0.10M;
nudWinLossRatio.Maximum = 1;
nudWinLossRatio.Increment = 0.01M;
nudWinLossRatio.Value = 0.30M;
nudWinLossRatio.DecimalPlaces = 2;
nudWinLossRatio.EndInit();
chbOOSPatternFilter = new CheckBox();
chbOOSPatternFilter.Parent = pnlLimitations;
chbOOSPatternFilter.ForeColor = colorText;
chbOOSPatternFilter.BackColor = Color.Transparent;
chbOOSPatternFilter.Text = Language.T("Filter bad OOS performance");
chbOOSPatternFilter.Checked = false;
chbOOSPatternFilter.AutoSize = true;
nudOOSPatternPercent = new NumericUpDown();
nudOOSPatternPercent.Parent = pnlLimitations;
nudOOSPatternPercent.TextAlign = HorizontalAlignment.Center;
nudOOSPatternPercent.BeginInit();
nudOOSPatternPercent.Minimum = 1;
nudOOSPatternPercent.Maximum = 50;
nudOOSPatternPercent.Value = 20;
nudOOSPatternPercent.EndInit();
toolTip.SetToolTip(nudOOSPatternPercent, Language.T("Deviation percent."));
chbSmoothBalanceLines = new CheckBox();
chbSmoothBalanceLines.Parent = pnlLimitations;
chbSmoothBalanceLines.ForeColor = colorText;
chbSmoothBalanceLines.BackColor = Color.Transparent;
chbSmoothBalanceLines.Text = Language.T("Filter non-linear balance pattern");
chbSmoothBalanceLines.Checked = false;
chbSmoothBalanceLines.AutoSize = true;
nudSmoothBalancePercent = new NumericUpDown();
nudSmoothBalancePercent.Parent = pnlLimitations;
nudSmoothBalancePercent.TextAlign = HorizontalAlignment.Center;
nudSmoothBalancePercent.BeginInit();
nudSmoothBalancePercent.Minimum = 1;
nudSmoothBalancePercent.Maximum = 50;
nudSmoothBalancePercent.Value = 20;
nudSmoothBalancePercent.EndInit();
toolTip.SetToolTip(nudSmoothBalancePercent, Language.T("Deviation percent."));
nudSmoothBalanceCheckPoints = new NumericUpDown();
nudSmoothBalanceCheckPoints.Parent = pnlLimitations;
nudSmoothBalanceCheckPoints.TextAlign = HorizontalAlignment.Center;
nudSmoothBalanceCheckPoints.BeginInit();
nudSmoothBalanceCheckPoints.Minimum = 1;
nudSmoothBalanceCheckPoints.Maximum = 50;
nudSmoothBalanceCheckPoints.Value = 1;
nudSmoothBalanceCheckPoints.EndInit();
toolTip.SetToolTip(nudSmoothBalanceCheckPoints, Language.T("Check points count."));
return;
}