package br.com.sl.domain.dto;
import java.util.ArrayList;
import java.util.List;
import br.com.ec.core.util.VerificadorUtil;
import br.com.kronus.core.PadraoGatilho;
import br.com.kronus.strategy.ResultadoEstrategiaGatilho3;
import br.com.sl.domain.dto.robo.SinalTradeGatilho3;
import br.com.sl.domain.model.Ativo;
import br.com.sl.domain.model.Candle;
import br.com.sl.domain.model.tipos.TipoFonteDadosProfit;
public class RoboDTO
{
private Boolean rodando
;
private Boolean analisarPorHistoricoArquivo
;
private TipoFonteDadosProfit tipoFonteSelecionada
;
private List<String> logs
;
private List<Ativo
> ativosEmAnalise
;
private List<Candle
> candlesEmAnalise
;
private List<PadraoGatilho
> padroes
;
private List<SinalTradeGatilho3
> sinaisTradeGatilho3
;
private List<ResultadoEstrategiaGatilho3
> resultados
;
private Candle ultimoCandleAnalisado
;
private String observacaoRobo
;
public RoboDTO
() {
this.
rodando =
false;
this.
analisarPorHistoricoArquivo =
false;
this.
ativosEmAnalise =
new ArrayList<Ativo
>();
this.
candlesEmAnalise =
new ArrayList<Candle
>();
this.
padroes =
new ArrayList<PadraoGatilho
>();
this.
sinaisTradeGatilho3 =
new ArrayList<SinalTradeGatilho3
>();
this.
resultados =
new ArrayList<ResultadoEstrategiaGatilho3
>();
this.
ultimoCandleAnalisado =
new Candle
();
this.
logs =
new ArrayList<String>();
}
public Boolean getRodando
() {
return rodando
;
}
public void setRodando
(Boolean rodando
) {
this.
rodando = rodando
;
}
public Boolean isRodando
() {
return rodando
;
}
public String getStatusTexto
() {
return rodando
? "RODANDO" :
"PARADO";
}
public Boolean getAnalisarPorHistoricoArquivo
() {
return analisarPorHistoricoArquivo
;
}
public void setAnalisarPorHistoricoArquivo
(Boolean analisarPorHistoricoArquivo
) {
this.
analisarPorHistoricoArquivo = analisarPorHistoricoArquivo
;
}
public TipoFonteDadosProfit getTipoFonteSelecionada
() {
return tipoFonteSelecionada
;
}
public void setTipoFonteSelecionada
(TipoFonteDadosProfit tipoFonteSelecionada
) {
this.
tipoFonteSelecionada = tipoFonteSelecionada
;
}
public List<String> getLogs
() {
return logs
;
}
public void setLogs
(List<String> logs
) {
this.
logs = logs
;
}
public List<Ativo
> getAtivosEmAnalise
() {
return ativosEmAnalise
;
}
public void setAtivosEmAnalise
(List<Ativo
> ativosEmAnalise
) {
this.
ativosEmAnalise = ativosEmAnalise
;
}
public List<Candle
> getCandlesEmAnalise
() {
return candlesEmAnalise
;
}
public void setCandlesEmAnalise
(List<Candle
> candlesEmAnalise
) {
this.
candlesEmAnalise = candlesEmAnalise
;
}
public void adicionarAtivoNaLista
(Ativo ativo
) {
if (VerificadorUtil.
naoEstaNulo(ativo
)) {
if (getAtivosEmAnalise
().
indexOf(ativo
) <=
0) {
getAtivosEmAnalise
().
add(ativo
);
}
}
}
public List<PadraoGatilho
> getPadroes
() {
return padroes
;
}
public void setPadroes
(List<PadraoGatilho
> padroes
) {
this.
padroes = padroes
;
}
public List<SinalTradeGatilho3
> getSinaisTradeGatilho3
() {
return sinaisTradeGatilho3
;
}
public void setSinaisTradeGatilho3
(List<SinalTradeGatilho3
> sinaisTradeGatilho3
) {
this.
sinaisTradeGatilho3 = sinaisTradeGatilho3
;
}
public List<ResultadoEstrategiaGatilho3
> getResultados
() {
return resultados
;
}
public void setResultados
(List<ResultadoEstrategiaGatilho3
> resultados
) {
this.
resultados = resultados
;
}
public String getObservacaoRobo
() {
return observacaoRobo
;
}
public void setObservacaoRobo
(String observacaoRobo
) {
this.
observacaoRobo = observacaoRobo
;
}
public Candle getUltimoCandleAnalisado
() {
return ultimoCandleAnalisado
;
}
public void setUltimoCandleAnalisado
(Candle ultimoCandleAnalisado
) {
this.
ultimoCandleAnalisado = ultimoCandleAnalisado
;
}
public Boolean verificarSeAtivoConstaNaLista
(String nomeAtivo
) {
for (Ativo ativo: getAtivosEmAnalise
()) {
if (ativo.
getNome().
equals(nomeAtivo
)) {
return true;
}
}
return false;
}
public void adicionarCandleNaLista
(Candle candle
) {
getCandlesEmAnalise
().
add(candle
);
}
}