Arbitragem on-chain: ciclos atômicos, flash loans e o leilão que você precisa vencer
Existe um mito confortável de que a arbitragem on-chain é difícil porque a descoberta é difícil — que em algum lugar no grafo de preços existe um ciclo oculto que apenas o algoritmo mais inteligente pode ver, e quem o calcula mais rápido é pago. A verdade é quase o oposto. Em uma cadeia pública, o ciclo lucrativo é visível para todos no mesmo instante, calculado por dezenas de bots executando códigos quase idênticos contra as mesmas reservas. A detecção é um problema resolvido e comoditizado. O que é difícil — o que realmente decide quem recebe o dinheiro — é vencer a ordenação: colocar sua transação no slot certo do bloco certo, à frente de todos os outros pesquisadores que encontraram exatamente a mesma coisa. A arbitragem on-chain é fácil de detectar e difícil de vencer, e a lacuna entre esses dois verbos é onde vive toda a economia do negócio.
Este artigo aborda o lado do pesquisador. Em Anatomia do MEV, mapeamos a floresta escura da perspectiva da vítima e prometemos um acompanhamento sobre a extração benigna — a arbitragem e o backrunning que mantêm os preços on-chain honestos. Em Liquidações on-chain, construímos um contrato de execução de flash loan e um pacote de backrun de oráculo e apontamos para cá para o tratamento geral do primitivo. Esta peça paga ambas as dívidas. Ela assume que você já sabe o que é um mempool, um pacote e uma taxa de prioridade; se não, leia primeiro a peça sobre MEV. Aqui construímos a máquina do arbitrador: a transação atômica que não pode perder, o capital emprestado que remove a restrição de capital, a busca em grafo que é a metade fácil, e o leilão que consome quase toda a margem.
Atomicidade: a negociação que reverte em caso de perda
A propriedade definidora da arbitragem on-chain — o que a torna categoricamente mais segura do que qualquer negociação entre locais que um trader de CEX pode executar — é a atomicidade. Uma arbitragem multi-hop não é uma sequência de negociações que você dispara e espera que se concretizem juntas. É uma única transação que executa cada etapa do ciclo, e se o saldo final não for estritamente maior que o saldo inicial, toda a transação reverte: cada mudança de estado é revertida como se nunca tivesse acontecido, e você perde apenas o gás de uma transação falha.
Isso muda completamente o perfil de risco. Um trader de CEX que compra BTC em uma exchange para vendê-lo em outra mantém inventário entre as operações — por segundos, minutos, o tempo que a transferência e a segunda execução levarem — e absorve o que o preço fizer durante essa janela. O arbitrador on-chain mantém inventário por zero tempo em qualquer sentido economicamente significativo: a compra e a venda são a mesma operação indivisível. Não há risco de preço no meio do ciclo porque não há meio do ciclo. Ou o loop inteiro se fecha de forma lucrativa em uma etapa atômica, ou não acontece.
A guarda que impõe isso é uma única comparação no final do caminho de execução. Conceitualmente, um contrato de arbitragem atômica não faz nada mais do que:
// The whole cycle runs inside one transaction. If the closing balance
// does not clear the opening balance (plus costs), the require() throws,
// and the EVM reverts every trade that came before it.
function executeCycle(bytes calldata path, uint256 minProfit) external {
uint256 start = IERC20(baseToken).balanceOf(address(this));
_hopA(path); // e.g. USDC -> WETH on Uniswap
_hopB(path); // e.g. WETH -> DAI on Sushiswap
_hopC(path); // e.g. DAI -> USDC on Curve
uint256 end = IERC20(baseToken).balanceOf(address(this));
require(end >= start + minProfit, "unprofitable"); // atomic safety net
}
O require é todo o modelo de segurança. Uma cotação desatualizada, uma transação concorrente que moveu o pool um slot antes da sua, uma taxa inesperada — qualquer coisa que torne o ciclo não lucrativo simplesmente aciona a guarda e reverte. Você nunca vende a última etapa por um preço pior do que o modelado e absorve a perda; a negociação que teria perdido dinheiro não é executada. É por isso que a arbitragem é o lado benigno da taxonomia MEV da peça MEV: não há vítima cuja execução seja degradada, e o arbitrador não carrega risco direcional de inventário. O único custo real de uma tentativa falha é o gás — que, como veremos, é exatamente o custo que o leilão competitivo é projetado para inflacionar.
Flash loans removem a restrição de capital
A atomicidade permite algo mais forte: arbitragem com nenhum capital próprio. Um flash loan permite que você pegue emprestado uma quantia arbitrária de um pool de empréstimos com exatamente uma condição — você o paga de volta, mais uma taxa, antes que a transação termine. Como o empréstimo, a arbitragem e o pagamento vivem dentro de uma única transação atômica, o pool não enfrenta risco de inadimplência: se você não puder pagar, toda a transação reverte e o empréstimo é desfeito. O credor é protegido pela mesma reversão que o protege.
O padrão é um callback. Você chama a função de flash loan do pool; o pool envia os tokens e então chama você de volta; dentro desse callback você executa o ciclo e deve deixar o suficiente para pagar:
// Called by the lending pool in the middle of the flash loan.
function receiveFlashLoan(address token, uint256 amount, uint256 fee, bytes calldata data)
external
{
// 1. buy the asset cheap on venue A with the borrowed `amount`
uint256 bought = _swap(VENUE_A, token, ASSET, amount, data);
// 2. sell it dear on venue B, back into the borrowed token
uint256 repaidIn = _swap(VENUE_B, ASSET, token, bought, data);
// 3. must be able to return principal + fee, or the whole tx reverts
require(repaidIn >= amount + fee, "arb cannot cover loan");
IERC20(token).transfer(msg.sender, amount + fee); // repay in-tx
// whatever remains — repaidIn - amount - fee — is profit, kept here
}
A taxa é pequena e depende do local: Aave v3 cobra 5 bps (0,05%) em um flash loan, Balancer historicamente cobrava 0 bps, e Uniswap v3 expõe a mesma capacidade através de flash swaps onde a taxa é apenas a taxa de swap normal do pool. Cinco pontos base é um custo real que deve ser compensado dentro da margem do ciclo, mas é trivial perto da alternativa de amarrar seis ou sete dígitos do seu próprio inventário para capturar uma dislocação que dura um bloco.
A consequência para a estrutura do mercado merece ser explicitada: flash loans desvinculam o lucro da arbitragem do capital. O vencedor de uma dada oportunidade não é o pesquisador com o balanço mais profundo — um bot com alguns dólares de dinheiro para gás pode emprestar dez milhões de dólares pela duração de uma transação. Capital não é o fosso. Todos podem emprestar o mesmo tamanho contra a mesma oportunidade, e é precisamente por isso que a competição se concentra na única coisa que não é comoditizada: ser ordenado primeiro.
Um ciclo cross-DEX trabalhado
Números tornam a mecânica concreta. Pegue dois pools WETH/USDC de produto constante com a taxa de 0,30% (), e suponha que uma grande compra acabou de empurrar o pool B acima do pool A — o tipo de dislocação que a próxima seção mostra de onde os ciclos realmente vêm. Use reservas redondas e claramente ilustrativas:
- Pool A (barato): WETH, USDC preço USDC/WETH.
- Pool B (caro): WETH, USDC preço USDC/WETH.
O ciclo é: flash-borrow USDC, comprar WETH barato no A, vender caro no B, pagar. Emprestar USDC. O salto 1 vende USDC para o pool A por WETH:
O salto 2 vende esse WETH para o pool B por USDC:
Você emprestou 100.000, recebeu 100.723 e deve uma taxa de flash de 5 bps de 50 USDC. Líquido: cerca de $673 de lucro bruto com um desembolso de capital zero, antes do gás e antes da oferta de prioridade. Duas coisas a notar. Primeiro, os dois saltos movem os pools um em direção ao outro — comprar no A eleva seu preço, vender no B derruba seu preço — então o lucro não é linear em tamanho: empurre demais e o impacto no preço consome a lacuna, exatamente como na otimização de sanduíche da peça MEV. O pesquisador executa uma busca unidimensional sobre para encontrar o tamanho do empréstimo que maximiza o lucro líquido. Segundo, esse $673 é um número determinístico que todo bot concorrente calcula para o mesmo valor a partir das mesmas reservas — que é todo o problema, e o assunto da seção de leilão abaixo.

