Projetos

Engenharia quantitativa · Privado

EUR/USD Core B

Testei seis anos de EUR/USD contra o próprio ruído; o que sobrou virou um robô — e cada decisão foi carimbada antes de eu ver o resultado.

O gate de paridade entre a pesquisa em Python e o robô em C#, animado a partir do relatório do próprio gate.

O vídeo mostra o gate de paridade sobre um backtest de 2025-07-01 a 2026-07-08: 57 trades, 57 idênticos, na barra exata. Não é amostra estatística — é igualdade caso a caso. O robô roda em conta demo, não com dinheiro real.

O método

Decisões carimbadas antes do resultado

Seis anos de dados do EUR/USD, minuto a minuto. Antes de olhar qualquer resultado, eu escrevia o critério de aprovação e o registrava: se o número não passar deste ponto, a ideia morre. Isso tira de mim a chance de mudar a régua depois de ver o placar — que é o jeito mais comum e mais silencioso de se enganar em pesquisa quantitativa. Validação fora-da-amostra em janelas móveis, e várias hipóteses que eu gostava foram descartadas por esse processo.

A descoberta

As barras não abriam onde eu pensava

Toda a pesquisa assumia que uma barra de quatro horas começa às 00:00, 04:00, 08:00 e assim por diante, no horário universal. Ao medir a plataforma da corretora, elas abriam às 02:00, 06:00, 10:00 — ancoradas no fechamento de Nova York. E mudavam de lugar duas vezes por ano, com o horário de verão americano. O mesmo vale para o ouro, então é característica da plataforma, não do par. Uma estratégia validada num conjunto de barras não é a mesma estratégia rodando noutro: o robô passou a construir as próprias barras a partir do gráfico de uma hora, que abre sempre na hora cheia e não sofre esse deslocamento.

A prova

Escrevi a estratégia duas vezes

Uma vez em Python, para pesquisar. Outra em C#, para executar na plataforma. Duas linguagens, dois ambientes, dois conjuntos de suposições — e nenhuma garantia de que fazem a mesma coisa. Então construí um teste que roda as duas sobre o mesmo período e exige que cada operação apareça dos dois lados, na mesma barra, com o mesmo lado, o mesmo regime de mercado e o mesmo motivo de saída. Foram 57 operações e 57 coincidências exatas, sem nenhuma precisar da tolerância de uma barra que o teste permitia. O agregador de barras foi conferido em separado: 1.643 barras reconstruídas, nenhuma diferença. O robô está em conta demo desde julho, sob um protocolo de acompanhamento definido antes de ligar.

Se chegou até aqui, manda uma mensagem.

Nem que seja só por curiosidade. Respondo no LinkedIn ou no e-mail.