Blame |
Last modification |
View Log
| Download
| RSS feed
package br.com.kronus.core;
import java.math.BigDecimal;
import br.com.sl.domain.dto.robo.SinalTradeGatilho3;
/**
* Resultado da avaliação de um SinalTradeGatilho3 no histórico.
*/
public class ResultadoSinalGatilho3
{
public enum Status
{
NAO_ACIONADO,
// preço nunca tocou o nível de entrada
ABERTO,
// entrada acionada, mas nem alvo nem stop foram atingidos no período analisado
ALVO1,
// primeiro alvo atingido
ALVO2,
// segundo alvo atingido
STOP,
// stop atingido
DESCARTADO
// alvo1 foi atingido ANTES da entrada -> operação cancelada
}
private final SinalTradeGatilho3 sinal
;
private final Status status
;
private final boolean tradeVencedor
;
private final int indiceEntrada
; // índice do candle onde a entrada foi acionada (-1 se não houve)
private final int indiceSaida
; // índice do candle onde o alvo/stop/desc descarte ocorreu
private final BigDecimal precoEntradaEfetivo
; // preço onde efetivamente “entrou”
private final BigDecimal precoSaidaEfetivo
; // preço do alvo/stop/desc descarte
public ResultadoSinalGatilho3
(
SinalTradeGatilho3 sinal,
Status status,
boolean tradeVencedor,
int indiceEntrada,
int indiceSaida,
BigDecimal precoEntradaEfetivo,
BigDecimal precoSaidaEfetivo
) {
this.
sinal = sinal
;
this.
status = status
;
this.
tradeVencedor = tradeVencedor
;
this.
indiceEntrada = indiceEntrada
;
this.
indiceSaida = indiceSaida
;
this.
precoEntradaEfetivo = precoEntradaEfetivo
;
this.
precoSaidaEfetivo = precoSaidaEfetivo
;
}
public SinalTradeGatilho3 getSinal
() {
return sinal
;
}
public Status getStatus
() {
return status
;
}
public boolean isTradeVencedor
() {
return tradeVencedor
;
}
public int getIndiceEntrada
() {
return indiceEntrada
;
}
public int getIndiceSaida
() {
return indiceSaida
;
}
public BigDecimal getPrecoEntradaEfetivo
() {
return precoEntradaEfetivo
;
}
public BigDecimal getPrecoSaidaEfetivo
() {
return precoSaidaEfetivo
;
}
}