Update of /cvsroot/tail/Tail/src/java/net/sf/tail/strategy
In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv5656/src/java/net/sf/tail/strategy
Modified Files:
MinValueStarterStrategy.java
Log Message:
Refatoração da estratégia MinValueStarterStrategy e seu teste
Index: MinValueStarterStrategy.java
===================================================================
RCS file: /cvsroot/tail/Tail/src/java/net/sf/tail/strategy/MinValueStarterStrategy.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** MinValueStarterStrategy.java 24 May 2007 18:51:36 -0000 1.1
--- MinValueStarterStrategy.java 24 May 2007 20:09:25 -0000 1.2
***************
*** 7,16 ****
/**
! * 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 {
--- 7,13 ----
/**
! * MinValueStarterStrategy baseia a compra em uma {@link Strategy} enviada como
! * parâmetro desde que o valor atual esteja acima do {@link start},
! * e baseia a venda nessa mesma {@link Strategy}
*/
public class MinValueStarterStrategy implements Strategy {
***************
*** 20,37 ****
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);
}
--- 17,34 ----
private Indicator<? extends Number> indicator;
! private double start;
! public MinValueStarterStrategy(Indicator<? extends Number> indicator, Strategy strategy, double start) {
this.strategy = strategy;
! this.start = start;
this.indicator = indicator;
}
public Operation shouldEnter(int index) {
! if (indicator.getValue(index).doubleValue() > start) {
! return strategy.shouldEnter(index);
}
! return null;
}
|