|
From: Márcio V. d. S. <mv...@us...> - 2007-05-18 19:25:24
|
Update of /cvsroot/tail/Tail/src/java/net/sf/tail/runner In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv4018/src/java/net/sf/tail/runner Added Files: HistoryRunner.java Runner.java Log Message: começando fase 2 (Strategy, Operation e Runner) --- NEW FILE: HistoryRunner.java --- package net.sf.tail.runner; import java.util.ArrayList; import java.util.List; import net.sf.tail.Operation; import net.sf.tail.OperationType; import net.sf.tail.Strategy; import net.sf.tail.Trade; public class HistoryRunner implements Runner { private int seriesSize; public HistoryRunner(int seriesSize) { this.seriesSize = seriesSize; } public List<Trade> run(Strategy strategy) { List<Trade> trades = new ArrayList<Trade>(); Operation entry = null; Operation exit = null; for (int i = 0; i < seriesSize; i++) { entry = strategy.shouldEnter(i); if (entry != null) { for (i++; i < seriesSize; i++) { exit = strategy.shouldExit(entry, i); if (exit != null) { Trade t = new Trade(entry, exit); trades.add(t); } else if(i + 1 == seriesSize){ exit = new Operation(seriesSize, OperationType.SELL); Trade t = new Trade(entry, exit); trades.add(t); } } } } return trades; } public int getSeriesSize() { return seriesSize; } } --- NEW FILE: Runner.java --- package net.sf.tail.runner; import java.util.List; import net.sf.tail.Strategy; import net.sf.tail.Trade; public interface Runner { List<Trade> run(Strategy strategy); } |