A detecção é a metade fácil
Dado o mercado como um grafo — ativos como nós, pares de negociação como arestas ponderadas — um ciclo de arbitragem é um loop cujo produto das taxas de câmbio excede um. Pegue o logaritmo de cada taxa, negue-o, e um ciclo lucrativo se torna um ciclo de peso negativo; a ferramenta clássica para encontrar um é Bellman-Ford, com SPFA e o algoritmo RICH mais recente como variantes mais rápidas ajustadas para os grafos pequenos e de mudança rápida que os mercados reais produzem. Todo esse conjunto de ferramentas — a transformação logarítmica, a condição de ciclo negativo, as implementações em Rust, os pesos de aresta ajustados por taxa que matam a maioria dos ciclos teóricos — é o assunto de algoritmos de grafo para detecção de arbitragem, e não há necessidade de repeti-lo aqui.
O que importa para este artigo é um único ponto contábil: a taxa deve ir para o peso da aresta, ou o ciclo é uma miragem. Um loop de três pernas paga três taxas de pool mais, se você emprestou, a taxa de flash loan, e o teste de ciclo negativo tem que ver todas elas:
from math import log
def cycle_log_gain(rates, pool_fee=0.003, loan_fee=0.0005):
"""Log-gain around a cycle. > 0 means gross profit before gas and priority bid.
`rates[i]` = units of the next asset per unit of the current one on hop i."""
gross = 1.0
for r in rates:
gross *= r * (1 - pool_fee) # each hop pays the venue's swap fee
gross *= (1 - loan_fee) # one flash-loan fee for the whole cycle
return log(gross) # still ignores gas and the auction bid
Aqui está a observação fundamental. Essa função é determinística. Alimente-a com as reservas on-chain atuais — que cada nó mantém de forma idêntica, porque a cadeia é uma máquina de estado compartilhada e replicada — e cada pesquisador calcula o mesmo cycle_log_gain para o mesmo valor na mesma altura de bloco. Não há sinal privado, nenhum conjunto de dados proprietário, nenhuma vantagem informacional. Quando uma grande troca ou um novo bloco reorganiza as reservas, dezenas de bots executando código de detecção estruturalmente idêntico acendem no mesmo ciclo em milissegundos um do outro. A busca retorna a mesma resposta para todos.
Uma nota sobre a topologia, porque ela molda o quão difícil a busca realmente é. Os ciclos mais baratos são triangulares e intra-DEX — WETH → USDC → DAI → WETH inteiramente dentro de uma única implantação Uniswap: três saltos, três taxas de pool, nenhuma coordenação entre locais. Os ciclos cross-DEX (comprar na Uniswap, vender na Sushiswap) adicionam locais, mas deixam a guarda atômica idêntica. Ciclos mais longos e exóticos encadeiam ainda mais saltos — mas cada salto extra multiplica outro fator no produto, então a condição de ciclo negativo ajustada por taxa mata ciclos longos rapidamente. É exatamente por isso que os pesquisadores reais limitam o comprimento do ciclo a três a cinco saltos e podam agressivamente; é a busca em camadas e com limite de comprimento que o algoritmo RICH da peça de algoritmos de grafo é construído para executar.
Então, a detecção não te faz ganhar a negociação; ela apenas te qualifica para competir por ela. O teste log(gross) > 0 te diz que uma oportunidade existe — não diz nada sobre se você será o endereço que a captura. Isso é decidido uma camada abaixo, na ordenação, e a ordenação não é algo que seu algoritmo calcula. É algo pelo qual você licita. Tudo o que é difícil na arbitragem on-chain acontece depois que o ciclo é encontrado.

