Update of /cvsroot/tail/Tail/src/test/net/sf/tail/report/xls
In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv6542/src/test/net/sf/tail/report/xls
Modified Files:
CompleteXlsGeneratorExecutor.java
Log Message:
Refatoracao no Generate xls
Index: CompleteXlsGeneratorExecutor.java
===================================================================
RCS file: /cvsroot/tail/Tail/src/test/net/sf/tail/report/xls/CompleteXlsGeneratorExecutor.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** CompleteXlsGeneratorExecutor.java 26 Sep 2007 20:51:44 -0000 1.2
--- CompleteXlsGeneratorExecutor.java 1 Oct 2007 23:47:04 -0000 1.3
***************
*** 3,10 ****
--- 3,14 ----
import java.io.FileInputStream;
import java.io.FileNotFoundException;
+ import java.io.FileOutputStream;
import java.io.IOException;
+ import java.util.ArrayList;
import java.util.HashSet;
+ import java.util.List;
import java.util.Set;
+ import net.sf.tail.AnalysisCriterion;
import net.sf.tail.Indicator;
import net.sf.tail.OperationType;
***************
*** 13,21 ****
import net.sf.tail.TimeSeries;
import net.sf.tail.Walker;
import net.sf.tail.analysis.criteria.TotalProfitCriterion;
import net.sf.tail.analysis.evaluator.BestStrategyEvaluator;
import net.sf.tail.analysis.walk.WalkForward;
import net.sf.tail.indicator.simple.ClosePriceIndicator;
! import net.sf.tail.indicator.tracker.EMAIndicator;
import net.sf.tail.io.reader.CedroTimeSeriesLoader;
import net.sf.tail.report.Report;
--- 17,31 ----
import net.sf.tail.TimeSeries;
import net.sf.tail.Walker;
+ import net.sf.tail.analysis.criteria.AverageProfitCriterion;
+ import net.sf.tail.analysis.criteria.BuyAndHoldCriterion;
+ import net.sf.tail.analysis.criteria.NumberOfTicksCriterion;
+ import net.sf.tail.analysis.criteria.RewardRiskRatioCriterion;
import net.sf.tail.analysis.criteria.TotalProfitCriterion;
+ import net.sf.tail.analysis.criteria.VersusBuyAndHoldCriterion;
import net.sf.tail.analysis.evaluator.BestStrategyEvaluator;
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;
import net.sf.tail.report.Report;
***************
*** 23,27 ****
--- 33,39 ----
import net.sf.tail.series.SlicerByTimePeriod;
import net.sf.tail.strategy.IndicatorCrossedIndicatorStrategy;
+ import net.sf.tail.strategy.IndicatorOverIndicatorStrategy;
+ import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.joda.time.Period;
***************
*** 34,38 ****
try {
! timeSeries = ctsl.load(new FileInputStream("BaseBovespa/15min/ambv4.csv"), "Ambev (ambv4)");
} catch (FileNotFoundException e) {
e.printStackTrace();
--- 46,50 ----
try {
! timeSeries = ctsl.load(new FileInputStream("BaseBovespa/diario/petr4Dia.csv"), "Ambev (ambv4)");
} catch (FileNotFoundException e) {
e.printStackTrace();
***************
*** 45,59 ****
for (int i = 4; i < 20; i++) {
! Indicator<Double> tracker = new EMAIndicator(close, i);
! Strategy strategy = new IndicatorCrossedIndicatorStrategy(close, tracker);
strategies.add(strategy);
}
! Report r = w.walk(strategies, new SlicerByTimePeriod(timeSeries, new Period().withMonths(1),
SlicerType.MEMORIZED), new TotalProfitCriterion());
CompleteXlsGenerator xls = new CompleteXlsGenerator();
! xls.generate(r, new Period().withMonths(1));
}
--- 57,95 ----
+ // 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);
! Strategy strategy = new IndicatorOverIndicatorStrategy(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 SlicerByTimePeriod(timeSeries, new Period().withMonths(10),
SlicerType.MEMORIZED), new TotalProfitCriterion());
CompleteXlsGenerator xls = new CompleteXlsGenerator();
! HSSFWorkbook workbook = new HSSFWorkbook();
!
! List<AnalysisCriterion> criteria = new ArrayList<AnalysisCriterion>();
! criteria.add(new BuyAndHoldCriterion());
! criteria.add(new RewardRiskRatioCriterion());
! criteria.add(new AverageProfitCriterion());
! criteria.add(new NumberOfTicksCriterion());
! criteria.add(new VersusBuyAndHoldCriterion());
!
! workbook = xls.generate(r, criteria, new Period().withMonths(10));
!
! FileOutputStream fileOut = new FileOutputStream("report.xls");
! workbook.write(fileOut);
! fileOut.close();
}
|