Subversion Repositories Integrator Subversion

Rev

Blame | Last modification | View Log | Download | RSS feed

package br.com.kronus.app;

import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

import br.com.kronus.core.Candle;
import br.com.kronus.core.DetectorGatilhos;
import br.com.kronus.core.PadraoGatilho;
import br.com.robo.sim.CandleExcelReader;

public class MainKronusGatilho {

        public static void main(String[] args) {
                System.out.println("INICIANDO ANÁLISE KRONUS...");

                List<Candle> candles = new ArrayList<Candle>();
        CandleExcelReader reader = new CandleExcelReader();
        try {
            candles = reader.lerCandles("/dados.xls");
            System.out.println("CANDLES LIDOS: " + candles.size());
        } catch (IOException e) {
            e.printStackTrace();
        }
       
        List<Candle> candlesHistorico = new ArrayList<Candle>();
        DetectorGatilhos detector = new DetectorGatilhos(true); // true = logs no System.out
//        DetectorGatilhosKronus detectorGatilhosKronus = new DetectorGatilhosKronus();
       
        // PERCORRER CADA CANDLE
        for (Candle novoCandle : candles) {
                candlesHistorico.add(novoCandle);
//              exibirDadosCandle(novoCandle);
               
            PadraoGatilho padrao = detector.processarCandleTempoReal(candlesHistorico);

            if (padrao != null) {
                System.out.println("=== PADRÃO FECHADO ===");
                System.out.println("GR: " + padrao.getReferencia().getContador());
                System.out.println("G1: " + padrao.getGatilho1().getContador());
                System.out.println("G2: " + padrao.getGatilho2().getContador());
                System.out.println("G3: " + padrao.getGatilho3().getContador());
                if (padrao.getGatilho4() != null) {
                    System.out.println("G4: " + padrao.getGatilho4().getContador());
                } else {
                    System.out.println("Sem G4 (padrão encerrou no G3).");
                }

                // Aqui você pode:
                // - sinalizar uma possível operação
                // - gravar no banco
                // - atualizar o dashboard JSF em tempo real
            }          
        }
        }

        private static void exibirDadosCandle(Candle candle) {
                System.out.println("===== CANDLE [" + candle.getContador() + "] =====");
                System.out.println("HORA: " + candle.getTime());
                System.out.println("ABERTURA: " + candle.getAbertura());
                System.out.println("FECHAMENDO: " + candle.getFechamento());
                System.out.println("MÁXIMA: " + candle.getMaxima());
                System.out.println("MÍNIMA: " + candle.getMinima());
                System.out.println("===============");
                System.out.println("");
        }
       
}