|
From: Thies <tg...@us...> - 2007-05-24 18:51:36
|
Update of /cvsroot/tail/Tail/src/java/net/sf/tail/strategy In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv4225/src/java/net/sf/tail/strategy Added Files: MinValueStarterStrategy.java Log Message: Estrategia de start --- NEW FILE: MinValueStarterStrategy.java --- package net.sf.tail.strategy; import net.sf.tail.Indicator; import net.sf.tail.Operation; import net.sf.tail.OperationType; import net.sf.tail.Strategy; /** * MinValueStopperStrategy baseia a compra em uma {@link Strategy} enviada como * parâmetro, registrando o valor do {@link Indicator} enviado como parâmetro no * mesmo Ãndice de compra, e baseia a venda nessa mesma {@link Strategy} desde * que o valor registrado do {@link Indicator} na compra não tenha um decréscimo * maior que loss % * */ public class MinValueStarterStrategy implements Strategy { private Strategy strategy; private Indicator<? extends Number> indicator; private double value; public MinValueStarterStrategy(Indicator<? extends Number> indicator, Strategy strategy, double value) { this.strategy = strategy; this.value = value; this.indicator = indicator; } public Operation shouldEnter(int index) { if (value < indicator.getValue(index).doubleValue()) { return new Operation(index, OperationType.BUY); } return strategy.shouldEnter(index); } public Operation shouldExit(Operation entry, int index) { return strategy.shouldExit(entry, index); } public Strategy getStrategy() { return strategy; } } |