public void ExportPositionsInMoney()
{
string stage = String.Empty;
if (Data.IsProgramBeta)
stage = " " + Language.T("Beta");
else if (Data.IsProgramRC)
stage = " " + "RC";
sb.Append("Forex Strategy Builder v" + Data.ProgramVersion + stage + Environment.NewLine);
sb.Append("Strategy name: " + Data.Strategy.StrategyName + Environment.NewLine);
sb.Append("Exported on " + DateTime.Now.ToString() + Environment.NewLine);
sb.Append(Data.Symbol + " " + Data.PeriodString + "; Values in " + Configs.AccountCurrency + Environment.NewLine);
sb.Append("Pos Numb\t");
sb.Append("Bar Numb\t");
sb.Append("Bar Opening Time\t");
sb.Append("Direction\t");
sb.Append("Amount\t");
sb.Append("Transaction\t");
sb.Append("Order Price\t");
sb.Append("Price\t");
sb.Append("Profit Loss\t");
sb.Append("Floating P/L\t");
sb.Append("Balance\t");
sb.Append("Equity\t");
sb.Append(Environment.NewLine);
for (int iPos = 0; iPos < Backtester.PositionsTotal; iPos++)
{
Position position = Backtester.PosFromNumb(iPos);
int bar = Backtester.PosCoordinates[iPos].Bar;
sb.Append((position.PosNumb + 1).ToString() + "\t");
sb.Append((bar + 1).ToString() + "\t");
sb.Append((Data.Time[bar]).ToString() + "\t");
sb.Append((position.PosDir).ToString() + "\t");
sb.Append((position.PosDir == PosDirection.Long ? "" : "-") +
(position.PosLots * Data.InstrProperties.LotSize).ToString() + "\t");
sb.Append((position.Transaction ).ToString() + "\t");
sb.Append((position.FormOrdPrice ).ToString(FF) + "\t");
sb.Append((position.PosPrice ).ToString(FF) + "\t");
sb.Append((position.MoneyProfitLoss).ToString("F2") + "\t");
sb.Append((position.MoneyFloatingPL).ToString("F2") + "\t");
sb.Append((position.MoneyBalance ).ToString("F2") + "\t");
sb.Append((position.MoneyEquity ).ToString("F2") + "\t");
sb.Append(Environment.NewLine);
}
string fileName = Data.Strategy.StrategyName + "-" + Data.Symbol.ToString() + "-" + Data.Period.ToString();
SaveData(fileName);
return;
}
/// <summary> /// Export menu /// </summary> private void ExportOnClick(object sender, EventArgs e) { var mi = (ToolStripMenuItem) sender; string name = mi.Name; var exporter = new Exporter(); switch (name) { case "dataOnly": exporter.ExportDataOnly(); break; case "CSVData": exporter.ExportCSVData(); break; case "indicators": exporter.ExportIndicators(); break; case "summary": exporter.ExportBarSummary(); break; case "positions": exporter.ExportPositions(true); break; case "positionsNoTransfer": exporter.ExportPositions(false); break; case "positionInMoney": exporter.ExportPositionsInMoney(true); break; case "positionInMoneyNoTransfer": exporter.ExportPositionsInMoney(false); break; } }