void ShowIndicators(string input)
{
string pattern = @"^ind (?<numb>\d+)$";
Regex expression = new Regex(pattern, RegexOptions.Compiled);
Match match = expression.Match(input);
if (match.Success)
{
int bar = int.Parse(match.Groups["numb"].Value);
if (bar < 1 || bar > Data.Bars)
return;
bar--;
System.Text.StringBuilder sb = new System.Text.StringBuilder();
for (int iSlot = 0; iSlot < Data.Strategy.Slots; iSlot++)
{
Indicator indicator = Indicator_Store.ConstructIndicator(Data.Strategy.Slot[iSlot].IndicatorName, Data.Strategy.Slot[iSlot].SlotType);
sb.Append(Environment.NewLine + indicator.ToString() + Environment.NewLine + "Logic: " +
indicator.IndParam.ListParam[0].Text + Environment.NewLine + "-----------------" + Environment.NewLine);
foreach (IndicatorComp indComp in Data.Strategy.Slot[iSlot].Component)
{
sb.Append(indComp.CompName + " ");
sb.Append(indComp.Value[bar].ToString() + Environment.NewLine);
}
}
tbxOutput.Text += Environment.NewLine + "Indicators for bar " + (bar + 1).ToString() + Environment.NewLine +
"-----------------" + Environment.NewLine + sb.ToString();
}
}