@Override public void eventFired(PersistentEntity event) { if (event instanceof PNLChangeEvent) { process((PNLChangeEvent) event); } } });
PNLMonitor pnlMonitor = new PNLMonitor(transFac, timeFrame); TSContainer2 tsc = pnlMonitor.getCumulatedTSContainer(); TSContainer2 pnlContainer = pnlMonitor.getCumulatedTSContainer(); FileOutputStream fout; ChartUtilities.saveChartAsPNG(new File(targetFolder + File.separator + "pnl.png"), pnlMonitor.getStaticChart(), 800, 600);
public void testMonitor() throws FileNotFoundException, Exception { // PNLMonitor monitor = new PNLMonitor(null); // monitor.process(ce(10L, "A", 0.0)); monitor.process(ce(20L, "A", 1.0)); monitor.process(ce(30L, "A", 0.0)); monitor.process(ce(40L, "A", 2.0)); monitor.process(ce(50L, "A", -0.2)); // assertEquals(2, monitor.getTsContainer().getNumColumns()); assertEquals(5, monitor.getTsContainer().getNumRows()); // DoubleColumn dc = (DoubleColumn)monitor.getTsContainer().getColumn("A"); assertNotNull(dc); DoubleColumn cumulatedPnl = dc.cumsum(); assertEquals(2.8, cumulatedPnl.get(4)); // }
pnlMonitor = new PNLMonitor(transportFactory); jframe.toFront(); pnlMonitor.showLiveChart();
fillExporter.export(targetFolder, oelistener.getFillEvents()); TSContainer2 pnlContainer = pnlMonitor.getCumulatedTSContainer(); tcm.overwriteNull(pnlContainer); tcm.overwriteNull(pnlContainer, 0.0); pnlMonitor.getStaticChart(), 800, 600);
public SimulationReport generateReport(String targetFolder) throws IOException { SimulationReport sr = new SimulationReport(); TSContainerMethods tcm = new TSContainerMethods(); TSContainer2 pnlContainer = pnlMonitor.getCumulatedTSContainer(); tcm.overwriteNull(pnlContainer); tcm.overwriteNull(pnlContainer, 0.0); sr.setPnlSeries(pnlContainer); // HTMLReportGen h = new HTMLReportGen(targetFolder, templateFolder); if(oelistener.getFillEvents().size()>0){ h.genReport(algoConfigs, oelistener, pnlMonitor, btConfig); } else{ log.warn("No trades were generated!"); System.out.println("No trades were generated."); } // fill the sr return sr; }