Mercado FinanceiroAvançadaConcluído

AgentFlow

Plataforma de análise de fluxo e execução de ordens em tempo real, com dados de agente da B3 inacessíveis via MQL5 ou NTSL.

Código não disponível
AgentFlow

Sobre o projeto

Plataforma que recebe e processa as negociações por agente da B3 em tempo real: um dado que existe no MetaTrader 5 e no ProfitChart, mas não é acessível para tratamento livre via código em MQL5 (só é possível receber os trades, sem o nome do agente) ou NTSL. Além da leitura, o sistema também executa ordens diretamente via ProfitDLL.

Problema

O dado de negociação por agente da B3 existe no MetaTrader 5 e no ProfitChart, mas não é acessível para tratamento livre via código: no MQL5 só é possível receber os trades sem o nome do agente, e no NTSL o acesso é igualmente limitado.

Solução

Conexão direta via ProfitDLL para capturar cada negócio do pregão (comprador, vendedor, agressor, preço e quantidade), com execução de ordens embutida e API de sinais para robôs consumirem as decisões.

Funcionalidades

  • Captura de cada negócio do pregão via ProfitDLL (comprador, vendedor, agressor, preço e quantidade)
  • Persistência de ticks em PostgreSQL para backtest
  • Acumuladores em memória com saldo de volume agressivo e passivo por corretora
  • Snapshots em tempo real transmitidos ao frontend via SSE
  • Execução de ordens (compra, venda, zeragem, cancelamento) direto pela DLL, com take profit e stop loss automáticos
  • OCO implementado no backend, já que a DLL não vincula ordens nativamente
  • API de sinais para robôs no MetaTrader 5, com estratégias de decisão plugáveis via injeção de dependência
  • Reconstrução de estado após queda de conexão a partir do último snapshot, sem buraco nos dados

Arquitetura

Workers de background que se comunicam por channels: se o banco atrasa, só a persistência espera e a análise segue sem travar. Ticks ao vivo que chegam antes do histórico terminar ficam em buffer e são liberados em ordem depois, evitando corromper o acumulado.

Galeria

Fluxograma da arquitetura

Fluxo de dados desde a DLL até o frontend, passando pelas camadas de domínio, aplicação e web.

Comparação com o Profit

Saldo por corretora capturado pelo AgentFlow ao lado do ranking de agentes exibido no Profit, validando os números captados via ProfitDLL.

Código do backend

Interface ITradeBusiness em C#, com os contratos de conexão, execução de ordens e assinatura de ativos.