Backrunning: a forma benigna de MEV
De onde vêm esses ciclos, em primeiro lugar? Na grande maioria, de transações de outras pessoas. Uma grande troca em um pool Uniswap afasta o preço desse pool do mercado mais amplo; o pool agora está mal precificado em relação à Binance, em relação a um pool Curve, em relação à Sushiswap; e o ato de realinhá-lo é uma arbitragem lucrativa. O pesquisador que faz isso coloca sua transação imediatamente após a troca que criou a dislocação. Isso é backrunning, e é a forma dominante e benigna de MEV on-chain.
Lembre-se da mecânica do produto constante da peça MEV. Um pool mantém reservas com e preço à vista . Alguém vende uma grande quantidade do ativo base nele; pelo invariante, o pool paga
e o novo preço à vista é menor — o vendedor o empurrou para baixo. Se o preço de mercado externo ainda for , o pool agora cota abaixo de , e o backrun que maximiza o lucro compra do pool exatamente até que seu preço marginal suba de volta para — ou seja, até que as reservas satisfaçam novamente. O arbitrador captura a área entre a curva de execução do pool e o preço externo fixo — o valor que a grande troca deixou na mesa ao mover o pool.
O fato estrutural crítico — aquele que coloca o backrunning no lado benigno do balanço — é que um backrun puro não degrada a execução do alvo. Ele é executado estritamente depois da troca da vítima. No momento em que o backrun é executado, o preço do swapper já está travado; nada que o backrunner faça pode voltar e piorá-lo. Contraste isso com o sanduíche tóxico da peça MEV, onde um frontrun é inserido antes da vítima precisamente para piorar sua execução, para que o backrun possa colher a dislocação ampliada. Mesma mecânica de backrun, moralidade oposta: o sanduíche fabrica o erro de precificação às custas da vítima; o backrun benigno apenas limpa um erro de precificação que a vítima teria criado de qualquer forma. O arbitrador é o mecanismo pelo qual os preços on-chain acompanham o mundo exterior — o mesmo papel que torna a arbitragem entre locais uma força estabilizadora em toda a área financeira.
É também por isso que a pilha de proteção MEV moderna tenta preservar e redistribuir os backruns enquanto suprime os sanduíches. O MEV-Share e os leilões de fluxo de ordens da Flashbots permitem que um usuário exponha dicas parciais sobre sua transação, convide pesquisadores a licitar pelo direito de fazer o backrun e reembolse a maior parte do lucro resultante ao usuário que criou a oportunidade. O backrun ainda acontece — o preço ainda é realinhado — mas o valor retorna para a transação que o gerou, em vez de ser roubado por quem foi mais rápido.
De onde vêm os ciclos
Quase todo ciclo lucrativo é consequência de algum outro evento on-chain que moveu um preço. Conhecer as fontes é a diferença entre pesquisar cegamente todo o grafo e observar o punhado de gatilhos que realmente criam arestas:
- Grandes swaps. A fonte canônica, trabalhada acima: qualquer negociação grande o suficiente para mover um pool para fora do mercado mais amplo abre um backrun para realinhá-lo. Quanto maior o swap e mais fino o pool, maior o ciclo.
- Atualizações de oráculo. Todo local que precifica a partir de um oráculo — mercados monetários, DEXs perpétuos — torna-se arbitragem no instante em que o feed se move. O backrun de atualização de oráculo que impulsiona as liquidações, dissecado na peça de liquidações, é o mesmo movimento aplicado a um feed de preços em vez de um swap: a atualização é o tiro de partida, e o pesquisador aterrissa imediatamente atrás dela.
- Liquidez nova ou removida. Uma grande cunhagem ou queima de LP altera a profundidade de um pool e pode deixá-lo momentaneamente fora do preço; a liquidez just-in-time (JIT) é a versão adversária, adicionando profundidade em torno de um único swap pendente e retirando-a imediatamente depois.
- Resíduo de roteamento entre pools. Um roteador que divide um swap entre pools raramente deixa todos eles exatamente no mesmo preço, e os pequenos desequilíbrios que ele deixa são ciclos passíveis de backrun.
A conclusão prática: um bot de arbitragem é principalmente um ouvinte de eventos, não um solucionador de grafos. Ele observa esses gatilhos, recalcula apenas o subgrafo que cada um toca e dispara um pacote — é por isso que o design de atualização incremental da peça de algoritmos de grafo importa muito mais do que a velocidade de busca bruta sobre o grafo completo.

