Exemplo n.º 1
0
        private static void OutputStatisticsToExcel(ExcelSheet sheet, Simulator simulator)
        {
            var table1 = new ExcelTable(sheet, _services.GetService <IJ4JLoggerFactory>(), TableOrientation.RowHeaders);

            table1.AddHeaders("Overall Mean Return", "Overall Standard Deviation");
            table1.AddEntry(simulator.OverallGeometricReturnMean, simulator.OverallGeometricReturnStandardDeviation);

            var table2 = new ExcelTable(sheet, _services.GetService <IJ4JLoggerFactory>(), row: 3, col: 0);

            table2.AddHeaders("Year", "Mean Portfolio Return", "Portfolio Standard Deviation");

            for (int year = 0; year < simulator.Context.Years; year++)
            {
                table2.AddEntry(
                    year,
                    simulator.PortfolioReturnsByYear[year],
                    simulator.PortfolioStandardDeviationsByYear[year]);
            }
        }
Exemplo n.º 2
0
        private static void OutputAssumptionsToExcel(ExcelSheet sheet, Simulator simulator)
        {
            var table = new ExcelTable(sheet, _services.GetService <IJ4JLoggerFactory>(), TableOrientation.RowHeaders);

            table.AddHeaders("Iterations to Run", "Number of Investments", "Time Span, Years",
                             "Maximum Annual Rate of Return", "Maximum Standard Deviation in Rate of Return");

            table.AddEntry(_context.Simulations, _context.Investments, _context.Years,
                           _context.MeanMarketReturn, _context.StdDevMarketReturn);

            var table2 = new ExcelTable(sheet, _services.GetService <IJ4JLoggerFactory>(), row: 7, col: 0);

            table2.AddHeaders("Investment #", "Inverse Gaussian Mean", "Inverse Gaussian Std Dev");

            for (var inv = 0; inv < simulator.Context.Investments; inv++)
            {
                var ig = simulator.InverseInvestmentGaussians[inv];

                table2.AddEntry(inv, ig.Mean, ig.StdDev);
            }
        }