Resumo
A empresa dedica tempo à análise manual do mercado, ao tratamento de planilhas e à colocação de ordens.
A solução tornou-se um software de trading em Python que conecta dados de mercado, lógica de estratégias, planilhas e contas de corretoras.
O software foi criado para reduzir o trabalho manual de trading, o tratamento repetido de dados e o esforço evitável de execução.
História do cliente
O cliente é uma empresa de trading algorítmico da Polónia. Opera estratégias ao vivo, testadas historicamente e de alta frequência através de APIs de corretoras, trabalhando com ações e opções.
A equipa gere dados de candles, entradas de trading e ordens de compra e venda em contas de corretoras. Traders e empresas de trading precisam substituir a análise manual de dados de mercado, o tratamento de dados de operações e a colocação de ordens por sistemas automatizados.
O pedido era simples: automatizar o fluxo de trading em Python, conectá-lo à Interactive Brokers ou a uma Shoonya Broker Account quando necessário e validar estratégias por meio de backtesting. A empresa também precisava inserir dados do Excel no processo e devolvê-los como dados de trading atualizados após a execução.
A solução foi estruturada como telas conectadas para configuração de intervalos, análise de candles, monitorização ao vivo, dados do Excel e backtesting. Campos de estratégia, tipos de ordem, estado da corretora e registos de trading permaneceram visíveis para que a empresa gerisse o processo de acordo com as suas próprias regras.
O cliente pediu
- Validar estratégias por meio de backtesting e fornecer a orientação ou documentação solicitada.
- Criar a automação de trading em Python, com alternativas em Java ou C++ quando necessário.
- Conectar a Interactive Brokers ou à Shoonya Broker Account quando necessário.
- Ler dados de trading do Excel e atualizá-los após a execução.
Por que o software pronto não se adequava
As plataformas de corretoras prontas abrangem compra, venda e gestão de ativos financeiros, mas as suas descrições não combinam os dados de planilhas da empresa, a lógica de estratégias configurável, o backtesting e a execução pela corretora num único processo personalizado. A solução foi concebida para manter estas partes juntas e alinhá-las às regras da empresa, enquanto a documentação e o suporte de formação permitem uma utilização independente.
Visão geral do projeto
A solução foi concebida em torno de uma aplicação de trading em Python que conecta dados de mercado, lógica de estratégias, dados de planilhas e contas de corretoras. A estrutura mantém as principais etapas num só lugar: preparar dados, analisar candles, validar uma estratégia, executar ordens e monitorizar posições.
Para gerir os dados de trading, foi disponibilizado um ambiente de trabalho em Excel. Ele lê dados da planilha, apresenta dados de candles e identifica os dados de trading atualizados após a execução.
A tela de trading reúne intervalos selecionáveis, parâmetros de estratégia e critérios de compra e venda. O estado da conexão com a corretora e os tipos de ordem a mercado, limitada ou stop permanecem disponíveis na mesma tela.
A aplicação envia ordens através das conexões de corretoras suportadas e mantém as informações de execução disponíveis para monitorização.
Foi dada atenção especial à validação de estratégias. A tela de backtesting utiliza dados históricos de candles, parâmetros de estratégia e tabelas de resultados para que a empresa possa comparar uma estratégia antes de utilizá-la em trading ao vivo.
O sistema foi planeado em módulos, permitindo adicionar documentação, orientação de configuração, suporte pós-entrega e futuras extensões, como processamento local ou depuração no mercado ao vivo.
Principais funcionalidades entregues
- Trading automatizado através de contas de corretoras
- Ordens a mercado, limitadas e stop
- Obtenção de dados de candles em intervalos selecionáveis
- Estratégias e critérios de compra/venda configuráveis
- Importação e atualização de dados de trading do Excel
- Backtesting de estratégias com dados históricos de candles
- Monitorização ao vivo de ordens, posições e alertas
- Estado da conexão da conta da corretora
- Automação de trading baseada em Python