Três taxas de câmbio podem parecer inconsistentes e ainda assim não oferecer nenhuma negociação.
O número que importa não é o produto dos preços mostrados em um gráfico. É a quantia que sobra após comprar a preços de venda, vender a preços de compra e completar todas as três conversões.
Essa distinção é a base da arbitragem triangular.
O que é arbitragem triangular?
Arbitragem triangular é uma tentativa de lucrar com uma inconsistência temporária entre três taxas de câmbio relacionadas.
O trader converte:
- converter moeda A em moeda B;
- moeda B em moeda C;
- moeda C de volta para moeda A.
Se o valor final for maior que o valor inicial após spreads, comissões, slippage e outros custos de execução, o loop gerou um lucro.
A estratégia não depende de prever se uma moeda vai subir ou cair. Ela testa se três preços disponíveis no mesmo momento concordam entre si.
Por exemplo, EUR/USD e GBP/USD implicam um valor para EUR/GBP. Se a cotação executável de EUR/GBP diferir o suficiente desse valor implícito, uma direção em torno dos três pares pode mostrar uma oportunidade de arbitragem.
A palavra executável é importante. Uma taxa usada no cálculo deve estar disponível para o lado e a quantidade exigidos de cada negociação. Um ponto médio, preço de gráfico ou cotação desatualizada não é suficiente.
Os três pares de moedas no loop
Considere estes pares:
- EUR/USD: quantos dólares americanos custa um euro;
- EUR/GBP: quantas libras esterlinas custa um euro;
- GBP/USD: quantos dólares americanos custa uma libra.
Juntos, eles formam duas rotas possíveis:
USD → EUR → GBP → USD
ou:
USD → GBP → EUR → USD
Ambas as direções precisam ser verificadas. Uma pode produzir um resultado teórico positivo enquanto a outra gera uma perda.
Antes de fazer o cálculo, coloco cada par em um formato consistente de base/cotação. Isso evita um dos erros mais comuns: multiplicar uma taxa que deveria ter sido dividida ou usar o recíproco da cotação necessária.
Os preços de oferta e demanda mudam o cálculo
Suponha que o EUR/USD esteja cotado em:
1.0998 / 1.1000
O primeiro número é a oferta. O segundo é o pedido.
- Para vender EUR por USD, recebo a oferta: 1.0998.
- Para comprar EUR com USD, eu pago o preço de venda: 1.1000.
A mesma regra se aplica a cada par:
| Ação | Lado executável |
|---|---|
| Comprar a moeda base | Oferta |
| Vender a moeda base | Demanda |
Usar apenas preços de ponto médio pode criar um lucro que na verdade não pode ser negociado. Um trabalho do BIS ilustra a mesma distinção: um ciclo de moeda que parece lucrativo sem custos de transação pode se tornar não lucrativo uma vez que as cotações de compra e venda sejam aplicadas.
Fórmula de arbitragem triangular
Para a rota USD → EUR → GBP → USD, o cálculo é:
USD final = USD inicial ÷ EUR/USD ask × EUR/GBP bid × GBP/USD bid
O multiplicador de rota é:
EUR/GBP oferta × GBP/USD oferta ÷ EUR/USD pedido
A rota tem uma margem bruta positiva quando esse multiplicador é maior que 1.
Para a rota inversa, USD → GBP → EUR → USD, o cálculo é:
Final USD = Starting USD ÷ GBP/USD ask ÷ EUR/GBP ask × EUR/USD bid
Seu multiplicador é:
EUR/USD oferta ÷ (GBP/USD demanda × EUR/GBP demanda)
Um multiplicador acima de 1 é apenas o primeiro teste. O ganho esperado também deve cobrir comissões, taxas de local, deslizamento e quaisquer outros custos que não estejam incluídos no spread cotado.
Exemplo de arbitragem triangular
Suponha que as seguintes citações ilustrativas estejam disponíveis ao mesmo tempo:
| Pares de moedas | Oferta | Pedido |
|---|---|---|
| EUR/USD | 1.0998 | 1.1000 |
| EUR/GBP | 0.8810 | 0.8812 |
| GBP/USD | 1.2500 | 1.2502 |
Começamos com $100,000 e testamos a rota:
USD → EUR → GBP → USD
Passo 1: Converter USD em EUR
Estamos comprando euros, então usamos o preço de venda EUR/USD:
$100,000 ÷ 1.1000 = €90,909.09
Passo 2: Converter EUR em GBP
Estamos vendendo euros, então usamos a cotação EUR/GBP:
€90.909,09 × 0,8810 = £80.090,91
Etapa 3: Converter GBP de volta para USD
Estamos vendendo libras, então usamos a cotação GBP/USD:
£80,090.91 × 1.2500 = $100,113.64
O resultado bruto é:
$100.113,64 − $100.000 = $113,64
Esse é um retorno bruto de aproximadamente 0,1136%.
How $100,000 moves through the three pairs
Each conversion uses the side of the quote available to the trade. The result below is gross, before any additional commissions, slippage, or rejected orders.
Illustrative quotes. A positive calculation is not a guaranteed fill or a guaranteed profit.
Esses preços são deliberadamente simplificados para tornar o cálculo visível. Eles não devem ser interpretados como um lucro típico disponível em negociações de grandes moedas ao vivo.
Se as comissões e outros custos excederem $113,64, o resultado líquido é negativo. O mesmo é verdadeiro se uma perna for preenchida a um preço pior, se não houver quantidade suficiente no nível cotado ou se uma cotação mudar antes que o loop esteja completo.
Por que a rota inversa também precisa ser testada
Usando as mesmas citações, a rota inversa é:
USD → GBP → EUR → USD
O cálculo é:
$100,000 ÷ 1.2502 ÷ 0.8812 × 1.0998 = $99,829.69
Esta direção perde aproximadamente $170,31 antes de quaisquer taxas adicionais.
Esse resultado é normal. Uma inconsistência de preço não torna ambas as direções lucrativas. O spread de compra e venda afasta as duas rotas. Um scanner deve calcular cada rota com o lado executável correto, em vez de presumir que uma comparação de taxa cruzada é suficiente.
Por que uma oportunidade visível pode não se tornar um lucro
A aritmética é a parte fácil. A execução determina se a borda calculada sobrevive.
As citações podem não estar sincronizadas
Um feed pode ser atualizado antes do outro. Um scanner pode combinar uma cotação recente de um par com preços defasados dos outros dois e relatar uma oportunidade que já não existe mais.
Os carimbos de tempo ajudam, mas não garantem que os três preços permaneçam disponíveis quando os pedidos chegarem ao local.
Pode não haver liquidez suficiente
A melhor oferta ou pedido se aplica apenas à quantidade oferecida a esse preço.
Um loop de $10.000 pode se encaixar dentro do nível superior de todos os três pares. Um loop de $1 milhão pode consumir vários níveis do livro de ordens. O preço médio de execução pode apagar a vantagem mesmo quando o primeiro preço cotado parece lucrativo.
O tamanho prático máximo é limitado pela perna mais fina do triângulo.
As três negociações não são garantidas para serem preenchidas juntas
O cálculo trata o loop como uma operação. A maioria dos sistemas de negociação ainda envia três ordens separadas.
Se as duas primeiras forem executadas e a terceira for rejeitada ou reprecificada, o trader fica com uma posição cambial aberta. Isso é chamado de risco de perna. O resultado agora depende do movimento do mercado em vez de uma relação de preço fixo.
Instruções de imediato ou cancelar e preencher ou eliminar podem reduzir alguma incerteza de execução onde são suportadas. Elas não tornam três ordens em livros separados totalmente atômicas.
O deslizamento pode ser maior do que a vantagem esperada
Uma margem de arbitragem pode ser menor do que uma mudança de preço normal entre o recebimento da cotação e a execução. A latência da rede, a latência do motor de correspondência, a posição na fila e os pedidos concorrentes afetam todos os preços finais.
É por isso que o spread de compra e venda é apenas o primeiro custo a verificar.
Um fornecedor pode rejeitar ou reavaliar uma cotação desatualizada
As regras de execução variam entre bolsas, ECNs, dealers, corretores e pools de liquidez. Alguns locais de FX usam o “last look”, que permite a um provedor de liquidez aceitar ou rejeitar uma operação após receber o pedido.
A taxa exibida, portanto, nem sempre é uma garantia de preenchimento.
Como a arbitragem triangular é executada na prática
Um fluxo de trabalho profissional normalmente separa a detecção da execução.
- Normalizar as cotações. Coloque cada par em uma direção/base de citação conhecida.
- Leia os preços atuais de oferta e demanda. Não substitua os fechamentos de gráficos ou pontos médios.
- Calcule ambas as rotas. Teste a conversão no sentido horário e anti-horário.
- Verifique a profundidade executável. Recalcule usando o preço médio esperado para o tamanho pretendido.
- Subtraia todos os custos conhecidos. Inclua comissões e taxas de local que não estão refletidas na margem.
- Aplicar um limite de segurança. A margem esperada precisa de espaço para latência e deslizamento.
- Envie e monitore os pedidos. O sistema deve lidar com preenchimentos parciais, rejeições e posições residuais indesejadas.
- Reconcilie o resultado real. O lucro esperado não é o lucro realizado até que todos os preenchimentos sejam confirmados.
Este processo geralmente é executado em software porque o cálculo manual e a entrada de pedidos são muito lentos para mercados líquidos.
A pesquisa sobre FX spot descobriu que oportunidades de arbitragem triangular ocorreram, mas a maioria era pequena e de curta duração. Os autores também concluíram que um lucro sustentado exigiria alcançar uma parte impraticamente grande das oportunidades disponíveis antes dos traders concorrentes. Essa é uma imagem mais realista do que descrever a arbitragem triangular como fácil ou sem risco. Leia o estudo.
Arbitragem triangular em uma plataforma e entre plataformas
A versão mais limpa utiliza três pares disponíveis através da mesma troca ou pool de liquidez. Os preços, saldos, taxas e relatórios de execução vêm então de um único sistema.
Se as pernas usam locais diferentes, mais variáveis entram na negociação:
- os preços podem não representar a mesma liquidez;
- os saldos devem já estar disponíveis nos locais necessários;
- a latência de pedidos e de dados de mercado difere;
- as partes contratantes e os arranjos de liquidação podem diferir;
- um local pode rejeitar uma troca enquanto outro a preenche.
Nesse ponto, a estratégia combina arbitragem triangular com arbitragem entre diferentes plataformas.
A mesma matemática pode ser aplicada a três pares de criptomoedas em uma exchange centralizada. Mas a tabela de taxas, tamanhos mínimos de pedidos, profundidade do livro e regras de correspondência ainda precisam ser incluídas. Um loop de criptomoeda não é lucrativo simplesmente porque três preços finais exibidos não se multiplicam para um.
Os traders de varejo podem usar arbitragem triangular?
Os comerciantes de varejo podem entender e calcular a relação. Capturá-la de forma confiável é muito mais difícil.
No momento em que uma pessoa percebe uma discrepância e faz três pedidos, os sistemas automatizados já podem ter negociado isso. As plataformas de varejo também podem mostrar preços indicativos ou agregados em vez da liquidez exata que executará os três componentes.
O valor prático para a maioria dos traders é educacional. O cálculo ensina:
- como os pares de moedas se relacionam entre si;
- por que os preços de oferta e demanda são importantes;
- como os custos de execução mudam um retorno teórico;
- por que um preço cotado não é o mesmo que uma negociação concluída.
O acesso a uma API ou estratégia automatizada não remove esses limites. A entrada de pedidos mais rápida ajuda apenas se os dados, custos, controles de risco e lógica de execução também forem sólidos.
Erros comuns de arbitragem triangular
Misturando direções de citação
EUR/USD e USD/EUR descrevem preços recíprocos. Tratá-los como intercambiáveis leva a erros de multiplicação e divisão.
Usando pontos médios ou últimos preços
Esses preços são úteis para análise, mas podem não estar disponíveis para execução. Cada conversão precisa da oferta ou pedido correto.
Chamando o lucro bruto da margem
Um multiplicador positivo é um candidato a oportunidade. O lucro é o que sobra após todas as três negociações e todos os custos.
Ignorando profundidade
O preço máximo pode cobrir apenas um pequeno pedido. Cada parte deve suportar o mesmo valor inicial após a conversão.
Assumindo que o loop é isento de riscos
A relação de preços pode estar bloqueada matematicamente. Os pedidos não estão necessariamente bloqueados operacionalmente.
Verificando apenas uma direção
Um scanner completo avalia ambas as rotas. Ele também rejeita qualquer rota que fique abaixo do limite de segurança necessário.
O cálculo é um teste de execução
Quando verifico um loop triangular, não pergunto se três preços de gráfico produzem um número acima de um. Pergunto se as quantidades necessárias podem ser negociadas agora, do lado correto de cada cotação, com margem suficiente restante após os custos.
Essa é a diferença entre uma discrepância de preços e um arbitragem executável.