O leilão consome a margem
Agora a parte desconfortável. Você encontrou o ciclo. Todos os outros também. A oportunidade é determinística, atômica e sem capital — o que significa que a única variável restante é quem aterrissa no slot vencedor, e isso é resolvido por um leilão de prioridade.
Desde a migração para a separação proponente-construtor e MEV-Boost (a infraestrutura detalhada no próximo Cadeia de suprimentos MEV: PBS e MEV-Boost), os pesquisadores não travam mais guerras públicas de gás no mempool. Eles submetem pacotes privadamente aos construtores de blocos, anexando uma oferta — seja como uma alta taxa de prioridade ou como um pagamento direto ao construtor. O construtor monta o bloco mais valioso que pode e o encaminha ao proponente. Do ponto de vista do pesquisador, este é um leilão de lance selado pelo direito de ser o endereço que executa um prêmio conhecido e determinístico.
Modele-o. Seja o lucro bruto de arbitragem — os $673 do ciclo trabalhado acima, por exemplo — e seja o custo de cada pesquisador (gás, taxa de flash loan) . Para ganhar o slot, você oferece contra todos os outros pesquisadores que calcularam o mesmo . Seu lucro líquido se você ganhar é
Você quer o mais baixo possível; você também quer vencer. Mas seus concorrentes enfrentam a aritmética idêntica contra o idêntico. Em um leilão de lance selado sobre um prêmio de valor comum que todos podem calcular exatamente, o lance de equilíbrio sobe até consumir quase todo o excedente: , e o vencedor fica apenas com , a margem mínima pela qual superou o segundo colocado. Esse $673 não fica com quem encontrou o ciclo; quase tudo é ofertado diretamente ao construtor e, em última análise, ao proponente que vendeu a ordenação. Isso não é uma falha de mercado; é o que um leilão competitivo deve fazer.
A reversão não é gratuita — economia da taxa de falha
Há um segundo custo que o modelo ingênuo omite, e é ele que realmente separa os operadores. Quando você perde o leilão, seu pacote simplesmente não é incluído — você não paga nada, que é o objetivo da submissão de pacotes em relação às antigas guerras públicas de gás. Mas quando você ganha o leilão com um pacote cuja simulação estava desatualizada — as reservas se moveram entre sua leitura e a inclusão — sua guarda require(end >= start + minProfit) dispara e a transação reverte on-chain, e você paga gás pela reversão. A atomicidade protege seu principal, não seu gás.
Assim, o valor esperado real do pesquisador por oportunidade é
onde é o gás queimado em um pacote que foi incluído, mas reverteu. Aumentar sua oferta ganha mais slots, mas também ganha mais slots desatualizados, aumentando o termo de reversão. Os operadores que sobrevivem não são aqueles que encontram mais ciclos — todos encontram os mesmos ciclos — mas aqueles com mais baixo (caminhos de execução mais baratos e mais apertados), menor probabilidade de reversão (simulação mais recente, melhor previsão de inclusão) e a disciplina de não licitar em oportunidades marginais onde o custo de reversão esperado supera o pequeno excedente. A vantagem, tal como é, reside inteiramente nesses custos de segunda ordem.
A forma empírica corresponde ao modelo. Quando muitos bots simulam a mesma oportunidade on-chain para o mesmo valor de lucro, o pacote vencedor rotineiramente entrega a grande maioria do lucro bruto ao construtor e validador — a mesma perda de mais de 90% que medimos para liquidações, pela mesma razão: informação perfeita sobre um prêmio comum mais um leilão de lance selado equivale a margens reduzidas ao custo do perdedor marginal. A vantagem do pesquisador não é o tamanho de , que todos veem. É qualquer vantagem privada em (execução mais barata, melhor roteamento, menor taxa de falha) ou em ver antes da multidão.
O que nos diz exatamente onde o lucro ainda sobrevive:
- Cadeias de cauda longa e mercados de construtores imaturos. Em cadeias onde poucos pesquisadores sofisticados operam e o leilão de construtores é escasso ou ausente, o lance permanece baixo porque não há ninguém para superá-lo. O mesmo ciclo que rende na mainnet do Ethereum pode render a maior parte de em uma L2 tranquila ou uma alt-L1. A vantagem é a concorrência, não a inteligência.
- Pools de baixa concorrência e ativos exóticos. Oportunidades cuja saída lucrativa exige o consumo de liquidez DEX fina e dependente do caminho são difíceis de simular corretamente. Um pesquisador que modela a viagem de ida e volta completa — incluindo o slippage de saída em um token ilíquido — captura ciclos que bots ingênuos perdem ou precificam incorretamente, resultando em uma reversão. Aqui, a vantagem é genuinamente a qualidade da execução, não a latência.
- Arbitragem CEX-DEX. A maior categoria individual — e a que quebra a atomicidade. Ela ganha sua própria seção, a seguir.
O resumo honesto do jogo atômico on-chain: é uma excelente maneira de aprender os internos do EVM, a infraestrutura do construtor e a teoria dos leilões da maneira mais difícil. É uma maneira brutal de ganhar a vida, porque o que você está vendendo — a capacidade de encontrar e executar um ciclo determinístico — é exatamente o que seus concorrentes também estão vendendo, e o leilão o precifica ao custo.

