Forex_Strategy_Builder.Exporter.ExportPositions C# (CSharp) Method

ExportPositions() public method

Exports the positions info
public ExportPositions ( ) : void
return void
        public void ExportPositions()
        {
            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 pips" + Environment.NewLine);

            sb.Append("Pos Numb\t");
            sb.Append("Bar Numb\t");
            sb.Append("Bar Opening Time\t");
            sb.Append("Direction\t");
            sb.Append("Lots\t");
            sb.Append("Transaction\t");
            sb.Append("Order Price\t");
            sb.Append("Average 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.PosLots).ToString()                + "\t");
                sb.Append((position.Transaction).ToString()            + "\t");
                sb.Append((position.FormOrdPrice).ToString(FF)         + "\t");
                sb.Append((position.PosPrice).ToString(FF)             + "\t");
                sb.Append((Math.Round(position.ProfitLoss)).ToString() + "\t");
                sb.Append((Math.Round(position.FloatingPL)).ToString() + "\t");
                sb.Append((Math.Round(position.Balance   )).ToString() + "\t");
                sb.Append((Math.Round(position.Equity    )).ToString() + "\t");
                sb.Append(Environment.NewLine);
            }

            string fileName = Data.Strategy.StrategyName + "-" + Data.Symbol.ToString() + "-" + Data.Period.ToString();
            SaveData(fileName);
            return;
        }

Usage Example

        /// <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;
            }
        }
All Usage Examples Of Forex_Strategy_Builder.Exporter::ExportPositions