static void GenerateAccountStats()
{
accountStatsParam = new string[26]
{
Language.T("Intrabar scanning"),
Language.T("Interpolation method"),
Language.T("Ambiguous bars"),
Language.T("Profit per day"),
Language.T("Tested bars"),
Language.T("Account balance"),
Language.T("Minimum account"),
Language.T("Maximum account"),
Language.T("Maximum drawdown"),
Language.T("Max equity drawdown"),
Language.T("Max equity drawdown"),
Language.T("Gross profit"),
Language.T("Gross loss"),
Language.T("Sent orders"),
Language.T("Executed orders"),
Language.T("Traded lots"),
Language.T("Winning trades"),
Language.T("Losing trades"),
Language.T("Win/loss ratio"),
Language.T("Time in position"),
Language.T("Charged spread"),
Language.T("Charged rollover"),
Language.T("Charged commission"),
Language.T("Charged slippage"),
Language.T("Total charges"),
Language.T("Balance without charges")
};
string unit = " " + Language.T("pips");
accountStatsValue = new string[26];
accountStatsValue[0] = isScanned ? Language.T("Accomplished") : Language.T("Not accomplished");
accountStatsValue[1] = InterpolationMethodShortToString();
accountStatsValue[2] = ambiguousBars.ToString();
accountStatsValue[3] = ProfitPerDay.ToString() + unit;
accountStatsValue[4] = (Bars - FirstBar).ToString();
accountStatsValue[5] = NetBalance.ToString() + unit;
accountStatsValue[6] = MinBalance.ToString() + unit;
accountStatsValue[7] = MaxBalance.ToString() + unit;
accountStatsValue[8] = MaxDrawdown.ToString() + unit;
accountStatsValue[9] = MaxEquityDrawdown.ToString() + unit;
accountStatsValue[10] = EquityPercentDrawdown.ToString("F2") + " %";
accountStatsValue[11] = GrossProfit.ToString() + unit;
accountStatsValue[12] = GrossLoss.ToString() + unit;
accountStatsValue[13] = SentOrders.ToString();
accountStatsValue[14] = ExecutedOrders.ToString();
accountStatsValue[15] = TradedLots.ToString();
accountStatsValue[16] = winningTrades.ToString();
accountStatsValue[17] = losingTrades.ToString();
accountStatsValue[18] = ((float)winningTrades/(winningTrades + losingTrades)).ToString("F2");
accountStatsValue[19] = TimeInPosition.ToString() + " %";
accountStatsValue[20] = Math.Round(TotalChargedSpread).ToString() + unit;
accountStatsValue[21] = Math.Round(TotalChargedRollOver).ToString() + unit;
accountStatsValue[22] = Math.Round(TotalChargedCommission).ToString() + unit;
accountStatsValue[23] = TotalChargedSlippage.ToString() + unit;
accountStatsValue[24] = Math.Round(TotalChargedSpread + TotalChargedRollOver + TotalChargedSlippage).ToString() + unit;
accountStatsValue[25] = Math.Round(NetBalance + TotalChargedSpread + TotalChargedRollOver + TotalChargedSlippage).ToString() + unit;
accountStatsFlag = new bool[26];
accountStatsFlag[0] = ambiguousBars > 0 && !isScanned;
accountStatsFlag[1] = interpolationMethod != InterpolationMethod.Pessimistic;
accountStatsFlag[2] = ambiguousBars > 0;
accountStatsFlag[5] = NetBalance < 0;
accountStatsFlag[8] = MaxDrawdown > 500;
return;
}