You can subscribe to this list here.
| 2007 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(148) |
Jun
(48) |
Jul
(107) |
Aug
(292) |
Sep
(301) |
Oct
(530) |
Nov
(142) |
Dec
(37) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2008 |
Jan
|
Feb
|
Mar
(4) |
Apr
(1) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: Márcio V. d. S. <mv...@us...> - 2007-10-05 20:55:00
|
Update of /cvsroot/tail/Tail/src/test/net/sf/tail/report/xls In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv22554/src/test/net/sf/tail/report/xls Modified Files: CompleteXlsGeneratorExecutor.java Log Message: Index: CompleteXlsGeneratorExecutor.java =================================================================== RCS file: /cvsroot/tail/Tail/src/test/net/sf/tail/report/xls/CompleteXlsGeneratorExecutor.java,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** CompleteXlsGeneratorExecutor.java 3 Oct 2007 23:57:01 -0000 1.7 --- CompleteXlsGeneratorExecutor.java 5 Oct 2007 20:55:01 -0000 1.8 *************** *** 15,18 **** --- 15,19 ---- import net.sf.tail.Strategy; import net.sf.tail.TimeSeries; + import net.sf.tail.TimeSeriesSlicer; import net.sf.tail.Walker; import net.sf.tail.analysis.criteria.AverageProfitCriterion; *************** *** 25,29 **** import net.sf.tail.analysis.walk.WalkForward; import net.sf.tail.indicator.simple.ClosePriceIndicator; - import net.sf.tail.indicator.tracker.ParabolicSarIndicator; import net.sf.tail.indicator.tracker.SMAIndicator; import net.sf.tail.io.reader.CedroTimeSeriesLoader; --- 26,29 ---- *************** *** 34,38 **** import org.apache.poi.hssf.usermodel.HSSFWorkbook; - import org.joda.time.DateTime; import org.joda.time.Period; --- 34,37 ---- *************** *** 45,49 **** try { ! timeSeries = ctsl.load(new FileInputStream("BaseBovespa/diario/petr4Dia.csv"), "Petrobras (petr4)"); } catch (FileNotFoundException e) { e.printStackTrace(); --- 44,48 ---- try { ! timeSeries = ctsl.load(new FileInputStream("BaseBovespa/15min/petr4_15min_05102007.csv"), "Petrobras (petr4)"); } catch (FileNotFoundException e) { e.printStackTrace(); *************** *** 55,70 **** Indicator<Double> close = new ClosePriceIndicator(timeSeries); ! for (int i = 4; i < 20; i++) { Indicator<Double> tracker = new SMAIndicator(close, i); Strategy strategy = new IndicatorCrossedIndicatorStrategy(close, tracker); strategies.add(strategy); } ! ! Indicator<Double> tracker = new ParabolicSarIndicator(timeSeries); ! Strategy strategy = new IndicatorCrossedIndicatorStrategy(close, tracker); ! strategies.add(strategy); ! ! Report r = w.walk(strategies, new FullyMemorizedSlicer(timeSeries, new Period().withMonths(10), new DateTime( ! 2000, 1, 1, 0, 0, 0, 0)), new TotalProfitCriterion()); CompleteXlsGenerator xls = new CompleteXlsGenerator(); --- 54,66 ---- Indicator<Double> close = new ClosePriceIndicator(timeSeries); ! for (int i = 4; i < 60; i++) { Indicator<Double> tracker = new SMAIndicator(close, i); Strategy strategy = new IndicatorCrossedIndicatorStrategy(close, tracker); strategies.add(strategy); } ! ! TimeSeriesSlicer slicer = new FullyMemorizedSlicer(timeSeries, new Period().withMonths(10)); ! ! Report r = w.walk(strategies,slicer , new TotalProfitCriterion()); CompleteXlsGenerator xls = new CompleteXlsGenerator(); |
|
From: Márcio V. d. S. <mv...@us...> - 2007-10-05 20:55:00
|
Update of /cvsroot/tail/Tail/src/test/net/sf/tail/series In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv22554/src/test/net/sf/tail/series Modified Files: FullyMemorizedSlicerTest.java PartialMemorizesSlicerTest.java Log Message: Index: PartialMemorizesSlicerTest.java =================================================================== RCS file: /cvsroot/tail/Tail/src/test/net/sf/tail/series/PartialMemorizesSlicerTest.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PartialMemorizesSlicerTest.java 3 Oct 2007 22:56:47 -0000 1.1 --- PartialMemorizesSlicerTest.java 5 Oct 2007 20:55:00 -0000 1.2 *************** *** 37,40 **** --- 37,54 ---- @Test + public void testStartDateBeforeTimeSeriesDate(){ + series = new SampleTimeSeries(date.withYear(2000), date.withYear(2001), date.withYear(2002), date + .withYear(2003), date.withYear(2004)); + Period period = new Period().withYears(1); + + PartialMemorizedSlicer slicer = new PartialMemorizedSlicer(series, period, date.withYear(1980), 1); + + assertEquals(0, slicer.getSlice(0).getBegin()); + assertEquals(1, slicer.getSlice(1).getBegin()); + assertEquals(2, slicer.getSlice(2).getBegin()); + assertEquals(3, slicer.getSlice(3).getBegin()); + assertEquals(4, slicer.getSlice(4).getBegin()); + } + @Test public void testApllyForPartialMemorizedSlicer(){ series = new SampleTimeSeries(date.withYear(2000), date.withYear(2001), date.withYear(2002), date *************** *** 85,90 **** } - //TODO - @Test public void testApllyForSeries(){ --- 99,102 ---- *************** *** 224,228 **** Period period = new Period().withYears(1); ! series = new SampleTimeSeries(date.withDate(2000, 7, 1), date.withDate(2000, 8, 1), date.withDate(2000, 9, 15), date.withDate(2001, 1, 1), date.withDate(2001, 1, 3), date.withDate(2001, 12, 31), date.withDate(2002, 1, 1), date.withDate(2002, 1, 2), date.withDate(2002, 1, 3), date.withDate(2002, 5, 5), date --- 236,240 ---- Period period = new Period().withYears(1); ! series = new SampleTimeSeries(date.withDate(2000, 1, 1), date.withDate(2000, 8, 1), date.withDate(2000, 9, 15), date.withDate(2001, 1, 1), date.withDate(2001, 1, 3), date.withDate(2001, 12, 31), date.withDate(2002, 1, 1), date.withDate(2002, 1, 2), date.withDate(2002, 1, 3), date.withDate(2002, 5, 5), date Index: FullyMemorizedSlicerTest.java =================================================================== RCS file: /cvsroot/tail/Tail/src/test/net/sf/tail/series/FullyMemorizedSlicerTest.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** FullyMemorizedSlicerTest.java 3 Oct 2007 22:56:47 -0000 1.1 --- FullyMemorizedSlicerTest.java 5 Oct 2007 20:55:00 -0000 1.2 *************** *** 182,186 **** Period period = new Period().withYears(1); ! series = new SampleTimeSeries(date.withDate(2000, 7, 1), date.withDate(2000, 8, 1), date.withDate(2000, 9, 15), date.withDate(2001, 1, 1), date.withDate(2001, 1, 3), date.withDate(2001, 12, 31), date.withDate(2002, 1, 1), date.withDate(2002, 1, 2), date.withDate(2002, 1, 3), date.withDate(2002, 5, 5), date --- 182,186 ---- Period period = new Period().withYears(1); ! series = new SampleTimeSeries(date.withDate(2000, 1, 1), date.withDate(2000, 8, 1), date.withDate(2000, 9, 15), date.withDate(2001, 1, 1), date.withDate(2001, 1, 3), date.withDate(2001, 12, 31), date.withDate(2002, 1, 1), date.withDate(2002, 1, 2), date.withDate(2002, 1, 3), date.withDate(2002, 5, 5), date *************** *** 239,243 **** Period period = new Period().withYears(1); ! series = new SampleTimeSeries(date.withDate(2000, 7, 1), date.withDate(2000, 8, 1), date.withDate(2000, 9, 15), date.withDate(2001, 1, 1), date.withDate(2001, 1, 3), date.withDate(2001, 12, 31), date.withDate(2002, 1, 1), date.withDate(2002, 1, 2), date.withDate(2002, 1, 3), date.withDate(2002, 5, 5), date --- 239,243 ---- Period period = new Period().withYears(1); ! series = new SampleTimeSeries(date.withDate(2000, 1, 1), date.withDate(2000, 8, 1), date.withDate(2000, 9, 15), date.withDate(2001, 1, 1), date.withDate(2001, 1, 3), date.withDate(2001, 12, 31), date.withDate(2002, 1, 1), date.withDate(2002, 1, 2), date.withDate(2002, 1, 3), date.withDate(2002, 5, 5), date |
|
From: Márcio V. d. S. <mv...@us...> - 2007-10-05 20:55:00
|
Update of /cvsroot/tail/Tail/src/test/net/sf/tail In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv22554/src/test/net/sf/tail Modified Files: EMACompleteTest.java Log Message: Index: EMACompleteTest.java =================================================================== RCS file: /cvsroot/tail/Tail/src/test/net/sf/tail/EMACompleteTest.java,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -d -r1.16 -r1.17 *** EMACompleteTest.java 3 Oct 2007 22:56:47 -0000 1.16 --- EMACompleteTest.java 5 Oct 2007 20:55:00 -0000 1.17 *************** *** 42,46 **** TimeSeries timeSeries = null; ! timeSeries = ctsl.load(new FileInputStream("BaseBovespa/15min/ambv4.csv"), "Ambev (ambv4)"); Walker w = new WalkForward(new BestStrategyEvaluator(new HistoryRunner(OperationType.BUY))); --- 42,46 ---- TimeSeries timeSeries = null; ! timeSeries = ctsl.load(new FileInputStream("BaseBovespa/15min/petr4_15min_05102007.csv"), "Ambev (ambv4)"); Walker w = new WalkForward(new BestStrategyEvaluator(new HistoryRunner(OperationType.BUY))); *************** *** 67,74 **** JFreeChart jfreechart = stockChart.createChart(""); ! ChartUtilities.saveChartAsPNG(new File("src/templates/total/ambev.png"), jfreechart, 800, 300); StringBuffer html = new ReportHTMLGenerator().generate(r, criteria, "ambev.png"); ! File reportHtml = new File("src/templates/total/report.html"); OutputStream out = new BufferedOutputStream(new FileOutputStream(reportHtml)); PrintWriter write = new PrintWriter(out); --- 67,74 ---- JFreeChart jfreechart = stockChart.createChart(""); ! ChartUtilities.saveChartAsPNG(new File("src/templates/ambev.png"), jfreechart, 800, 300); StringBuffer html = new ReportHTMLGenerator().generate(r, criteria, "ambev.png"); ! File reportHtml = new File("src/templates/report.html"); OutputStream out = new BufferedOutputStream(new FileOutputStream(reportHtml)); PrintWriter write = new PrintWriter(out); |
|
From: Márcio V. d. S. <mv...@us...> - 2007-10-05 20:55:00
|
Update of /cvsroot/tail/Tail/src/test/net/sf/tail/report/html In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv22554/src/test/net/sf/tail/report/html Modified Files: CompleteHtmlGeneratorExecutor.java Log Message: Index: CompleteHtmlGeneratorExecutor.java =================================================================== RCS file: /cvsroot/tail/Tail/src/test/net/sf/tail/report/html/CompleteHtmlGeneratorExecutor.java,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** CompleteHtmlGeneratorExecutor.java 3 Oct 2007 22:56:47 -0000 1.5 --- CompleteHtmlGeneratorExecutor.java 5 Oct 2007 20:55:01 -0000 1.6 *************** *** 43,47 **** try { ! timeSeries = ctsl.load(new FileInputStream("BaseBovespa/diario/petr4Dia.csv"), "Petrobras (petr4)"); } catch (FileNotFoundException e) { e.printStackTrace(); --- 43,47 ---- try { ! timeSeries = ctsl.load(new FileInputStream("BaseBovespa/15min/petr4_15min_05102007.csv"), "Petrobras (petr4)"); } catch (FileNotFoundException e) { e.printStackTrace(); |
|
From: Márcio V. d. S. <mv...@us...> - 2007-10-05 20:55:00
|
Update of /cvsroot/tail/Tail/BaseBovespa/diario In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv22554/BaseBovespa/diario Added Files: petr4Dia2000.csv Log Message: --- NEW FILE: petr4Dia2000.csv --- (This appears to be a binary file; contents omitted.) |
|
From: Márcio V. d. S. <mv...@us...> - 2007-10-05 20:54:59
|
Update of /cvsroot/tail/Tail/src/java/net/sf/tail/series In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv22554/src/java/net/sf/tail/series Modified Files: PartialMemorizedSlicer.java Log Message: Index: PartialMemorizedSlicer.java =================================================================== RCS file: /cvsroot/tail/Tail/src/java/net/sf/tail/series/PartialMemorizedSlicer.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** PartialMemorizedSlicer.java 4 Oct 2007 00:20:55 -0000 1.3 --- PartialMemorizedSlicer.java 5 Oct 2007 20:55:00 -0000 1.4 *************** *** 28,32 **** --- 28,37 ---- public PartialMemorizedSlicer(TimeSeries series, Period period,DateTime periodBegin, int periodsPerSlice) { int index = series.getBegin(); + + if(periodBegin.isBefore(series.getTick(index).getDate())) periodBegin = series.getTick(series.getBegin()).getDate(); + Interval interval = new Interval(periodBegin, periodBegin.plus(period)); + + while (series.getTick(index).getDate().isBefore(interval.getStart())) index++; |
|
From: Márcio V. d. S. <mv...@us...> - 2007-10-05 20:54:59
|
Update of /cvsroot/tail/Tail/BaseBovespa/15min In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv22554/BaseBovespa/15min Added Files: vale5_15min_05102007.csv petr4_15min_05102007.csv Log Message: --- NEW FILE: petr4_15min_05102007.csv --- (This appears to be a binary file; contents omitted.) --- NEW FILE: vale5_15min_05102007.csv --- (This appears to be a binary file; contents omitted.) |
|
From: Thies <tg...@us...> - 2007-10-04 00:20:57
|
Update of /cvsroot/tail/Tail/src/java/net/sf/tail/graphics In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv19823/src/java/net/sf/tail/graphics Modified Files: StockAndCashFlowDataset.java Log Message: Resolvido problema com Ãndices Index: StockAndCashFlowDataset.java =================================================================== RCS file: /cvsroot/tail/Tail/src/java/net/sf/tail/graphics/StockAndCashFlowDataset.java,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** StockAndCashFlowDataset.java 1 Sep 2007 14:13:11 -0000 1.6 --- StockAndCashFlowDataset.java 4 Oct 2007 00:20:55 -0000 1.7 *************** *** 106,110 **** if (series.getTick(i).getDate().compareTo(nextDateTime) >= 0) { ! valueMarkers.add(i); nextDateTime = nextDateTime.plus(period); } --- 106,110 ---- if (series.getTick(i).getDate().compareTo(nextDateTime) >= 0) { ! valueMarkers.add(i - series.getBegin()); nextDateTime = nextDateTime.plus(period); } |
|
From: Thies <tg...@us...> - 2007-10-04 00:20:53
|
Update of /cvsroot/tail/Tail/src/java/net/sf/tail/series In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv19823/src/java/net/sf/tail/series Modified Files: PartialMemorizedSlicer.java Log Message: Resolvido problema com Ãndices Index: PartialMemorizedSlicer.java =================================================================== RCS file: /cvsroot/tail/Tail/src/java/net/sf/tail/series/PartialMemorizedSlicer.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** PartialMemorizedSlicer.java 3 Oct 2007 23:56:58 -0000 1.2 --- PartialMemorizedSlicer.java 4 Oct 2007 00:20:55 -0000 1.3 *************** *** 27,31 **** public PartialMemorizedSlicer(TimeSeries series, Period period,DateTime periodBegin, int periodsPerSlice) { ! this.series = series; this.period = period; this.splittedSeries = new ArrayList<TimeSeries>(); --- 27,36 ---- public PartialMemorizedSlicer(TimeSeries series, Period period,DateTime periodBegin, int periodsPerSlice) { ! int index = series.getBegin(); ! Interval interval = new Interval(periodBegin, periodBegin.plus(period)); ! while (series.getTick(index).getDate().isBefore(interval.getStart())) ! index++; ! ! this.series = new ConstrainedTimeSeries(series, index, series.getEnd()); this.period = period; this.splittedSeries = new ArrayList<TimeSeries>(); *************** *** 48,54 **** int index = series.getBegin(); - while (series.getTick(index).getDate().isBefore(interval.getStart())) - index++; - int sliceBeginIndex = index; --- 53,56 ---- |
|
From: xanaot <xa...@us...> - 2007-10-03 23:57:26
|
Update of /cvsroot/tail/Tail/src/java/net/sf/tail/report/html In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv9108/src/java/net/sf/tail/report/html Modified Files: CompleteHtmlGenerator.java Log Message: Refatoração na geração e imagens e criação de LOG Index: CompleteHtmlGenerator.java =================================================================== RCS file: /cvsroot/tail/Tail/src/java/net/sf/tail/report/html/CompleteHtmlGenerator.java,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** CompleteHtmlGenerator.java 3 Oct 2007 19:59:55 -0000 1.6 --- CompleteHtmlGenerator.java 3 Oct 2007 23:56:58 -0000 1.7 *************** *** 20,23 **** --- 20,24 ---- import net.sf.tail.report.ReportImage; + import org.apache.log4j.Logger; import org.joda.time.Period; *************** *** 34,38 **** private ReportHTMLGenerator reportGenerator; ! static final String FM_REPORT_DIR = "reports/"; public CompleteHtmlGenerator(Report report, List<AnalysisCriterion> criteria, Period period) { --- 35,41 ---- private ReportHTMLGenerator reportGenerator; ! static final String FM_REPORT_DIR = "reports" + File.separatorChar; ! ! private transient static Logger LOG = Logger.getLogger(CompleteHtmlGenerator.class); public CompleteHtmlGenerator(Report report, List<AnalysisCriterion> criteria, Period period) { *************** *** 55,58 **** --- 58,62 ---- public File generate(String fileName) throws IOException { + LOG.info("Initializing Report Generator"); File img; StringBuffer htmlCode; *************** *** 62,65 **** --- 66,70 ---- for (Decision decision : report.getDecisions()) { + LOG.info("Initializing generator for " + decision.getFileName()); img = image.generateImage(decision); *************** *** 67,74 **** --- 72,81 ---- createHTML(decision.getFileName(), htmlCode); urls.add(decision.getFileName() + ".html"); + LOG.info("Ending Generator"); } img = image.generateImage(report, period); htmlCode = reportGenerator.generate(report, criteria, img.getAbsolutePath(), urls); + LOG.info("Ending Report Generator"); return createHTML(fileName, htmlCode); } |
|
From: xanaot <xa...@us...> - 2007-10-03 23:57:26
|
Update of /cvsroot/tail/Tail/src/java/net/sf/tail/series In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv9108/src/java/net/sf/tail/series Modified Files: PartialMemorizedSlicer.java RegularSlicer.java Log Message: Refatoração na geração e imagens e criação de LOG Index: RegularSlicer.java =================================================================== RCS file: /cvsroot/tail/Tail/src/java/net/sf/tail/series/RegularSlicer.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** RegularSlicer.java 3 Oct 2007 23:07:58 -0000 1.2 --- RegularSlicer.java 3 Oct 2007 23:56:58 -0000 1.3 *************** *** 16,19 **** this(series, period, series.getTick(0).getDate()); } - } --- 16,18 ---- Index: PartialMemorizedSlicer.java =================================================================== RCS file: /cvsroot/tail/Tail/src/java/net/sf/tail/series/PartialMemorizedSlicer.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PartialMemorizedSlicer.java 3 Oct 2007 22:56:46 -0000 1.1 --- PartialMemorizedSlicer.java 3 Oct 2007 23:56:58 -0000 1.2 *************** *** 8,11 **** --- 8,12 ---- import net.sf.tail.TimeSeriesSlicer; + import org.apache.log4j.Logger; import org.joda.time.DateTime; import org.joda.time.Interval; *************** *** 23,27 **** protected int periodsPerSlice; ! //private transient static Logger LOG = Logger.getLogger(PartialMemorizedSlicer.class); public PartialMemorizedSlicer(TimeSeries series, Period period,DateTime periodBegin, int periodsPerSlice) { --- 24,28 ---- protected int periodsPerSlice; ! private transient static Logger LOG = Logger.getLogger(PartialMemorizedSlicer.class); public PartialMemorizedSlicer(TimeSeries series, Period period,DateTime periodBegin, int periodsPerSlice) { *************** *** 39,43 **** private void split() { ! // LOG.debug(String.format("Spliting %s ", series)); DateTime begin = periodBegin; --- 40,44 ---- private void split() { ! LOG.debug(String.format("Spliting %s ", series)); DateTime begin = periodBegin; *************** *** 61,65 **** createSlice(begins.get(Math.max(begins.size() - periodsPerSlice, 0)), index - 1); ! // LOG.debug(String.format("Interval %s before %s ", interval, series.getTick(index).getDate())); sliceBeginIndex = index; --- 62,66 ---- createSlice(begins.get(Math.max(begins.size() - periodsPerSlice, 0)), index - 1); ! LOG.debug(String.format("Interval %s before %s ", interval, series.getTick(index).getDate())); sliceBeginIndex = index; *************** *** 79,83 **** private void createSlice(int begin, int end) { ! // LOG.debug(String.format("New series from %d to %d ", begin, end)); ConstrainedTimeSeries slice = new ConstrainedTimeSeries(series, begin, end); splittedSeries.add(slice); --- 80,84 ---- private void createSlice(int begin, int end) { ! LOG.debug(String.format("New series from %d to %d ", begin, end)); ConstrainedTimeSeries slice = new ConstrainedTimeSeries(series, begin, end); splittedSeries.add(slice); |
|
From: xanaot <xa...@us...> - 2007-10-03 23:56:59
|
Update of /cvsroot/tail/Tail/src/java/net/sf/tail/report/xls In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv9108/src/java/net/sf/tail/report/xls Modified Files: ReportXlsGenerator.java CompleteXlsGenerator.java TimeSeriesXlsGenerator.java SliceXlsGenerator.java Log Message: Refatoração na geração e imagens e criação de LOG Index: CompleteXlsGenerator.java =================================================================== RCS file: /cvsroot/tail/Tail/src/java/net/sf/tail/report/xls/CompleteXlsGenerator.java,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** CompleteXlsGenerator.java 3 Oct 2007 19:59:55 -0000 1.13 --- CompleteXlsGenerator.java 3 Oct 2007 23:56:58 -0000 1.14 *************** *** 23,28 **** } ! public HSSFWorkbook generate(Report report, List<AnalysisCriterion> criteria, Period period) ! throws IOException { HSSFWorkbook workbook = new HSSFWorkbook(); --- 23,27 ---- } ! public HSSFWorkbook generate(Report report, List<AnalysisCriterion> criteria, Period period) throws IOException { HSSFWorkbook workbook = new HSSFWorkbook(); *************** *** 30,42 **** XLSReportGenerator slicerXls = new SliceXlsGenerator(workbook); TimeSeriesXlsGenerator seriesXls = new TimeSeriesXlsGenerator(workbook); ! List<AnalysisCriterion> criteria2 = new ArrayList<AnalysisCriterion>(); criteria2 = criteria; ! criteria2.add(0,report.getApplyedCriterion()); ! seriesXls.generate(report); reportXls.generate(report, criteria, period); slicerXls.generate(report, criteria2, period); ! return workbook; } --- 29,41 ---- XLSReportGenerator slicerXls = new SliceXlsGenerator(workbook); TimeSeriesXlsGenerator seriesXls = new TimeSeriesXlsGenerator(workbook); ! List<AnalysisCriterion> criteria2 = new ArrayList<AnalysisCriterion>(); criteria2 = criteria; ! criteria2.add(0, report.getApplyedCriterion()); ! seriesXls.generate(report); reportXls.generate(report, criteria, period); slicerXls.generate(report, criteria2, period); ! return workbook; } Index: TimeSeriesXlsGenerator.java =================================================================== RCS file: /cvsroot/tail/Tail/src/java/net/sf/tail/report/xls/TimeSeriesXlsGenerator.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** TimeSeriesXlsGenerator.java 3 Oct 2007 19:59:55 -0000 1.2 --- TimeSeriesXlsGenerator.java 3 Oct 2007 23:56:58 -0000 1.3 *************** *** 8,11 **** --- 8,12 ---- import net.sf.tail.report.Report; + import org.apache.log4j.Logger; import org.apache.poi.hssf.usermodel.HSSFCell; import org.apache.poi.hssf.usermodel.HSSFCellStyle; *************** *** 25,28 **** --- 26,31 ---- private CellStylist stylist; + private static final Logger LOG = Logger.getLogger(TimeSeriesXlsGenerator.class); + public TimeSeriesXlsGenerator(HSSFWorkbook workbook) { this.sheet = workbook.createSheet("Time Series"); *************** *** 31,34 **** --- 34,38 ---- public HSSFSheet generate(Report report) throws IOException { + LOG.info("Initializing Time Series Generator"); int row = INDEX_FIRST_ROW; *************** *** 42,47 **** generateInternalRow(row, series, style); ! stylist.rearrangeSheet(sheet, 10); return this.sheet; } --- 46,52 ---- generateInternalRow(row, series, style); ! stylist.rearrangeSheet(sheet, 11); + LOG.info("Ending Time Series Generator"); return this.sheet; } *************** *** 61,64 **** --- 66,70 ---- createCell(rowHeader, "Quantidade", (short) columnIndex++, style); + LOG.info("Header created"); return firtRow; } *************** *** 66,69 **** --- 72,76 ---- private void generateInternalRow(int firtRow, TimeSeries series, HSSFCellStyle style) { int i; + LOG.info("Initializing Internal rows"); for (i = series.getBegin(); i < series.getEnd(); i++) { Tick tick = series.getTick(i); *************** *** 95,98 **** --- 102,106 ---- createCell(row, tick.getVolume(), (short) indexcolumn++, style); createCell(row, tick.getTrades(), (short) indexcolumn++, style); + LOG.info("Ending Internal rows"); } Index: SliceXlsGenerator.java =================================================================== RCS file: /cvsroot/tail/Tail/src/java/net/sf/tail/report/xls/SliceXlsGenerator.java,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** SliceXlsGenerator.java 3 Oct 2007 19:59:55 -0000 1.8 --- SliceXlsGenerator.java 3 Oct 2007 23:56:59 -0000 1.9 *************** *** 15,18 **** --- 15,19 ---- import net.sf.tail.report.ReportImage; + import org.apache.log4j.Logger; import org.apache.poi.hssf.usermodel.HSSFCell; import org.apache.poi.hssf.usermodel.HSSFCellStyle; *************** *** 29,35 **** protected static final int INDEX_FIRST_ROW = 18; ! protected static final String FM_REPORT_DIR = "reports/"; ! protected static final String FM_CHART_DIR = "PNGCharts/"; private HSSFWorkbook workbook; --- 30,36 ---- protected static final int INDEX_FIRST_ROW = 18; ! protected static final String FM_REPORT_DIR = "reports" + File.separatorChar; ! protected static final String FM_CHART_DIR = "PNGCharts" + File.separatorChar; private HSSFWorkbook workbook; *************** *** 37,40 **** --- 38,43 ---- private CellStylist stylist; + private static final Logger LOG = Logger.getLogger(SliceXlsGenerator.class); + public SliceXlsGenerator(HSSFWorkbook workbook) { this.workbook = workbook; *************** *** 53,56 **** --- 56,60 ---- public List<HSSFSheet> generate(Decision decision, List<AnalysisCriterion> criteria, Period period) throws IOException { + LOG.info("Initializing Generator for" + decision.getFileName()); int row = INDEX_FIRST_ROW; ReportImage image = new ReportImage(); *************** *** 70,77 **** File reportPNG = image.generateImage(decision); stylist.drawImage(reportPNG, sheet, 1, 7); ! stylist.rearrangeSheet(sheet, criteria.size() + 6); sheets.add(sheet); return sheets; } --- 74,83 ---- File reportPNG = image.generateImage(decision); stylist.drawImage(reportPNG, sheet, 1, 7); ! reportPNG.delete(); ! stylist.rearrangeSheet(sheet, criteria.size() + 6); sheets.add(sheet); + LOG.info("Ending generator"); return sheets; } *************** *** 98,101 **** --- 104,108 ---- createCell(rowHeader, criterium.getClass().getSimpleName(), (short) columnIndex++, style); } + LOG.info("Header created"); return firtRow; } *************** *** 103,107 **** private int generateInternalRow(int firtRow, HSSFWorkbook wb, HSSFSheet sheet, Decision decision, List<AnalysisCriterion> criteria, HSSFCellStyle style) { ! double calculate; int index = firtRow - INDEX_FIRST_ROW; --- 110,114 ---- private int generateInternalRow(int firtRow, HSSFWorkbook wb, HSSFSheet sheet, Decision decision, List<AnalysisCriterion> criteria, HSSFCellStyle style) { ! LOG.info("Initializing Internal rows"); double calculate; int index = firtRow - INDEX_FIRST_ROW; *************** *** 110,115 **** HSSFRow rowDecision = sheet.createRow((short) firtRow++); createCell(rowDecision, index++, (short) indexcolumn++, style); ! if(trade.getEntry().getType() == OperationType.BUY) ! { createCell(rowDecision, decision.getSeries().getTick(trade.getEntry().getIndex()).getDateName(), (short) indexcolumn++, style); --- 117,121 ---- HSSFRow rowDecision = sheet.createRow((short) firtRow++); createCell(rowDecision, index++, (short) indexcolumn++, style); ! if (trade.getEntry().getType() == OperationType.BUY) { createCell(rowDecision, decision.getSeries().getTick(trade.getEntry().getIndex()).getDateName(), (short) indexcolumn++, style); *************** *** 120,126 **** createCell(rowDecision, decision.getSeries().getTick(trade.getExit().getIndex()).getClosePrice(), (short) indexcolumn++, style); ! } ! else ! { createCell(rowDecision, decision.getSeries().getTick(trade.getExit().getIndex()).getDateName(), (short) indexcolumn++, style); --- 126,130 ---- createCell(rowDecision, decision.getSeries().getTick(trade.getExit().getIndex()).getClosePrice(), (short) indexcolumn++, style); ! } else { createCell(rowDecision, decision.getSeries().getTick(trade.getExit().getIndex()).getDateName(), (short) indexcolumn++, style); *************** *** 130,134 **** (short) indexcolumn++, style); createCell(rowDecision, decision.getSeries().getTick(trade.getEntry().getIndex()).getClosePrice(), ! (short) indexcolumn++, style); } for (AnalysisCriterion criterium : criteria) { --- 134,138 ---- (short) indexcolumn++, style); createCell(rowDecision, decision.getSeries().getTick(trade.getEntry().getIndex()).getClosePrice(), ! (short) indexcolumn++, style); } for (AnalysisCriterion criterium : criteria) { *************** *** 137,140 **** --- 141,145 ---- } } + LOG.info("Ending Internal rows"); return firtRow; } *************** *** 158,161 **** --- 163,167 ---- createCell(rowLast, calculate, (short) indexcolumn++, style); } + LOG.info("Created summary"); } Index: ReportXlsGenerator.java =================================================================== RCS file: /cvsroot/tail/Tail/src/java/net/sf/tail/report/xls/ReportXlsGenerator.java,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** ReportXlsGenerator.java 3 Oct 2007 19:59:55 -0000 1.8 --- ReportXlsGenerator.java 3 Oct 2007 23:56:58 -0000 1.9 *************** *** 70,74 **** File reportPNG = image.generateImage(report, period); stylist.drawImage(reportPNG, sheet, 1, 5); ! stylist.rearrangeSheet(sheet, criteria.size() + 5); --- 70,74 ---- File reportPNG = image.generateImage(report, period); stylist.drawImage(reportPNG, sheet, 1, 5); ! reportPNG.delete(); stylist.rearrangeSheet(sheet, criteria.size() + 5); *************** *** 156,160 **** createCell(rowLast, calculate, (short) indexcolumn++, style); } ! LOG.info("created summary"); } --- 156,160 ---- createCell(rowLast, calculate, (short) indexcolumn++, style); } ! LOG.info("Created summary"); } |
|
From: xanaot <xa...@us...> - 2007-10-03 23:56:59
|
Update of /cvsroot/tail/Tail/src/java/net/sf/tail/report In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv9108/src/java/net/sf/tail/report Modified Files: ReportImage.java Log Message: Refatoração na geração e imagens e criação de LOG Index: ReportImage.java =================================================================== RCS file: /cvsroot/tail/Tail/src/java/net/sf/tail/report/ReportImage.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** ReportImage.java 25 Sep 2007 00:04:22 -0000 1.1 --- ReportImage.java 3 Oct 2007 23:57:01 -0000 1.2 *************** *** 16,19 **** --- 16,20 ---- import net.sf.tail.indicator.simple.ClosePriceIndicator; + import org.apache.log4j.Logger; import org.jfree.chart.ChartUtilities; import org.jfree.chart.JFreeChart; *************** *** 26,30 **** --- 27,34 ---- protected static final String FM_CHART_DIR = "PNGCharts/"; + private static final Logger LOG = Logger.getLogger(ReportImage.class); + public File generateImage(Decision decision) throws IOException { + LOG.info("Initializing image genetator for " + decision.getFileName()); TimeSeries timeSeries = decision.getSeries(); List<Indicator<? extends Number>> indicators; *************** *** 40,47 **** File reportPNG = new File(imagePath); ChartUtilities.saveChartAsPNG(reportPNG, jfreechart, 800, 300); return reportPNG; } ! public File generateImage(Report report, Period period) throws IOException { TimeSeries timeSeries = report.getSlicer().getSeries(); Indicator<Double> close = new ClosePriceIndicator(timeSeries); --- 44,53 ---- File reportPNG = new File(imagePath); ChartUtilities.saveChartAsPNG(reportPNG, jfreechart, 800, 300); + LOG.info("Ending image genetator"); return reportPNG; } ! public File generateImage(Report report, Period period) throws IOException { + LOG.info("Initializing image genetator for " + report.getFileName()); TimeSeries timeSeries = report.getSlicer().getSeries(); Indicator<Double> close = new ClosePriceIndicator(timeSeries); *************** *** 53,57 **** --- 59,65 ---- File reportPNG = new File(imagePath); ChartUtilities.saveChartAsPNG(reportPNG, jfreechart, 800, 300); + LOG.info("Ending image genetator"); return reportPNG; } + } |
|
From: xanaot <xa...@us...> - 2007-10-03 23:56:59
|
Update of /cvsroot/tail/Tail/src/test/net/sf/tail/report/xls In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv9108/src/test/net/sf/tail/report/xls Modified Files: CompleteXlsGeneratorExecutor.java Log Message: Refatoração na geração e imagens e criação de LOG Index: CompleteXlsGeneratorExecutor.java =================================================================== RCS file: /cvsroot/tail/Tail/src/test/net/sf/tail/report/xls/CompleteXlsGeneratorExecutor.java,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** CompleteXlsGeneratorExecutor.java 3 Oct 2007 22:56:47 -0000 1.6 --- CompleteXlsGeneratorExecutor.java 3 Oct 2007 23:57:01 -0000 1.7 *************** *** 55,65 **** Indicator<Double> close = new ClosePriceIndicator(timeSeries); - // for (int i = 4; i < 60; i++) { - // Indicator<Double> tracker = new EMAIndicator(close, i); - // Strategy strategy = new IndicatorCrossedIndicatorStrategy(close, - // tracker); - // strategies.add(strategy); - // } - for (int i = 4; i < 20; i++) { Indicator<Double> tracker = new SMAIndicator(close, i); --- 55,58 ---- |
|
From: xanaot <xa...@us...> - 2007-10-03 23:07:56
|
Update of /cvsroot/tail/Tail/src/java/net/sf/tail/series In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv18140/src/java/net/sf/tail/series Modified Files: RegularSlicer.java FullyMemorizedSlicer.java Log Message: Removendo comentários Index: RegularSlicer.java =================================================================== RCS file: /cvsroot/tail/Tail/src/java/net/sf/tail/series/RegularSlicer.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** RegularSlicer.java 3 Oct 2007 22:56:46 -0000 1.1 --- RegularSlicer.java 3 Oct 2007 23:07:58 -0000 1.2 *************** *** 17,43 **** } - // public String getName() { - // String sPeriod = ""; - // sPeriod = periodToString(sPeriod); - // return this.getClass().getSimpleName() + " Period: " + sPeriod; - // } - // - // private String periodToString(String sPeriod) { - // if (period.getYears() > 0) - // sPeriod += period.getYears() + " year(s) ,"; - // if (period.getMonths() > 0) - // sPeriod += period.getMonths() + " month(s) ,"; - // if (period.getDays() > 0) - // sPeriod += period.getDays() + " day(s) ,"; - // if (period.getHours() > 0) - // sPeriod += period.getHours() + " day(s) ,"; - // if (period.getMinutes() > 0) - // sPeriod += period.getMinutes() + " day(s) ,"; - // return sPeriod.substring(0, sPeriod.length() - 2); - // } - - // public String getPeriodName() { - // return this.periodBegin.toString("hh:mm dd/MM/yyyy - ") - // + series.getTick(series.getEnd()).getDate().toString("hh:mm dd/MM/yyyy"); - // } } --- 17,19 ---- Index: FullyMemorizedSlicer.java =================================================================== RCS file: /cvsroot/tail/Tail/src/java/net/sf/tail/series/FullyMemorizedSlicer.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** FullyMemorizedSlicer.java 3 Oct 2007 22:56:46 -0000 1.1 --- FullyMemorizedSlicer.java 3 Oct 2007 23:07:58 -0000 1.2 *************** *** 16,43 **** this(series, period, series.getTick(0).getDate()); } - - // public String getName() { - // String sPeriod = ""; - // sPeriod = periodToString(sPeriod); - // return this.getClass().getSimpleName() + " Period: " + sPeriod; - // } - // - // private String periodToString(String sPeriod) { - // if (period.getYears() > 0) - // sPeriod += period.getYears() + " year(s) ,"; - // if (period.getMonths() > 0) - // sPeriod += period.getMonths() + " month(s) ,"; - // if (period.getDays() > 0) - // sPeriod += period.getDays() + " day(s) ,"; - // if (period.getHours() > 0) - // sPeriod += period.getHours() + " day(s) ,"; - // if (period.getMinutes() > 0) - // sPeriod += period.getMinutes() + " day(s) ,"; - // return sPeriod.substring(0, sPeriod.length() - 2); - // } - - // public String getPeriodName() { - // return this.periodBegin.toString("hh:mm dd/MM/yyyy - ") - // + series.getTick(series.getEnd()).getDate().toString("hh:mm dd/MM/yyyy"); - // } } --- 16,18 ---- |
|
From: xanaot <xa...@us...> - 2007-10-03 23:04:37
|
Update of /cvsroot/tail/TailS/src/java/net/sf/tails/swing/frame/stockAnalysis In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv16573/src/java/net/sf/tails/swing/frame/stockAnalysis Modified Files: NewStockAnalysis3.java Log Message: Refatoração para novo slicer Index: NewStockAnalysis3.java =================================================================== RCS file: /cvsroot/tail/TailS/src/java/net/sf/tails/swing/frame/stockAnalysis/NewStockAnalysis3.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** NewStockAnalysis3.java 3 Oct 2007 20:48:43 -0000 1.2 --- NewStockAnalysis3.java 3 Oct 2007 23:04:39 -0000 1.3 *************** *** 16,20 **** import net.sf.tail.AnalysisCriterion; import net.sf.tail.OperationType; - import net.sf.tail.SlicerType; import net.sf.tail.TimeSeriesSlicer; import net.sf.tail.analysis.Stock; --- 16,19 ---- *************** *** 22,26 **** import net.sf.tail.analysis.evaluator.BestStrategyEvaluator; import net.sf.tail.runner.HistoryRunner; ! import net.sf.tail.series.SlicerByTimePeriod; import net.sf.tails.swing.frame.Index; import net.sf.tails.swing.helper.FrameHelper; --- 21,26 ---- import net.sf.tail.analysis.evaluator.BestStrategyEvaluator; import net.sf.tail.runner.HistoryRunner; ! import net.sf.tail.series.FullyMemorizedSlicer; ! import net.sf.tail.series.RegularSlicer; import net.sf.tails.swing.frame.Index; import net.sf.tails.swing.helper.FrameHelper; *************** *** 257,261 **** private void finishButtonActionPerformed(java.awt.event.ActionEvent evt) { ! SlicerType slicerType; DateTime startDate; try { --- 257,261 ---- private void finishButtonActionPerformed(java.awt.event.ActionEvent evt) { ! DateTime startDate; try { *************** *** 295,311 **** return; } ! if (slicerTypeComboBox.getSelectedItem().toString().equals("Memorized")) { ! slicerType = SlicerType.MEMORIZED; } else { ! slicerType = SlicerType.REGULAR; } ! Period period = new Period(year, month, 0, day, hour, minute, 0, 0); ! TimeSeriesSlicer slicer = new SlicerByTimePeriod(stock.getSeries(), period, startDate, slicerType); ! StockAnalysis stockAnalysis = new StockAnalysis(stock, selectedCriterion, slicer, new BestStrategyEvaluator(new HistoryRunner(OperationType.BUY))); stockAnalysis.addCriteria(additionalCriteria); index.loadStockAnalysis(stockAnalysis); --- 295,311 ---- return; } ! TimeSeriesSlicer slicer; ! Period period = new Period(year, month, 0, day, hour, minute, 0, 0); if (slicerTypeComboBox.getSelectedItem().toString().equals("Memorized")) { ! slicer = new FullyMemorizedSlicer(stock.getSeries(), period, startDate); } else { ! slicer = new RegularSlicer(stock.getSeries(), period, startDate); } ! ! StockAnalysis stockAnalysis = new StockAnalysis(stock, selectedCriterion, slicer, new BestStrategyEvaluator(new HistoryRunner(OperationType.BUY))); stockAnalysis.addCriteria(additionalCriteria); index.loadStockAnalysis(stockAnalysis); |
|
From: Carlos <ma...@us...> - 2007-10-03 22:59:02
|
Update of /cvsroot/tail/TailS/src/java/net/sf/tails/swing/frame In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv13764/src/java/net/sf/tails/swing/frame Modified Files: Index.java Log Message: Consertado um problema que estava acontecendo ao dar load em um stock analysis 2 vezes... Index: Index.java =================================================================== RCS file: /cvsroot/tail/TailS/src/java/net/sf/tails/swing/frame/Index.java,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** Index.java 3 Oct 2007 21:10:19 -0000 1.15 --- Index.java 3 Oct 2007 22:59:04 -0000 1.16 *************** *** 306,310 **** FrameHelper.generateFolders(folderBundle.getString("XLS_DIR")); HSSFWorkbook workbook = xlsGenerator.generate(report, stockAnalysis.getAdditionalCriteria(), stockAnalysis.getSlicer().getPeriod()); ! FileOutputStream fileOut = new FileOutputStream(xlsFileChooser.getSelectedFile().getAbsolutePath() + ".xls"); workbook.write(fileOut); fileOut.close(); --- 306,315 ---- FrameHelper.generateFolders(folderBundle.getString("XLS_DIR")); HSSFWorkbook workbook = xlsGenerator.generate(report, stockAnalysis.getAdditionalCriteria(), stockAnalysis.getSlicer().getPeriod()); ! String filePath = xlsFileChooser.getSelectedFile().getAbsolutePath(); ! if(!filePath.endsWith(".xls")) ! { ! filePath += ".xls"; ! } ! FileOutputStream fileOut = new FileOutputStream(xlsFileChooser.getSelectedFile().getAbsolutePath()); workbook.write(fileOut); fileOut.close(); *************** *** 379,389 **** public void loadStockAnalysis(StockAnalysis analysis) { ! stockNameLabel.setText(stockNameLabel.getText() + analysis.getStock().getName()); ! seriesIntervalLabel.setText(seriesIntervalLabel.getText() + analysis.getSlicer().getSeries().getTick(analysis.getSlicer().getSeries().getBegin()).getDateName() + " - " + analysis.getSlicer().getSeries().getTick(analysis.getSlicer().getSeries().getEnd()).getDateName()); - loadReports(analysis); - } - - public void loadReports(StockAnalysis analysis) { reportTable.setVisible(true); reportTable.setAutoCreateRowSorter(true); --- 384,390 ---- public void loadStockAnalysis(StockAnalysis analysis) { ! stockNameLabel.setText("Stock Name: " + analysis.getStock().getName()); ! seriesIntervalLabel.setText("Series Interval: " + analysis.getSlicer().getSeries().getTick(analysis.getSlicer().getSeries().getBegin()).getDateName() + " - " + analysis.getSlicer().getSeries().getTick(analysis.getSlicer().getSeries().getEnd()).getDateName()); reportTable.setVisible(true); reportTable.setAutoCreateRowSorter(true); *************** *** 396,400 **** this.stockAnalysis = analysis; this.pack(); - } --- 397,400 ---- |
|
From: Carlos <ma...@us...> - 2007-10-03 22:59:02
|
Update of /cvsroot/tail/TailS/src/java/net/sf/tails/swing/frame/report In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv13764/src/java/net/sf/tails/swing/frame/report Modified Files: NewReportFrame.java Log Message: Consertado um problema que estava acontecendo ao dar load em um stock analysis 2 vezes... Index: NewReportFrame.java =================================================================== RCS file: /cvsroot/tail/TailS/src/java/net/sf/tails/swing/frame/report/NewReportFrame.java,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** NewReportFrame.java 3 Oct 2007 20:20:34 -0000 1.9 --- NewReportFrame.java 3 Oct 2007 22:59:04 -0000 1.10 *************** *** 260,264 **** strategies = dsl.evalStrategies(customStrategyTextArea.getText()); stockAnalysis.createReport(reportNameField.getText(), strategies); ! index.loadReports(stockAnalysis); this.dispose(); } catch (ScriptException e) { --- 260,264 ---- strategies = dsl.evalStrategies(customStrategyTextArea.getText()); stockAnalysis.createReport(reportNameField.getText(), strategies); ! index.loadStockAnalysis(stockAnalysis); this.dispose(); } catch (ScriptException e) { |
|
From: xanaot <xa...@us...> - 2007-10-03 22:56:46
|
Update of /cvsroot/tail/Tail/src/test/net/sf/tail/series In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv12544/src/test/net/sf/tail/series Added Files: FullyMemorizedSlicerTest.java PartialMemorizesSlicerTest.java RegularSlicerTest.java Removed Files: SlicerByTimePeriodTest.java Log Message: Refatoração dos Slicer --- SlicerByTimePeriodTest.java DELETED --- --- NEW FILE: RegularSlicerTest.java --- package net.sf.tail.series; import static org.junit.Assert.assertEquals; import net.sf.tail.TimeSeriesSlicer; import net.sf.tail.sample.SampleTimeSeries; import org.joda.time.DateTime; import org.joda.time.Period; import org.junit.Before; import org.junit.Test; public class RegularSlicerTest { private SampleTimeSeries series; private DateTime date; @Before public void setUp() throws Exception { this.date = new DateTime(0); } @Test public void testApllyForSeries(){ series = new SampleTimeSeries(date.withYear(2000), date.withYear(2001), date.withYear(2002), date .withYear(2003), date.withYear(2004)); Period period = new Period().withYears(1); TimeSeriesSlicer slicer = new RegularSlicer(series, period); TimeSeriesSlicer newSlicer = slicer.applyForSeries(series); assertEquals(slicer, newSlicer); series = new SampleTimeSeries(date.withYear(2000), date.withYear(2000), date.withYear(2000), date .withYear(2001), date.withYear(2001), date.withYear(2001), date.withYear(2002), date.withYear(2002), date.withYear(2002), date.withYear(2002), date.withYear(2003)); newSlicer = slicer.applyForSeries(series); assertEquals(4, newSlicer.getSlices()); assertEquals(0, newSlicer.getSlice(0).getBegin()); assertEquals(2, newSlicer.getSlice(0).getEnd()); assertEquals(3, newSlicer.getSlice(1).getBegin()); assertEquals(5, newSlicer.getSlice(1).getEnd()); assertEquals(6, newSlicer.getSlice(2).getBegin()); assertEquals(9, newSlicer.getSlice(2).getEnd()); assertEquals(10, newSlicer.getSlice(3).getBegin()); assertEquals(10, newSlicer.getSlice(3).getEnd()); } @Test public void testSplitByYearOneDatePerYear() { series = new SampleTimeSeries(date.withYear(2000), date.withYear(2001), date.withYear(2002), date .withYear(2003), date.withYear(2004)); Period period = new Period().withYears(1); TimeSeriesSlicer split = new RegularSlicer(series, period); assertEquals(5, split.getSlices()); assertEquals(0, split.getSlice(0).getBegin()); assertEquals(0, split.getSlice(0).getEnd()); assertEquals(1, split.getSlice(1).getBegin()); assertEquals(1, split.getSlice(1).getEnd()); assertEquals(2, split.getSlice(2).getBegin()); assertEquals(2, split.getSlice(2).getEnd()); assertEquals(3, split.getSlice(3).getBegin()); assertEquals(3, split.getSlice(3).getEnd()); assertEquals(4, split.getSlice(4).getBegin()); assertEquals(4, split.getSlice(4).getEnd()); } @Test public void testSplitByYear() { series = new SampleTimeSeries(date.withYear(2000), date.withYear(2000), date.withYear(2000), date .withYear(2001), date.withYear(2001), date.withYear(2001), date.withYear(2002), date.withYear(2002), date.withYear(2002), date.withYear(2002), date.withYear(2003)); Period period = new Period().withYears(1); TimeSeriesSlicer split = new RegularSlicer(series, period); assertEquals(4, split.getSlices()); assertEquals(0, split.getSlice(0).getBegin()); assertEquals(2, split.getSlice(0).getEnd()); assertEquals(3, split.getSlice(1).getBegin()); assertEquals(5, split.getSlice(1).getEnd()); assertEquals(6, split.getSlice(2).getBegin()); assertEquals(9, split.getSlice(2).getEnd()); assertEquals(10, split.getSlice(3).getBegin()); assertEquals(10, split.getSlice(3).getEnd()); } @Test public void testSplitByYearForcingJuly() { Period period = new Period().withYears(1); series = new SampleTimeSeries(date.withDate(2000, 1, 1), date.withDate(2000, 2, 1), date.withDate(2000, 3, 1), date.withDate(2001, 1, 1), date.withDate(2001, 2, 1), date.withDate(2001, 12, 12), date.withDate(2002, 1, 1), date.withDate(2002, 2, 1), date.withDate(2002, 3, 1), date.withDate(2002, 5, 1), date .withDate(2003, 3, 1)); TimeSeriesSlicer split = new RegularSlicer(series, period, date.withYear(2000).withMonthOfYear(7)); assertEquals(3, split.getSlices()); assertEquals(3, split.getSlice(0).getBegin()); assertEquals(4, split.getSlice(0).getEnd()); assertEquals(5, split.getSlice(1).getBegin()); assertEquals(9, split.getSlice(1).getEnd()); assertEquals(10, split.getSlice(2).getBegin()); assertEquals(10, split.getSlice(2).getEnd()); } @Test public void testSplitByYearWithHolesBetweenSlices() { series = new SampleTimeSeries(date.withYear(2000), date.withYear(2000), date.withYear(2000), date .withYear(2001), date.withYear(2001), date.withYear(2001), date.withYear(2002), date.withYear(2002), date.withYear(2002), date.withYear(2002), date.withYear(2005), date.withYear(2005)); Period period = new Period().withYears(1); TimeSeriesSlicer split = new RegularSlicer(series, period); assertEquals(4, split.getSlices()); assertEquals(0, split.getSlice(0).getBegin()); assertEquals(2, split.getSlice(0).getEnd()); assertEquals(3, split.getSlice(1).getBegin()); assertEquals(5, split.getSlice(1).getEnd()); assertEquals(6, split.getSlice(2).getBegin()); assertEquals(9, split.getSlice(2).getEnd()); assertEquals(10, split.getSlice(3).getBegin()); assertEquals(11, split.getSlice(3).getEnd()); } @Test public void testSplitByYearBeginningInJuly() { Period period = new Period().withYears(1); series = new SampleTimeSeries(date.withDate(2000, 7, 1), date.withDate(2000, 8, 1), date.withDate(2000, 9, 15), date.withDate(2001, 1, 1), date.withDate(2001, 1, 3), date.withDate(2001, 12, 31), date.withDate(2002, 1, 1), date.withDate(2002, 1, 2), date.withDate(2002, 1, 3), date.withDate(2002, 5, 5), date .withDate(2003, 3, 3)); TimeSeriesSlicer split = new RegularSlicer(series, period); assertEquals(3, split.getSlices()); assertEquals(0, split.getSlice(0).getBegin()); assertEquals(4, split.getSlice(0).getEnd()); assertEquals(5, split.getSlice(1).getBegin()); assertEquals(9, split.getSlice(1).getEnd()); assertEquals(10, split.getSlice(2).getBegin()); assertEquals(10, split.getSlice(2).getEnd()); } @Test public void testSplitByYearBeginingInJulyOverridingPeriodBeginTo1of1of2000() { Period period = new Period().withYears(1); series = new SampleTimeSeries(date.withDate(2000, 7, 1), date.withDate(2000, 8, 1), date.withDate(2000, 9, 15), date.withDate(2001, 1, 1), date.withDate(2001, 1, 3), date.withDate(2001, 12, 31), date.withDate(2002, 1, 1), date.withDate(2002, 1, 2), date.withDate(2002, 1, 3), date.withDate(2002, 5, 5), date .withDate(2003, 3, 3)); TimeSeriesSlicer split = new RegularSlicer(series, period, date.withDate(2000, 1, 1)); assertEquals(4, split.getSlices()); assertEquals(0, split.getSlice(0).getBegin()); assertEquals(2, split.getSlice(0).getEnd()); assertEquals(3, split.getSlice(1).getBegin()); assertEquals(5, split.getSlice(1).getEnd()); assertEquals(6, split.getSlice(2).getBegin()); assertEquals(9, split.getSlice(2).getEnd()); assertEquals(10, split.getSlice(3).getBegin()); assertEquals(10, split.getSlice(3).getEnd()); } @Test public void testSplitByHour() { Period period = new Period().withHours(1); DateTime openTime = new DateTime(0).withTime(10, 0, 0, 0); series = new SampleTimeSeries(openTime, openTime.plusMinutes(1), openTime.plusMinutes(2), openTime .plusMinutes(10), openTime.plusMinutes(15), openTime.plusMinutes(25), openTime.plusHours(1), openTime .plusHours(2), openTime.plusHours(7), openTime.plusHours(10).plusMinutes(5), openTime.plusHours(10) .plusMinutes(10), openTime.plusHours(10).plusMinutes(20), openTime.plusHours(10).plusMinutes(30)); TimeSeriesSlicer split = new RegularSlicer(series, period); assertEquals(5, split.getSlices()); assertEquals(0, split.getSlice(0).getBegin()); assertEquals(5, split.getSlice(0).getEnd()); assertEquals(6, split.getSlice(1).getBegin()); assertEquals(6, split.getSlice(1).getEnd()); assertEquals(7, split.getSlice(2).getBegin()); assertEquals(7, split.getSlice(2).getEnd()); assertEquals(8, split.getSlice(3).getBegin()); assertEquals(8, split.getSlice(3).getEnd()); assertEquals(9, split.getSlice(4).getBegin()); assertEquals(12, split.getSlice(4).getEnd()); } } --- NEW FILE: FullyMemorizedSlicerTest.java --- package net.sf.tail.series; import static org.junit.Assert.assertEquals; import net.sf.tail.TimeSeriesSlicer; import net.sf.tail.sample.SampleTimeSeries; import org.joda.time.DateTime; import org.joda.time.Period; import org.junit.Before; import org.junit.Test; public class FullyMemorizedSlicerTest { private SampleTimeSeries series; private DateTime date; @Before public void setUp() throws Exception { this.date = new DateTime(0); } @Test public void testApllyForSeries(){ series = new SampleTimeSeries(date.withYear(2000), date.withYear(2001), date.withYear(2002), date .withYear(2003), date.withYear(2004)); Period period = new Period().withYears(1); TimeSeriesSlicer slicer = new FullyMemorizedSlicer(series, period); TimeSeriesSlicer newSlicer = slicer.applyForSeries(series); assertEquals(slicer, newSlicer); series = new SampleTimeSeries(date.withYear(2000), date.withYear(2000), date.withYear(2000), date .withYear(2001), date.withYear(2001), date.withYear(2001), date.withYear(2002), date.withYear(2002), date.withYear(2002), date.withYear(2002), date.withYear(2003)); newSlicer = slicer.applyForSeries(series); assertEquals(4, newSlicer.getSlices()); assertEquals(0, newSlicer.getSlice(0).getBegin()); assertEquals(2, newSlicer.getSlice(0).getEnd()); assertEquals(0, newSlicer.getSlice(1).getBegin()); assertEquals(5, newSlicer.getSlice(1).getEnd()); assertEquals(0, newSlicer.getSlice(2).getBegin()); assertEquals(9, newSlicer.getSlice(2).getEnd()); assertEquals(0, newSlicer.getSlice(3).getBegin()); assertEquals(10, newSlicer.getSlice(3).getEnd()); } @Test public void testSplitByYearOneDatePerYear() { series = new SampleTimeSeries(date.withYear(2000), date.withYear(2001), date.withYear(2002), date .withYear(2003), date.withYear(2004)); Period period = new Period().withYears(1); TimeSeriesSlicer split = new FullyMemorizedSlicer(series, period); assertEquals(5, split.getSlices()); assertEquals(0, split.getSlice(0).getBegin()); assertEquals(0, split.getSlice(0).getEnd()); assertEquals(0, split.getSlice(1).getBegin()); assertEquals(1, split.getSlice(1).getEnd()); assertEquals(0, split.getSlice(2).getBegin()); assertEquals(2, split.getSlice(2).getEnd()); assertEquals(0, split.getSlice(3).getBegin()); assertEquals(3, split.getSlice(3).getEnd()); assertEquals(0, split.getSlice(4).getBegin()); assertEquals(4, split.getSlice(4).getEnd()); } @Test public void testSplitByYear() { series = new SampleTimeSeries(date.withYear(2000), date.withYear(2000), date.withYear(2000), date .withYear(2001), date.withYear(2001), date.withYear(2001), date.withYear(2002), date.withYear(2002), date.withYear(2002), date.withYear(2002), date.withYear(2003)); Period period = new Period().withYears(1); TimeSeriesSlicer split = new FullyMemorizedSlicer(series, period); assertEquals(4, split.getSlices()); assertEquals(0, split.getSlice(0).getBegin()); assertEquals(2, split.getSlice(0).getEnd()); assertEquals(0, split.getSlice(1).getBegin()); assertEquals(5, split.getSlice(1).getEnd()); assertEquals(0, split.getSlice(2).getBegin()); assertEquals(9, split.getSlice(2).getEnd()); assertEquals(0, split.getSlice(3).getBegin()); assertEquals(10, split.getSlice(3).getEnd()); } @Test public void testSplitByYearForcingJuly() { Period period = new Period().withYears(1); series = new SampleTimeSeries(date.withDate(2000, 1, 1), date.withDate(2000, 2, 1), date.withDate(2000, 3, 1), date.withDate(2001, 1, 1), date.withDate(2001, 2, 1), date.withDate(2001, 12, 12), date.withDate(2002, 1, 1), date.withDate(2002, 2, 1), date.withDate(2002, 3, 1), date.withDate(2002, 5, 1), date .withDate(2003, 3, 1)); TimeSeriesSlicer split = new FullyMemorizedSlicer(series, period, date.withYear(2000).withMonthOfYear(7)); assertEquals(3, split.getSlices()); assertEquals(3, split.getSlice(0).getBegin()); assertEquals(4, split.getSlice(0).getEnd()); assertEquals(3, split.getSlice(1).getBegin()); assertEquals(9, split.getSlice(1).getEnd()); assertEquals(3, split.getSlice(2).getBegin()); assertEquals(10, split.getSlice(2).getEnd()); } @Test public void testSplitByYearWithHolesBetweenSlices() { series = new SampleTimeSeries(date.withYear(2000), date.withYear(2000), date.withYear(2000), date .withYear(2001), date.withYear(2001), date.withYear(2001), date.withYear(2002), date.withYear(2002), date.withYear(2002), date.withYear(2002), date.withYear(2005), date.withYear(2005)); Period period = new Period().withYears(1); TimeSeriesSlicer split = new FullyMemorizedSlicer(series, period); assertEquals(4, split.getSlices()); assertEquals(0, split.getSlice(0).getBegin()); assertEquals(2, split.getSlice(0).getEnd()); assertEquals(0, split.getSlice(1).getBegin()); assertEquals(5, split.getSlice(1).getEnd()); assertEquals(0, split.getSlice(2).getBegin()); assertEquals(9, split.getSlice(2).getEnd()); assertEquals(0, split.getSlice(3).getBegin()); assertEquals(11, split.getSlice(3).getEnd()); } @Test public void testSplitByYearBeginningInJuly() { Period period = new Period().withYears(1); series = new SampleTimeSeries(date.withDate(2000, 7, 1), date.withDate(2000, 8, 1), date.withDate(2000, 9, 15), date.withDate(2001, 1, 1), date.withDate(2001, 1, 3), date.withDate(2001, 12, 31), date.withDate(2002, 1, 1), date.withDate(2002, 1, 2), date.withDate(2002, 1, 3), date.withDate(2002, 5, 5), date .withDate(2003, 3, 3)); TimeSeriesSlicer split = new FullyMemorizedSlicer(series, period); assertEquals(3, split.getSlices()); assertEquals(0, split.getSlice(0).getBegin()); assertEquals(4, split.getSlice(0).getEnd()); assertEquals(0, split.getSlice(1).getBegin()); assertEquals(9, split.getSlice(1).getEnd()); assertEquals(0, split.getSlice(2).getBegin()); assertEquals(10, split.getSlice(2).getEnd()); } @Test public void testSplitByYearBeginingInJulyOverridingPeriodBeginTo1of1of2000() { Period period = new Period().withYears(1); series = new SampleTimeSeries(date.withDate(2000, 7, 1), date.withDate(2000, 8, 1), date.withDate(2000, 9, 15), date.withDate(2001, 1, 1), date.withDate(2001, 1, 3), date.withDate(2001, 12, 31), date.withDate(2002, 1, 1), date.withDate(2002, 1, 2), date.withDate(2002, 1, 3), date.withDate(2002, 5, 5), date .withDate(2003, 3, 3)); TimeSeriesSlicer split = new FullyMemorizedSlicer(series, period, date.withDate(2000, 1, 1)); assertEquals(4, split.getSlices()); assertEquals(0, split.getSlice(0).getBegin()); assertEquals(2, split.getSlice(0).getEnd()); assertEquals(0, split.getSlice(1).getBegin()); assertEquals(5, split.getSlice(1).getEnd()); assertEquals(0, split.getSlice(2).getBegin()); assertEquals(9, split.getSlice(2).getEnd()); assertEquals(0, split.getSlice(3).getBegin()); assertEquals(10, split.getSlice(3).getEnd()); } @Test public void testSplitByHour() { Period period = new Period().withHours(1); DateTime openTime = new DateTime(0).withTime(10, 0, 0, 0); series = new SampleTimeSeries(openTime, openTime.plusMinutes(1), openTime.plusMinutes(2), openTime .plusMinutes(10), openTime.plusMinutes(15), openTime.plusMinutes(25), openTime.plusHours(1), openTime .plusHours(2), openTime.plusHours(7), openTime.plusHours(10).plusMinutes(5), openTime.plusHours(10) .plusMinutes(10), openTime.plusHours(10).plusMinutes(20), openTime.plusHours(10).plusMinutes(30)); TimeSeriesSlicer split = new FullyMemorizedSlicer(series, period); assertEquals(5, split.getSlices()); assertEquals(0, split.getSlice(0).getBegin()); assertEquals(5, split.getSlice(0).getEnd()); assertEquals(0, split.getSlice(1).getBegin()); assertEquals(6, split.getSlice(1).getEnd()); assertEquals(0, split.getSlice(2).getBegin()); assertEquals(7, split.getSlice(2).getEnd()); assertEquals(0, split.getSlice(3).getBegin()); assertEquals(8, split.getSlice(3).getEnd()); assertEquals(0, split.getSlice(4).getBegin()); assertEquals(12, split.getSlice(4).getEnd()); } @Test public void testMemorizedSlicer() { Period period = new Period().withYears(1); series = new SampleTimeSeries(date.withDate(2000, 7, 1), date.withDate(2000, 8, 1), date.withDate(2000, 9, 15), date.withDate(2001, 1, 1), date.withDate(2001, 1, 3), date.withDate(2001, 12, 31), date.withDate(2002, 1, 1), date.withDate(2002, 1, 2), date.withDate(2002, 1, 3), date.withDate(2002, 5, 5), date .withDate(2003, 3, 3)); TimeSeriesSlicer split = new FullyMemorizedSlicer(series, period, date.withDate(2000, 1, 1)); assertEquals(4, split.getSlices()); assertEquals(0, split.getSlice(0).getBegin()); assertEquals(2, split.getSlice(0).getEnd()); assertEquals(0, split.getSlice(1).getBegin()); assertEquals(5, split.getSlice(1).getEnd()); assertEquals(0, split.getSlice(2).getBegin()); assertEquals(9, split.getSlice(2).getEnd()); assertEquals(0, split.getSlice(3).getBegin()); assertEquals(10, split.getSlice(3).getEnd()); } } --- NEW FILE: PartialMemorizesSlicerTest.java --- package net.sf.tail.series; import static org.junit.Assert.assertEquals; import net.sf.tail.TimeSeriesSlicer; import net.sf.tail.sample.SampleTimeSeries; import org.joda.time.DateTime; import org.joda.time.Period; import org.junit.Before; import org.junit.Test; public class PartialMemorizesSlicerTest { private SampleTimeSeries series; private DateTime date; @Before public void setUp() throws Exception { this.date = new DateTime(0); } @Test public void testApllyForRegularSlicer(){ series = new SampleTimeSeries(date.withYear(2000), date.withYear(2001), date.withYear(2002), date .withYear(2003), date.withYear(2004)); Period period = new Period().withYears(1); PartialMemorizedSlicer slicer = new PartialMemorizedSlicer(series, period, 1); assertEquals(0, slicer.getSlice(0).getBegin()); assertEquals(1, slicer.getSlice(1).getBegin()); assertEquals(2, slicer.getSlice(2).getBegin()); assertEquals(3, slicer.getSlice(3).getBegin()); assertEquals(4, slicer.getSlice(4).getBegin()); } @Test public void testApllyForPartialMemorizedSlicer(){ series = new SampleTimeSeries(date.withYear(2000), date.withYear(2001), date.withYear(2002), date .withYear(2003), date.withYear(2004)); Period period = new Period().withYears(1); PartialMemorizedSlicer slicer = new PartialMemorizedSlicer(series, period, 3); assertEquals(0, slicer.getSlice(0).getBegin()); assertEquals(0, slicer.getSlice(0).getEnd()); assertEquals(0, slicer.getSlice(1).getBegin()); assertEquals(1, slicer.getSlice(1).getEnd()); assertEquals(0, slicer.getSlice(2).getBegin()); assertEquals(2, slicer.getSlice(2).getEnd()); assertEquals(1, slicer.getSlice(3).getBegin()); assertEquals(3, slicer.getSlice(3).getEnd()); assertEquals(2, slicer.getSlice(4).getBegin()); assertEquals(4, slicer.getSlice(4).getEnd()); } @Test public void testApllyForFullMemorizedSlicer(){ series = new SampleTimeSeries(date.withYear(2000), date.withYear(2001), date.withYear(2002), date .withYear(2003), date.withYear(2004)); Period period = new Period().withYears(1); PartialMemorizedSlicer slicer = new PartialMemorizedSlicer(series, period, series.getSize()); assertEquals(0, slicer.getSlice(0).getBegin()); assertEquals(0, slicer.getSlice(0).getEnd()); assertEquals(0, slicer.getSlice(1).getBegin()); assertEquals(1, slicer.getSlice(1).getEnd()); assertEquals(0, slicer.getSlice(2).getBegin()); assertEquals(2, slicer.getSlice(2).getEnd()); assertEquals(0, slicer.getSlice(3).getBegin()); assertEquals(3, slicer.getSlice(3).getEnd()); assertEquals(0, slicer.getSlice(4).getBegin()); assertEquals(4, slicer.getSlice(4).getEnd()); } //TODO @Test public void testApllyForSeries(){ series = new SampleTimeSeries(date.withYear(2000), date.withYear(2001), date.withYear(2002), date .withYear(2003), date.withYear(2004)); Period period = new Period().withYears(1); TimeSeriesSlicer slicer = new PartialMemorizedSlicer(series, period, 3); TimeSeriesSlicer newSlicer = slicer.applyForSeries(series); assertEquals(slicer, newSlicer); series = new SampleTimeSeries(date.withYear(2000), date.withYear(2000), date.withYear(2000), date .withYear(2001), date.withYear(2001), date.withYear(2001), date.withYear(2002), date.withYear(2002), date.withYear(2002), date.withYear(2002), date.withYear(2003)); newSlicer = slicer.applyForSeries(series); assertEquals(4, newSlicer.getSlices()); assertEquals(0, newSlicer.getSlice(0).getBegin()); assertEquals(2, newSlicer.getSlice(0).getEnd()); assertEquals(0, newSlicer.getSlice(1).getBegin()); assertEquals(5, newSlicer.getSlice(1).getEnd()); assertEquals(0, newSlicer.getSlice(2).getBegin()); assertEquals(9, newSlicer.getSlice(2).getEnd()); assertEquals(3, newSlicer.getSlice(3).getBegin()); assertEquals(10, newSlicer.getSlice(3).getEnd()); } @Test public void testSplitByYearOneDatePerYear() { series = new SampleTimeSeries(date.withYear(2000), date.withYear(2001), date.withYear(2002), date .withYear(2003), date.withYear(2004)); Period period = new Period().withYears(1); TimeSeriesSlicer split = new PartialMemorizedSlicer(series, period, 3); assertEquals(5, split.getSlices()); assertEquals(0, split.getSlice(0).getBegin()); assertEquals(0, split.getSlice(0).getEnd()); assertEquals(0, split.getSlice(1).getBegin()); assertEquals(1, split.getSlice(1).getEnd()); assertEquals(0, split.getSlice(2).getBegin()); assertEquals(2, split.getSlice(2).getEnd()); assertEquals(1, split.getSlice(3).getBegin()); assertEquals(3, split.getSlice(3).getEnd()); assertEquals(2, split.getSlice(4).getBegin()); assertEquals(4, split.getSlice(4).getEnd()); } @Test public void testSplitByYearForcingJuly() { Period period = new Period().withYears(1); series = new SampleTimeSeries(date.withDate(2000, 1, 1), date.withDate(2000, 2, 1), date.withDate(2000, 3, 1), date.withDate(2001, 1, 1), date.withDate(2001, 2, 1), date.withDate(2001, 12, 12), date.withDate(2002, 1, 1), date.withDate(2002, 2, 1), date.withDate(2002, 3, 1), date.withDate(2002, 5, 1), date .withDate(2003, 3, 1)); TimeSeriesSlicer split = new PartialMemorizedSlicer(series, period, date.withYear(2000).withMonthOfYear(7), 2); assertEquals(3, split.getSlices()); assertEquals(3, split.getSlice(0).getBegin()); assertEquals(4, split.getSlice(0).getEnd()); assertEquals(3, split.getSlice(1).getBegin()); assertEquals(9, split.getSlice(1).getEnd()); assertEquals(5, split.getSlice(2).getBegin()); assertEquals(10, split.getSlice(2).getEnd()); } @Test public void testSplitByYearWithHolesBetweenSlices() { series = new SampleTimeSeries(date.withYear(2000), date.withYear(2000), date.withYear(2000), date .withYear(2001), date.withYear(2001), date.withYear(2001), date.withYear(2002), date.withYear(2002), date.withYear(2002), date.withYear(2002), date.withYear(2005), date.withYear(2005)); Period period = new Period().withYears(1); TimeSeriesSlicer split = new PartialMemorizedSlicer(series, period, 3); assertEquals(4, split.getSlices()); assertEquals(0, split.getSlice(0).getBegin()); assertEquals(2, split.getSlice(0).getEnd()); assertEquals(0, split.getSlice(1).getBegin()); assertEquals(5, split.getSlice(1).getEnd()); assertEquals(0, split.getSlice(2).getBegin()); assertEquals(9, split.getSlice(2).getEnd()); assertEquals(3, split.getSlice(3).getBegin()); assertEquals(11, split.getSlice(3).getEnd()); } @Test public void testSplitByYearBeginningInJuly() { Period period = new Period().withYears(1); series = new SampleTimeSeries(date.withDate(2000, 7, 1), date.withDate(2000, 8, 1), date.withDate(2000, 9, 15), date.withDate(2001, 1, 1), date.withDate(2001, 1, 3), date.withDate(2001, 12, 31), date.withDate(2002, 1, 1), date.withDate(2002, 1, 2), date.withDate(2002, 1, 3), date.withDate(2002, 5, 5), date .withDate(2003, 3, 3)); TimeSeriesSlicer split = new PartialMemorizedSlicer(series, period, 2); assertEquals(3, split.getSlices()); assertEquals(0, split.getSlice(0).getBegin()); assertEquals(4, split.getSlice(0).getEnd()); assertEquals(0, split.getSlice(1).getBegin()); assertEquals(9, split.getSlice(1).getEnd()); assertEquals(5, split.getSlice(2).getBegin()); assertEquals(10, split.getSlice(2).getEnd()); } @Test public void testSplitByYearBeginingInJulyOverridingPeriodBeginTo1of1of2000() { Period period = new Period().withYears(1); series = new SampleTimeSeries(date.withDate(2000, 7, 1), date.withDate(2000, 8, 1), date.withDate(2000, 9, 15), date.withDate(2001, 1, 1), date.withDate(2001, 1, 3), date.withDate(2001, 12, 31), date.withDate(2002, 1, 1), date.withDate(2002, 1, 2), date.withDate(2002, 1, 3), date.withDate(2002, 5, 5), date .withDate(2003, 3, 3)); TimeSeriesSlicer split = new PartialMemorizedSlicer(series, period, date.withDate(2000, 1, 1), 3); assertEquals(4, split.getSlices()); assertEquals(0, split.getSlice(0).getBegin()); assertEquals(2, split.getSlice(0).getEnd()); assertEquals(0, split.getSlice(1).getBegin()); assertEquals(5, split.getSlice(1).getEnd()); assertEquals(0, split.getSlice(2).getBegin()); assertEquals(9, split.getSlice(2).getEnd()); assertEquals(3, split.getSlice(3).getBegin()); assertEquals(10, split.getSlice(3).getEnd()); } @Test public void testSplitByHour() { Period period = new Period().withHours(1); DateTime openTime = new DateTime(0).withTime(10, 0, 0, 0); series = new SampleTimeSeries(openTime, openTime.plusMinutes(1), openTime.plusMinutes(2), openTime .plusMinutes(10), openTime.plusMinutes(15), openTime.plusMinutes(25), openTime.plusHours(1), openTime .plusHours(2), openTime.plusHours(7), openTime.plusHours(10).plusMinutes(5), openTime.plusHours(10) .plusMinutes(10), openTime.plusHours(10).plusMinutes(20), openTime.plusHours(10).plusMinutes(30)); TimeSeriesSlicer split = new PartialMemorizedSlicer(series, period, 3); assertEquals(5, split.getSlices()); assertEquals(0, split.getSlice(0).getBegin()); assertEquals(5, split.getSlice(0).getEnd()); assertEquals(0, split.getSlice(1).getBegin()); assertEquals(6, split.getSlice(1).getEnd()); assertEquals(0, split.getSlice(2).getBegin()); assertEquals(7, split.getSlice(2).getEnd()); assertEquals(6, split.getSlice(3).getBegin()); assertEquals(8, split.getSlice(3).getEnd()); assertEquals(7, split.getSlice(4).getBegin()); assertEquals(12, split.getSlice(4).getEnd()); } } |
|
From: xanaot <xa...@us...> - 2007-10-03 22:56:46
|
Update of /cvsroot/tail/Tail/src/test/net/sf/tail/io In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv12544/src/test/net/sf/tail/io Modified Files: SerializerTest.java Log Message: Refatoração dos Slicer Index: SerializerTest.java =================================================================== RCS file: /cvsroot/tail/Tail/src/test/net/sf/tail/io/SerializerTest.java,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** SerializerTest.java 3 Oct 2007 18:58:32 -0000 1.7 --- SerializerTest.java 3 Oct 2007 22:56:47 -0000 1.8 *************** *** 11,17 **** import net.sf.tail.Indicator; import net.sf.tail.OperationType; - import net.sf.tail.SlicerType; import net.sf.tail.Strategy; import net.sf.tail.TimeSeries; import net.sf.tail.analysis.Stock; import net.sf.tail.analysis.StockAnalysis; --- 11,17 ---- import net.sf.tail.Indicator; import net.sf.tail.OperationType; import net.sf.tail.Strategy; import net.sf.tail.TimeSeries; + import net.sf.tail.TimeSeriesSlicer; import net.sf.tail.analysis.Stock; import net.sf.tail.analysis.StockAnalysis; *************** *** 28,32 **** import net.sf.tail.runner.HistoryRunner; import net.sf.tail.sample.SampleTimeSeries; ! import net.sf.tail.series.SlicerByTimePeriod; import net.sf.tail.strategy.IndicatorCrossedIndicatorStrategy; --- 28,32 ---- import net.sf.tail.runner.HistoryRunner; import net.sf.tail.sample.SampleTimeSeries; ! import net.sf.tail.series.FullyMemorizedSlicer; import net.sf.tail.strategy.IndicatorCrossedIndicatorStrategy; *************** *** 44,48 **** private TotalProfitCriterion applyedCriterion; ! private SlicerByTimePeriod slicer; private HistoryRunner runner; --- 44,48 ---- private TotalProfitCriterion applyedCriterion; ! private TimeSeriesSlicer slicer; private HistoryRunner runner; *************** *** 56,65 **** runner = new HistoryRunner(OperationType.BUY); applyedCriterion = new TotalProfitCriterion(); ! slicer = new SlicerByTimePeriod(timeSeries, new Period().withDays(1), SlicerType.MEMORIZED); } @Test public void testStockSerializer() throws FileNotFoundException, IOException { ! Stock stock = new Stock("test", "BaseBovespa/15min/ambv4.csv",new CedroTimeSeriesLoader()); StockSerializer serializer = new StockSerializer(); String serializedStock = serializer.toXML(stock); --- 56,65 ---- runner = new HistoryRunner(OperationType.BUY); applyedCriterion = new TotalProfitCriterion(); ! slicer = new FullyMemorizedSlicer(timeSeries, new Period().withDays(1)); } @Test public void testStockSerializer() throws FileNotFoundException, IOException { ! Stock stock = new Stock("test", "BaseBovespa/15min/ambv4.csv", new CedroTimeSeriesLoader()); StockSerializer serializer = new StockSerializer(); String serializedStock = serializer.toXML(stock); *************** *** 72,76 **** public void testStockAnalysisSerializer() throws FileNotFoundException, IOException { ! Stock stock = new Stock("test", "BaseBovespa/15min/ambv4.csv",new CedroTimeSeriesLoader()); Evaluator evaluator = new BestStrategyEvaluator(runner); --- 72,76 ---- public void testStockAnalysisSerializer() throws FileNotFoundException, IOException { ! Stock stock = new Stock("test", "BaseBovespa/15min/ambv4.csv", new CedroTimeSeriesLoader()); Evaluator evaluator = new BestStrategyEvaluator(runner); *************** *** 90,94 **** } ! stockAnalysis.createReport("",strategies); strategies = new HashSet<Strategy>(); --- 90,94 ---- } ! stockAnalysis.createReport("", strategies); strategies = new HashSet<Strategy>(); *************** *** 101,105 **** } ! stockAnalysis.createReport("",strategies); strategies = new HashSet<Strategy>(); --- 101,105 ---- } ! stockAnalysis.createReport("", strategies); strategies = new HashSet<Strategy>(); *************** *** 112,116 **** } ! stockAnalysis.createReport("",strategies); StockAnalysisSerializer serializer = new StockAnalysisSerializer(); --- 112,116 ---- } ! stockAnalysis.createReport("", strategies); StockAnalysisSerializer serializer = new StockAnalysisSerializer(); *************** *** 121,125 **** assertEquals(stockAnalysis, afterStockAnalysis); assertEquals(stockAnalysis.getStock().getSeries(), afterStockAnalysis.getStock().getSeries()); ! } } --- 121,125 ---- assertEquals(stockAnalysis, afterStockAnalysis); assertEquals(stockAnalysis.getStock().getSeries(), afterStockAnalysis.getStock().getSeries()); ! } } |
|
From: xanaot <xa...@us...> - 2007-10-03 22:56:46
|
Update of /cvsroot/tail/Tail/src/test/net/sf/tail/report/html In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv12544/src/test/net/sf/tail/report/html Modified Files: CompleteHtmlGeneratorExecutor.java CompleteHtmlGeneratorTest.java Log Message: Refatoração dos Slicer Index: CompleteHtmlGeneratorTest.java =================================================================== RCS file: /cvsroot/tail/Tail/src/test/net/sf/tail/report/html/CompleteHtmlGeneratorTest.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** CompleteHtmlGeneratorTest.java 1 Oct 2007 17:11:16 -0000 1.3 --- CompleteHtmlGeneratorTest.java 3 Oct 2007 22:56:47 -0000 1.4 *************** *** 10,14 **** import net.sf.tail.Operation; import net.sf.tail.OperationType; ! import net.sf.tail.SlicerType; import net.sf.tail.Trade; import net.sf.tail.analysis.criteria.TotalProfitCriterion; --- 10,14 ---- import net.sf.tail.Operation; import net.sf.tail.OperationType; ! import net.sf.tail.TimeSeriesSlicer; import net.sf.tail.Trade; import net.sf.tail.analysis.criteria.TotalProfitCriterion; *************** *** 17,21 **** import net.sf.tail.runner.HistoryRunner; import net.sf.tail.sample.SampleTimeSeries; ! import net.sf.tail.series.SlicerByTimePeriod; import net.sf.tail.strategy.FakeStrategy; --- 17,21 ---- import net.sf.tail.runner.HistoryRunner; import net.sf.tail.sample.SampleTimeSeries; ! import net.sf.tail.series.FullyMemorizedSlicer; import net.sf.tail.strategy.FakeStrategy; *************** *** 47,51 **** new TotalProfitCriterion(), trades, new HistoryRunner(OperationType.BUY)); decisions.add(decision); ! SlicerByTimePeriod slicer = new SlicerByTimePeriod(series, period, SlicerType.MEMORIZED); report = new Report(new TotalProfitCriterion(), slicer, decisions); --- 47,51 ---- new TotalProfitCriterion(), trades, new HistoryRunner(OperationType.BUY)); decisions.add(decision); ! TimeSeriesSlicer slicer = new FullyMemorizedSlicer(series, period); report = new Report(new TotalProfitCriterion(), slicer, decisions); Index: CompleteHtmlGeneratorExecutor.java =================================================================== RCS file: /cvsroot/tail/Tail/src/test/net/sf/tail/report/html/CompleteHtmlGeneratorExecutor.java,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** CompleteHtmlGeneratorExecutor.java 3 Oct 2007 19:59:55 -0000 1.4 --- CompleteHtmlGeneratorExecutor.java 3 Oct 2007 22:56:47 -0000 1.5 *************** *** 12,16 **** import net.sf.tail.Indicator; import net.sf.tail.OperationType; - import net.sf.tail.SlicerType; import net.sf.tail.Strategy; import net.sf.tail.TimeSeries; --- 12,15 ---- *************** *** 30,34 **** import net.sf.tail.report.Report; import net.sf.tail.runner.HistoryRunner; ! import net.sf.tail.series.SlicerByTimePeriod; import net.sf.tail.strategy.IndicatorCrossedIndicatorStrategy; --- 29,33 ---- import net.sf.tail.report.Report; import net.sf.tail.runner.HistoryRunner; ! import net.sf.tail.series.FullyMemorizedSlicer; import net.sf.tail.strategy.IndicatorCrossedIndicatorStrategy; *************** *** 42,46 **** TimeSeries timeSeries = null; Set<Strategy> strategies = new HashSet<Strategy>(); ! try { timeSeries = ctsl.load(new FileInputStream("BaseBovespa/diario/petr4Dia.csv"), "Petrobras (petr4)"); --- 41,45 ---- TimeSeries timeSeries = null; Set<Strategy> strategies = new HashSet<Strategy>(); ! try { timeSeries = ctsl.load(new FileInputStream("BaseBovespa/diario/petr4Dia.csv"), "Petrobras (petr4)"); *************** *** 53,58 **** Walker w = new WalkForward(new BestStrategyEvaluator(new HistoryRunner(OperationType.BUY))); Indicator<Double> close = new ClosePriceIndicator(timeSeries); ! ! for (int i = 4; i < 20; i++) { Indicator<Double> tracker = new SMAIndicator(close, i); --- 52,56 ---- Walker w = new WalkForward(new BestStrategyEvaluator(new HistoryRunner(OperationType.BUY))); Indicator<Double> close = new ClosePriceIndicator(timeSeries); ! for (int i = 4; i < 20; i++) { Indicator<Double> tracker = new SMAIndicator(close, i); *************** *** 60,71 **** strategies.add(strategy); } ! Indicator<Double> tracker = new ParabolicSarIndicator(timeSeries); Strategy strategy = new IndicatorCrossedIndicatorStrategy(close, tracker); strategies.add(strategy); ! Report r = w.walk(strategies, new SlicerByTimePeriod(timeSeries, new Period().withMonths(10), new DateTime(2000, 1, 1, 0, 0, 0, 0), ! SlicerType.MEMORIZED), new TotalProfitCriterion()); ! List<AnalysisCriterion> criteria = new ArrayList<AnalysisCriterion>(); criteria.add(new BuyAndHoldCriterion()); --- 58,69 ---- strategies.add(strategy); } ! Indicator<Double> tracker = new ParabolicSarIndicator(timeSeries); Strategy strategy = new IndicatorCrossedIndicatorStrategy(close, tracker); strategies.add(strategy); ! Report r = w.walk(strategies, new FullyMemorizedSlicer(timeSeries, new Period().withMonths(10), new DateTime( ! 2000, 1, 1, 0, 0, 0, 0)), new TotalProfitCriterion()); ! List<AnalysisCriterion> criteria = new ArrayList<AnalysisCriterion>(); criteria.add(new BuyAndHoldCriterion()); *************** *** 74,82 **** criteria.add(new NumberOfTicksCriterion()); criteria.add(new VersusBuyAndHoldCriterion(new TotalProfitCriterion())); ! ! CompleteHtmlGenerator complete = new CompleteHtmlGenerator(r, criteria, new Period().withMonths(1)); ! complete.generate(); ! } --- 72,79 ---- criteria.add(new NumberOfTicksCriterion()); criteria.add(new VersusBuyAndHoldCriterion(new TotalProfitCriterion())); ! CompleteHtmlGenerator complete = new CompleteHtmlGenerator(r, criteria, new Period().withMonths(1)); ! complete.generate(); ! } *************** *** 84,88 **** CompleteHtmlGeneratorExecutor complete = new CompleteHtmlGeneratorExecutor(); try { ! complete.testEMAComplete(); } catch (IOException e) { e.printStackTrace(); --- 81,85 ---- CompleteHtmlGeneratorExecutor complete = new CompleteHtmlGeneratorExecutor(); try { ! complete.testEMAComplete(); } catch (IOException e) { e.printStackTrace(); |
|
From: xanaot <xa...@us...> - 2007-10-03 22:56:46
|
Update of /cvsroot/tail/Tail/src/test/net/sf/tail/report/xls In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv12544/src/test/net/sf/tail/report/xls Modified Files: CompleteXLSGeneratorTest.java CompleteXlsGeneratorExecutor.java Log Message: Refatoração dos Slicer Index: CompleteXlsGeneratorExecutor.java =================================================================== RCS file: /cvsroot/tail/Tail/src/test/net/sf/tail/report/xls/CompleteXlsGeneratorExecutor.java,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** CompleteXlsGeneratorExecutor.java 3 Oct 2007 19:59:55 -0000 1.5 --- CompleteXlsGeneratorExecutor.java 3 Oct 2007 22:56:47 -0000 1.6 *************** *** 13,17 **** import net.sf.tail.Indicator; import net.sf.tail.OperationType; - import net.sf.tail.SlicerType; import net.sf.tail.Strategy; import net.sf.tail.TimeSeries; --- 13,16 ---- *************** *** 31,35 **** import net.sf.tail.report.Report; import net.sf.tail.runner.HistoryRunner; ! import net.sf.tail.series.SlicerByTimePeriod; import net.sf.tail.strategy.IndicatorCrossedIndicatorStrategy; --- 30,34 ---- import net.sf.tail.report.Report; import net.sf.tail.runner.HistoryRunner; ! import net.sf.tail.series.FullyMemorizedSlicer; import net.sf.tail.strategy.IndicatorCrossedIndicatorStrategy; *************** *** 44,48 **** TimeSeries timeSeries = null; Set<Strategy> strategies = new HashSet<Strategy>(); ! try { timeSeries = ctsl.load(new FileInputStream("BaseBovespa/diario/petr4Dia.csv"), "Petrobras (petr4)"); --- 43,47 ---- TimeSeries timeSeries = null; Set<Strategy> strategies = new HashSet<Strategy>(); ! try { timeSeries = ctsl.load(new FileInputStream("BaseBovespa/diario/petr4Dia.csv"), "Petrobras (petr4)"); *************** *** 55,66 **** Walker w = new WalkForward(new BestStrategyEvaluator(new HistoryRunner(OperationType.BUY))); Indicator<Double> close = new ClosePriceIndicator(timeSeries); ! ! ! // for (int i = 4; i < 60; i++) { ! // Indicator<Double> tracker = new EMAIndicator(close, i); ! // Strategy strategy = new IndicatorCrossedIndicatorStrategy(close, tracker); ! // strategies.add(strategy); ! // } ! for (int i = 4; i < 20; i++) { Indicator<Double> tracker = new SMAIndicator(close, i); --- 54,65 ---- Walker w = new WalkForward(new BestStrategyEvaluator(new HistoryRunner(OperationType.BUY))); Indicator<Double> close = new ClosePriceIndicator(timeSeries); ! ! // for (int i = 4; i < 60; i++) { ! // Indicator<Double> tracker = new EMAIndicator(close, i); ! // Strategy strategy = new IndicatorCrossedIndicatorStrategy(close, ! // tracker); ! // strategies.add(strategy); ! // } ! for (int i = 4; i < 20; i++) { Indicator<Double> tracker = new SMAIndicator(close, i); *************** *** 68,84 **** strategies.add(strategy); } ! Indicator<Double> tracker = new ParabolicSarIndicator(timeSeries); Strategy strategy = new IndicatorCrossedIndicatorStrategy(close, tracker); strategies.add(strategy); - - ! Report r = w.walk(strategies, new SlicerByTimePeriod(timeSeries, new Period().withMonths(10), new DateTime(2000, 1, 1, 0, 0, 0, 0), ! SlicerType.MEMORIZED), new TotalProfitCriterion()); ! CompleteXlsGenerator xls = new CompleteXlsGenerator(); HSSFWorkbook workbook = new HSSFWorkbook(); ! List<AnalysisCriterion> criteria = new ArrayList<AnalysisCriterion>(); criteria.add(new BuyAndHoldCriterion()); --- 67,81 ---- strategies.add(strategy); } ! Indicator<Double> tracker = new ParabolicSarIndicator(timeSeries); Strategy strategy = new IndicatorCrossedIndicatorStrategy(close, tracker); strategies.add(strategy); ! Report r = w.walk(strategies, new FullyMemorizedSlicer(timeSeries, new Period().withMonths(10), new DateTime( ! 2000, 1, 1, 0, 0, 0, 0)), new TotalProfitCriterion()); ! CompleteXlsGenerator xls = new CompleteXlsGenerator(); HSSFWorkbook workbook = new HSSFWorkbook(); ! List<AnalysisCriterion> criteria = new ArrayList<AnalysisCriterion>(); criteria.add(new BuyAndHoldCriterion()); *************** *** 87,96 **** criteria.add(new NumberOfTicksCriterion()); criteria.add(new VersusBuyAndHoldCriterion(new TotalProfitCriterion())); ! workbook = xls.generate(r, criteria, new Period().withMonths(10)); ! FileOutputStream fileOut = new FileOutputStream("report.xls"); workbook.write(fileOut); ! fileOut.close(); } --- 84,93 ---- criteria.add(new NumberOfTicksCriterion()); criteria.add(new VersusBuyAndHoldCriterion(new TotalProfitCriterion())); ! workbook = xls.generate(r, criteria, new Period().withMonths(10)); ! FileOutputStream fileOut = new FileOutputStream("report.xls"); workbook.write(fileOut); ! fileOut.close(); } *************** *** 98,102 **** CompleteXlsGeneratorExecutor complete = new CompleteXlsGeneratorExecutor(); try { ! complete.testEMAComplete(); } catch (IOException e) { e.printStackTrace(); --- 95,99 ---- CompleteXlsGeneratorExecutor complete = new CompleteXlsGeneratorExecutor(); try { ! complete.testEMAComplete(); } catch (IOException e) { e.printStackTrace(); Index: CompleteXLSGeneratorTest.java =================================================================== RCS file: /cvsroot/tail/Tail/src/test/net/sf/tail/report/xls/CompleteXLSGeneratorTest.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** CompleteXLSGeneratorTest.java 26 Sep 2007 21:04:29 -0000 1.2 --- CompleteXLSGeneratorTest.java 3 Oct 2007 22:56:47 -0000 1.3 *************** *** 9,13 **** import net.sf.tail.Operation; import net.sf.tail.OperationType; ! import net.sf.tail.SlicerType; import net.sf.tail.Trade; import net.sf.tail.analysis.criteria.TotalProfitCriterion; --- 9,13 ---- import net.sf.tail.Operation; import net.sf.tail.OperationType; ! import net.sf.tail.TimeSeriesSlicer; import net.sf.tail.Trade; import net.sf.tail.analysis.criteria.TotalProfitCriterion; *************** *** 16,20 **** import net.sf.tail.runner.HistoryRunner; import net.sf.tail.sample.SampleTimeSeries; ! import net.sf.tail.series.SlicerByTimePeriod; import net.sf.tail.strategy.FakeStrategy; --- 16,20 ---- import net.sf.tail.runner.HistoryRunner; import net.sf.tail.sample.SampleTimeSeries; ! import net.sf.tail.series.FullyMemorizedSlicer; import net.sf.tail.strategy.FakeStrategy; *************** *** 47,51 **** new TotalProfitCriterion(), trades, new HistoryRunner(OperationType.BUY)); decisions.add(decision); ! SlicerByTimePeriod slicer = new SlicerByTimePeriod(series, period, SlicerType.MEMORIZED); report = new Report(new TotalProfitCriterion(), slicer, decisions); --- 47,51 ---- new TotalProfitCriterion(), trades, new HistoryRunner(OperationType.BUY)); decisions.add(decision); ! TimeSeriesSlicer slicer = new FullyMemorizedSlicer(series, period); report = new Report(new TotalProfitCriterion(), slicer, decisions); |
|
From: xanaot <xa...@us...> - 2007-10-03 22:56:45
|
Update of /cvsroot/tail/Tail/src/test/net/sf/tail/analysis/walk In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv12544/src/test/net/sf/tail/analysis/walk Modified Files: WalkForwardTest.java Log Message: Refatoração dos Slicer Index: WalkForwardTest.java =================================================================== RCS file: /cvsroot/tail/Tail/src/test/net/sf/tail/analysis/walk/WalkForwardTest.java,v retrieving revision 1.18 retrieving revision 1.19 diff -C2 -d -r1.18 -r1.19 *** WalkForwardTest.java 3 Oct 2007 17:47:00 -0000 1.18 --- WalkForwardTest.java 3 Oct 2007 22:56:47 -0000 1.19 *************** *** 11,15 **** import net.sf.tail.Operation; import net.sf.tail.OperationType; - import net.sf.tail.SlicerType; import net.sf.tail.Strategy; import net.sf.tail.TimeSeries; --- 11,14 ---- *************** *** 21,25 **** import net.sf.tail.runner.HistoryRunner; import net.sf.tail.sample.SampleTimeSeries; ! import net.sf.tail.series.SlicerByTimePeriod; import net.sf.tail.strategy.FakeStrategy; --- 20,24 ---- import net.sf.tail.runner.HistoryRunner; import net.sf.tail.sample.SampleTimeSeries; ! import net.sf.tail.series.RegularSlicer; import net.sf.tail.strategy.FakeStrategy; *************** *** 81,85 **** Walker walk = new WalkForward(evaluator); Period period = new Period().withYears(1); ! TimeSeriesSlicer splittedSeries = new SlicerByTimePeriod(series, period, SlicerType.REGULAR); List<Decision> decisions = walk.walk(strategies, splittedSeries, criteria).getDecisions(); --- 80,84 ---- Walker walk = new WalkForward(evaluator); Period period = new Period().withYears(1); ! TimeSeriesSlicer splittedSeries = new RegularSlicer(series, period); List<Decision> decisions = walk.walk(strategies, splittedSeries, criteria).getDecisions(); |
|
From: xanaot <xa...@us...> - 2007-10-03 22:56:45
|
Update of /cvsroot/tail/Tail/src/java/net/sf/tail/analysis/walk In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv12544/src/java/net/sf/tail/analysis/walk Modified Files: WalkForward.java Log Message: Refatoração dos Slicer Index: WalkForward.java =================================================================== RCS file: /cvsroot/tail/Tail/src/java/net/sf/tail/analysis/walk/WalkForward.java,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -d -r1.19 -r1.20 *** WalkForward.java 3 Oct 2007 17:46:59 -0000 1.19 --- WalkForward.java 3 Oct 2007 22:56:47 -0000 1.20 *************** *** 5,13 **** import java.util.Set; - import org.apache.log4j.Logger; - import net.sf.tail.AnalysisCriterion; import net.sf.tail.Evaluator; - import net.sf.tail.SlicerType; import net.sf.tail.Strategy; import net.sf.tail.TimeSeries; --- 5,10 ---- *************** *** 16,19 **** --- 13,19 ---- import net.sf.tail.analysis.evaluator.Decision; import net.sf.tail.report.Report; + import net.sf.tail.series.RegularSlicer; + + import org.apache.log4j.Logger; public class WalkForward implements Walker { *************** *** 31,36 **** public Report walk(Set<Strategy> strategies, TimeSeriesSlicer slicer, AnalysisCriterion criterion) { ! TimeSeriesSlicer regularSlicer = slicer.applyForType(SlicerType.REGULAR); ! LOG.info("Running strategies"); List<Decision> decisions = new LinkedList<Decision>(); --- 31,36 ---- public Report walk(Set<Strategy> strategies, TimeSeriesSlicer slicer, AnalysisCriterion criterion) { ! TimeSeriesSlicer regularSlicer = new RegularSlicer(slicer.getSeries(), slicer.getPeriod(), slicer.getSlice(0).getTick(slicer.getSlice(0).getBegin()).getDate()); ! LOG.info("Running strategies"); List<Decision> decisions = new LinkedList<Decision>(); |
|
From: xanaot <xa...@us...> - 2007-10-03 22:56:45
|
Update of /cvsroot/tail/Tail/src/test/net/sf/tail/analysis In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv12544/src/test/net/sf/tail/analysis Modified Files: StockAnalysisTest.java Log Message: Refatoração dos Slicer Index: StockAnalysisTest.java =================================================================== RCS file: /cvsroot/tail/Tail/src/test/net/sf/tail/analysis/StockAnalysisTest.java,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** StockAnalysisTest.java 3 Oct 2007 18:58:32 -0000 1.5 --- StockAnalysisTest.java 3 Oct 2007 22:56:47 -0000 1.6 *************** *** 11,15 **** import net.sf.tail.OperationType; import net.sf.tail.Runner; - import net.sf.tail.SlicerType; import net.sf.tail.Strategy; import net.sf.tail.TimeSeries; --- 11,14 ---- *************** *** 22,26 **** import net.sf.tail.runner.HistoryRunner; import net.sf.tail.sample.SampleTimeSeries; ! import net.sf.tail.series.SlicerByTimePeriod; import net.sf.tail.strategy.FakeStrategy; --- 21,25 ---- import net.sf.tail.runner.HistoryRunner; import net.sf.tail.sample.SampleTimeSeries; ! import net.sf.tail.series.RegularSlicer; import net.sf.tail.strategy.FakeStrategy; *************** *** 40,44 **** private BestStrategyEvaluator evaluator; ! private SlicerByTimePeriod slicer; private HashSet<Strategy> strategies; --- 39,43 ---- private BestStrategyEvaluator evaluator; ! private RegularSlicer slicer; private HashSet<Strategy> strategies; *************** *** 51,55 **** public void setUp() throws Exception { this.stock = new Stock("Teste", "BaseBovespa/15min/ambv4.csv", new CedroTimeSeriesLoader()); ! this.applyedCriterion = new TotalProfitCriterion(); Period period = new Period().withYears(1); --- 50,54 ---- public void setUp() throws Exception { this.stock = new Stock("Teste", "BaseBovespa/15min/ambv4.csv", new CedroTimeSeriesLoader()); ! this.applyedCriterion = new TotalProfitCriterion(); Period period = new Period().withYears(1); *************** *** 60,64 **** date.withDate(2003, 3, 1)); ! slicer = new SlicerByTimePeriod(series, period, date.withYear(2000).withMonthOfYear(7), SlicerType.REGULAR); Runner runner = new HistoryRunner(OperationType.BUY); evaluator = new BestStrategyEvaluator(runner); --- 59,63 ---- date.withDate(2003, 3, 1)); ! slicer = new RegularSlicer(series, period, date.withYear(2000).withMonthOfYear(7)); Runner runner = new HistoryRunner(OperationType.BUY); evaluator = new BestStrategyEvaluator(runner); *************** *** 80,89 **** @Test public void testCreateReport() { ! assertEquals(report, stockAnalysis.createReport("",strategies)); } @Test public void testAddCriterionAndCriteria() { ! stockAnalysis.createReport("",strategies); stockAnalysis.addCriterion(new NumberOfTicksCriterion()); assertEquals(1, stockAnalysis.getAdditionalCriteria().size()); --- 79,88 ---- @Test public void testCreateReport() { ! assertEquals(report, stockAnalysis.createReport("", strategies)); } @Test public void testAddCriterionAndCriteria() { ! stockAnalysis.createReport("", strategies); stockAnalysis.addCriterion(new NumberOfTicksCriterion()); assertEquals(1, stockAnalysis.getAdditionalCriteria().size()); |