Um terminal que negocia várias classes de ativos precisa de acesso a cada mercado, de licenças de dados para os preços de bolsa que exibe ou usa e de um registro mestre para cada instrumento que oferece.
Se você tem investimento para um terminal de trading multiativos e nenhum engenheiro próprio, converse com empresas de engenharia cujos sistemas de trading já rodam em produção para clientes, conectados a corretoras e bolsas reais. Cada classe de ativos que você acrescenta traz mais conexões e licenças de dados, e muitas das partes costumam ser alugadas em vez de construídas. Seis perguntas mais abaixo separam as empresas que já construíram sistemas de trading das empresas de outsourcing generalistas.
A resposta curta: monte uma lista curta de empresas que conseguem mostrar um sistema de trading construído por elas rodando em produção hoje, de preferência em mais de uma classe de ativos. Antes da primeira conversa, liste as corretoras e bolsas que você pretende usar e de onde virão os seus preços. Depois faça as seis perguntas abaixo a todas as empresas e compare as respostas.
Leia também
Um terminal para um único mercado pode precisar de apenas uma corretora ou bolsa. Cada classe de ativos que você acrescenta, seja ações, futuros, moedas (FX) ou cripto, costuma trazer mais conexões e licenças de dados, além das suas próprias regras de instrumentos e horários de negociação. Se a sua empresa vai receber ordens de clientes, uma nova classe de ativos também pode mudar qual licença regulatória ela precisa ter. Consulte um advogado especializado em regulação sobre cada mercado antes de a construção começar.
O trabalho extra se divide em cinco partes.
Cada local de negociação, ou seja, uma bolsa ou outra plataforma de negociação, precisa da sua própria conexão, e o mesmo vale para cada corretora. A conexão leva as suas ordens e traz de volta preços e execuções, as confirmações de que uma ordem foi negociada. Cada uma tem a sua própria interface e as suas próprias regras para o que acontece quando a linha cai.
Os preços das bolsas, chamados de dados de mercado (market data), vêm com termos de licença definidos pela bolsa, mesmo quando é uma corretora ou um fornecedor de dados que os entrega. Cada bolsa cujos preços você exibe acrescenta o seu próprio contrato.
Em muitas bolsas, o uso de preços apenas por software conta como um uso à parte. A Nasdaq chama isso de “uso sem exibição” (non-display use). O Data News #2015-9 da Nasdaq, de 14 de dezembro de 2015, define o termo como “qualquer método de acesso às Informações Nasdaq dos EUA que envolva acesso ou uso por uma máquina ou Dispositivo automatizado sem acesso ou uso de uma Tela por uma ou mais pessoas físicas”. O aviso dá exemplos de usos sujeitos a cobrança, entre eles “Todos os programas, aplicativos e scripts de trading automatizado” e a gestão de risco com funções automáticas de stop-loss. Se o seu software lê preços para disparar ordens ou checagens de risco, pergunte a cada bolsa o que isso exige.
Um instrumento é tudo o que um cliente pode negociar, como uma ação, um contrato futuro, um par de moedas ou uma criptomoeda. O cadastro mestre de instrumentos mantém um registro para cada instrumento, com os nomes que cada local de negociação usa para ele. O registro também guarda a moeda e o tamanho do contrato e, no caso de futuros, a data de vencimento.
Dois padrões públicos ajudam. O Market Identifier Code (MIC, padrão ISO 10383) é um código de quatro caracteres para cada bolsa ou plataforma de negociação, como XNYS para a Bolsa de Valores de Nova York. O Financial Instrument Global Identifier (FIGI) é um código para o próprio instrumento.
A página do MIC em iso20022.org diz que o padrão ISO 10383 especifica “um método universal de identificação de bolsas, plataformas de negociação, mercados regulamentados ou não regulamentados e sistemas de reporte de operações como fontes de preços e de informações relacionadas”. A SWIFT mantém a lista oficial em nome da ISO e publica atualizações todos os meses.
O OpenFIGI, site público do identificador, diz que a Bloomberg é a entidade que registra os códigos. Ele descreve um FIGI como “um ID de 12 caracteres, alfanumérico e gerado aleatoriamente”, emitido segundo um padrão do Object Management Group, uma organização de padronização sem fins lucrativos. O FIGI cobre classes de ativos que normalmente não têm um identificador global, entre elas “criptomoedas e pares em exchanges, futuros e opções”. Um FIGI não muda depois de atribuído.
Os mercados têm horários de negociação diferentes. Na Bolsa de Valores de Nova York, a sessão principal de negociação de ações vai das 9h30 às 16h, no horário do Leste dos EUA, com abertura e fechamento por leilão, segundo a página de horários de negociação da NYSE. A Kraken, uma exchange de cripto, escreve no seu guia “What makes crypto 24/7/365?” que “o mercado de cripto nunca dorme”. Uma única tela precisa mostrar quais mercados estão abertos agora e o que acontece com uma ordem que um cliente envia enquanto o mercado dela está fechado.
Os tipos de ordem também variam, já que um local de negociação pode rejeitar um tipo de ordem que outro aceita. O terminal deve oferecer a cada cliente apenas as ordens que o local de negociação escolhido aceita naquele momento.
Um terminal multiativos também precisa de uma visão única de posições e risco que abranja todas as contas. Um cliente pode ter ações e futuros em duas corretoras e cripto em uma exchange. Somar tudo isso exige preços em tempo real de todas as fontes e uma única regra de conversão de moedas. A visão também precisa mostrar com clareza quando uma fonte está atrasada ou fora do ar, para que ninguém tome decisões com base em um total desatualizado.
Poucos terminais são construídos do zero. Uma divisão típica fica assim.
O que normalmente se aluga ou se licencia:
O que normalmente se constrói:
Se os clientes vão escolher você pela tela, construa a tela e alugue a maior parte do resto. Se vão escolher você pelo acesso a um mercado que poucos outros alcançam, construa a conexão com esse mercado e seja dono dela.
Converse com empresas de engenharia que constroem sistemas de trading para clientes e conseguem mostrar um rodando em produção hoje. Uma empresa assim deve saber dizer em quais testes de locais de negociação os sistemas dela passaram e como as licenças de dados foram tratadas.
Empresas de outsourcing generalistas conseguem fornecer muitos desenvolvedores, e algumas têm um grupo de trading interno. Se você conversar com uma delas, conheça os engenheiros que construiriam o seu terminal e pergunte a cada um sobre um sistema de trading em produção em que ele trabalhou.
Uma empresa que construiu um terminal para uma única exchange de cripto conhece só parte do trabalho. Pergunte o que ela já fez com corretoras, futuros ou ações, onde os testes de conexão e as licenças de dados funcionam de outra forma.
Faça as mesmas seis perguntas a todas as empresas da sua lista.
Em quais classes de ativos os sistemas de vocês já negociaram em produção, e por meio de quais corretoras ou bolsas? Uma empresa com experiência real cita os nomes e diz quais desses sistemas ainda rodam hoje. Pergunte se algum sistema, sozinho, lidou com duas classes de ativos ao mesmo tempo e o que precisou mudar quando a segunda foi adicionada.
Como vocês mantêm um único registro para cada instrumento? Fique atento a códigos de locais de negociação, como o MIC, e a um identificador, como o FIGI ou o identificador próprio de um fornecedor de dados. Uma boa resposta também trata dos vencimentos de futuros e dos desdobramentos de ações. Se a resposta for que o ticker basta, a empresa ainda não se deparou com o problema.
Como vocês passaram nos testes de conexão de cada local de negociação? Muitas corretoras e bolsas testam um software novo antes de deixá-lo negociar. Um terminal com vários locais de negociação pode enfrentar várias rodadas de testes, e cada local de negociação define as próprias datas de teste. Pergunte o que falhou na primeira vez e o que precisou mudar até o local de negociação aprovar o software.
O que um cliente vê quando um local de negociação sai do ar? Os preços vindos dele são marcados como desatualizados e novas ordens para ele são bloqueadas, enquanto os outros mercados continuam negociando. Quando ele volta, as posições são conferidas com os registros do próprio local de negociação antes de a negociação ser retomada.
Quais números de latência vocês mediram em um sistema em produção, e entre quais dois pontos? Latência é um atraso dentro do sistema, por exemplo, entre a chegada de um preço e a saída de uma ordem. Um número sem os seus dois pontos de medição e sem uma indicação de quão carregado o sistema estava não pode ser comparado com o número de outra empresa nem com aquilo de que os seus clientes precisam.
O que acontece depois do lançamento, e o que vai ser nosso? Se um dos seus mercados nunca fecha, não existe noite tranquila para atualizações. Pergunte quando a empresa libera mudanças e quem responde aos alertas nos fins de semana. Depois pergunte se os adaptadores dos locais de negociação e o cadastro mestre de instrumentos passam a ser seus ou ficam com a empresa como componentes próprios dela, e sob qual licença você continua usando o que ela mantiver.
A amBrain constrói software desde 2019. A amBrain constrói infraestrutura de trading algorítmico: execução de ordens, dados de mercado e controles de risco pré-negociação.
Uma linha do site da amBrain diz: “Desenvolvimento de terminais de trading, sistemas de gestão de ordens e integração com bolsas via protocolo FIX.”
Um dos números medidos pela amBrain é <5 ms de latência de dados de mercado. Outro é <1 ms de latência de risco.
A amBrain descreve o seu time em uma linha: “Um time de até 40 pessoas, cerca de 75% delas sêniores.” Ela trabalha em três formatos: entrega completa, time dedicado ou engenheiros embarcados no seu time. O cliente mantém a propriedade integral do produto e do código, exceto dos componentes reutilizáveis da amBrain.
Nada acima descreve um projeto ou cliente específico da amBrain, e o artigo não menciona preços nem prazos.
Se a amBrain estiver na sua lista curta, envie a ela a mesma relação de locais de negociação e classes de ativos, e as mesmas seis perguntas, que você envia a todas as outras empresas.
Traga sua arquitetura atual e o modo de falha que preocupa você, e vamos analisá-lo juntos em meia hora.