Arbitragem CEX-DEX: a maior categoria, e não é atômica
A maior fonte única de valor extraível on-chain não é o ciclo atômico e organizado. É a arbitragem CEX-DEX: o preço de um ativo em uma exchange centralizada diverge de seu preço em uma DEX, e um pesquisador negocia ambos os lados para fechar a lacuna. Estudos de arbitragem não atômica — mais diretamente Non-Atomic Arbitrage in Decentralized Finance (2024) de Heimbach, Pahari e Schertenleib — atribuem centenas de milhões de dólares em valor extraído a arbitradores entre exchanges ao longo de um período de vários anos, excedendo as categorias atômicas e puramente on-chain. Se você quer entender onde o dinheiro no MEV realmente está, é aqui.
E isso viola a propriedade que tornava tudo o que foi dito acima seguro. Uma perna da negociação vive em uma exchange centralizada; a outra vive on-chain. A perna on-chain é atômica — ela é incluída em um bloco ou reverte — mas a perna CEX é uma ordem separada em um motor de correspondência separado, liquidando em seu próprio cronograma. As duas pernas não podem ser envolvidas em uma única reversão. Não há require(end >= start) abrangendo ambos os locais. O pesquisador faz um backrun em um swap na Uniswap para comprar WETH barato on-chain, e separadamente vende WETH na Binance para realizar o spread — e entre esses dois eventos, o preço pode se mover. A arbitragem CEX-DEX carrega o risco de inventário que a arbitragem atômica elimina.
Esse risco muda toda a forma do negócio:
- Você deve pré-posicionar o inventário em ambos os locais. Você não pode fazer um flash loan na perna CEX. Para vender WETH na Binance no instante em que sua compra on-chain for confirmada, você já deve ter WETH na Binance (e moeda de cotação on-chain, e vice-versa para a outra direção). O capital, que o flash loan baniu da arbitragem atômica, volta como um requisito rígido — inventário em várias exchanges, exposto.
- Você deve proteger a perna aberta. Entre a execução on-chain e a execução CEX, você está direcionalmente comprado ou vendido no ativo. Operadores sérios de CEX-DEX gerenciam isso como um livro continuamente gerenciado por delta: eles protegem a exposição em um futuro perpétuo, tratam o custo de financiamento dessa proteção como um custo de fazer negócios e gerenciam a base entre o spot e o perp. Este não é um problema novo — é exatamente a mecânica da arbitragem de taxa de financiamento entre exchanges, onde todo o jogo é manter pernas compensatórias entre locais e financiar a proteção através do financiamento. A arbitragem CEX-DEX é essa disciplina com uma perna presa a um bloco.
- A vantagem é parcialmente informacional e estrutural. Como o preço CEX lidera o preço DEX (os livros de ordens centralizados são atualizados continuamente; as cotações AMM só se movem quando alguém negocia), um pesquisador que lê o livro de ordens CEX sabe em que direção o próximo backrun deve ir antes que o preço on-chain se atualize. E, cada vez mais, os próprios construtores internalizam esse fluxo: um construtor que também opera uma mesa CEX-DEX pode ordenar o bloco em torno de suas próprias negociações. Isso borra a linha entre pesquisador e construtor e é uma das forças centralizadoras na cadeia de suprimentos MEV — as entidades que veem o maior fluxo de ordens e controlam a maior parte da ordenação também capturam a maior parte da arbitragem não atômica.
Assim, a troca é exatamente invertida em relação ao caso atômico. A arbitragem atômica é segura (reversão em caso de perda, sem inventário, sem capital), mas impiedosamente disputada (prêmio determinístico, leilão consome a margem). A arbitragem CEX-DEX é perigosa (risco real de inventário, capital real, uma proteção para financiar e gerenciar), mas muito maior e menos perfeitamente contestada, precisamente porque o perigo e a exigência de capital afastam os bots que só conseguem executar o loop atômico sem risco. O retorno extra é uma compensação pelo risco extra — que é o fato mais comum em finanças, finalmente se reafirmando em uma cadeia que passou uma seção inteira fingindo que dinheiro sem risco estava na mesa.
O que levar
Comprima o argumento aos seus pontos principais:
- A atomicidade é todo o modelo de segurança. Uma arbitragem multi-hop é uma transação com uma guarda
require(end >= start + minProfit); qualquer coisa que a torne não lucrativa reverte, então o arbitrador nunca mantém risco de inventário no meio do ciclo e nunca vende a última perna com prejuízo. - Flash loans desvinculam o lucro do capital. Empreste, arbitre e pague dentro de uma transação atômica; o credor é protegido pela mesma reversão que você. O vencedor não é o pesquisador com mais capital — capital não é o fosso.
- A detecção é a metade fácil e comoditizada. A busca de ciclo negativo de algoritmos de grafo para arbitragem é determinística e idêntica para todos; encontrar o ciclo apenas o qualifica para competir por ele.
- Backrunning é a forma benigna e dominante. Aterrar imediatamente após um grande swap ou uma atualização de oráculo realinha um pool mal precificado sem degradar a execução de ninguém — o oposto do sanduíche tóxico, e o que o MEV-Share tenta redistribuir em vez de suprimir.
- O leilão consome quase toda a margem. Em um leilão de construtor de lance selado sobre um prêmio comum e computável, os lances convergem para e mais de 90% vaza para o construtor e proponente. O lucro sobrevive apenas onde a concorrência é escassa: cadeias de cauda longa, pools ilíquidos e as saídas mais difíceis de simular.
- CEX-DEX é a maior categoria e não é atômica. Uma perna em uma CEX significa risco real de inventário, capital real e uma proteção para financiar — o manual de financiamento entre exchanges aplicado com uma perna presa a um bloco, e uma das forças que puxam a cadeia de suprimentos MEV em direção aos construtores que veem o maior fluxo.
A arbitragem on-chain parece, de fora, um quebra-cabeça sobre encontrar ciclos ocultos. Por dentro, é um leilão — e o quebra-cabeça foi resolvido para todos no mesmo instante. Saber onde o ciclo está nunca foi a vantagem. Ganhar o slot, ou negociar onde ninguém mais está licitando, sempre foi.
Referências
- Daian, Goldfeder, Kell, Li, Zhao, Bentov, Breidenbach, Juels (2019), Flash Boys 2.0: Frontrunning, Transaction Reordering, and Consensus Instability in Decentralized Exchanges. arXiv:1904.05234.
- Heimbach, Pahari, Schertenleib (2024), Non-Atomic Arbitrage in Decentralized Finance. arXiv:2401.01622 (IEEE S&P 2024).
- Robinson & Konstantopoulos (2020), Ethereum is a Dark Forest.
- Documentação de flash loans Aave v3 e flash-swaps Balancer / Uniswap v3 (tabelas de taxas).
- Documentação Flashbots: MEV-Boost, MEV-Share, leilões de fluxo de ordens (docs.flashbots.net).
Authors
Trading-systems engineer
Trading-systems engineer building bots since 2017: cross-exchange arbitrage (connected up to 30 venues), cointegration-based pairs arbitrage across spot and futures, scalping, news and sentiment-driven strategies, trend algorithms, and portfolio management and balancing algorithms. Also builds sub-millisecond order execution, big-data warehouses, backtesting engines, AI agents, and trading interfaces (incl. open-source profitmaker.cc). Stack: JS/TS, Python, Rust/Zig/Go, DevOps, backend, frontend, architecture.