Durante o desenvolvimento do líder @insidersdotbot, conduzi conversas aprofundadas com diversas equipes de arbitragem e criadores de mercado de alta frequência. A dúvida mais recorrente foi: como estruturar estratégias de arbitragem realmente eficazes?
Usuários, parceiros e amigos estão desbravando o caminho complexo e multidimensional da arbitragem na @Polymarket. Se você é ativo no Twitter, certamente já viu posts do tipo: “Ganhei X em prediction markets usando a estratégia de arbitragem Y.”
Porém, a maioria dos artigos simplifica em excesso a lógica central da arbitragem, reduzindo-a a “qualquer um pode fazer” ou “basta usar o Clawdbot”, sem explicar de forma sistemática como estruturar seu próprio sistema.
Se você quer entender de fato como as ferramentas de arbitragem da Polymarket geram lucro, recomendo a leitura deste artigo de @RohOnChain—a análise mais completa que já encontrei.
Assim como no meu artigo anterior, reestruturei e complementei o conteúdo, pois o texto original em inglês contém trechos altamente técnicos que exigem estudo adicional. Assim, você pode absorver todos os pontos-chave sem precisar buscar informações externas.
Imagine que você encontra um mercado na Polymarket:
Preço do YES: US$ 0,62, preço do NO: US$ 0,33.
Você pensa: 0,62 + 0,33 = 0,95, menos que 1—há uma oportunidade de arbitragem! Compre YES e NO por US$ 0,95 e, qualquer que seja o resultado, recebe US$ 1,00, lucrando US$ 0,05.
Correto.
Mas existe um ponto crucial—enquanto você faz essa soma manualmente, sistemas quantitativos realizam um processo completamente diferente.
Esses sistemas analisam simultaneamente 17.218 condições em 2^63 combinações possíveis, identificando inconsistências de preço em milissegundos. Quando você executa suas ordens, o spread já sumiu. O sistema já encontrou ineficiências semelhantes em dezenas de mercados, calculou o tamanho ótimo das posições considerando profundidade do livro de ofertas e taxas, executou todas as negociações em paralelo e alocou capital para a próxima oportunidade [1].
A diferença não é apenas velocidade. É infraestrutura matemática.
Veja um exemplo simples.
Mercado A: “Trump vai vencer a Pensilvânia?”
Preço do YES: US$ 0,48, preço do NO: US$ 0,52. Total: US$ 1,00.
Parece perfeito—nada de arbitragem, certo?
Errado.
Adicione outro mercado e o cenário muda.
Agora, Mercado B: “O Partido Republicano vai vencer a Pensilvânia por mais de 5 pontos percentuais?”
Preço do YES: US$ 0,32, preço do NO: US$ 0,68. Novamente, totalizando US$ 1,00.
Cada mercado parece “normal”. Mas há uma dependência lógica:
A eleição presidencial dos EUA é decidida estado a estado. Quem recebe mais votos leva todos os votos eleitorais (winner-takes-all). Trump é o candidato republicano. Logo, “Republicanos vencem a Pensilvânia” e “Trump vence a Pensilvânia” são o mesmo evento. Se os republicanos vencem por mais de 5 pontos, Trump não só vence, mas vence com folga.
Ou seja, o YES do Mercado B (vitória esmagadora dos republicanos) é um subconjunto do YES do Mercado A (Trump vence)—uma vitória esmagadora sempre implica vitória, mas uma vitória não necessariamente é esmagadora.
Essa dependência lógica cria oportunidades de arbitragem.
É como apostar em “Vai chover amanhã?” e “Vai ter tempestade amanhã?” Se há tempestade, necessariamente está chovendo (tempestade ⊆ chuva). Assim, “Tempestade YES” nunca deveria ser mais caro que “Chuva YES”. Se o mercado precifica errado, você compra barato e vende caro ao mesmo tempo, obtendo lucro sem risco. Isso é arbitragem.
Para qualquer mercado com n condições, existem 2^n combinações possíveis.
Parece viável? Veja um exemplo real.
Torneio NCAA de 2010 [2]: 63 jogos, cada um com vitória ou derrota. São 2^63 = 9.223.372.036.854.775.808 combinações—mais de 9 quintilhões. O mercado tinha mais de 5.000 livros de ofertas.
Qual o tamanho de 2^63? Mesmo analisando 1 bilhão de combinações por segundo, levaria cerca de 292 anos para esgotar todas. Por isso, busca exaustiva é inviável.
Checar cada combinação? Computacionalmente impossível.
Agora, observe a eleição dos EUA de 2024. Pesquisadores identificaram 1.576 pares de mercados com possíveis dependências [2]. Se cada par tem 10 condições, são 2^20 = 1.048.576 combinações por par. Multiplique por 1.576 pares. Quando seu notebook terminar, a eleição já acabou faz tempo.
Sistemas quantitativos não resolvem isso com Contra enumeração mais rápida, mas sim evitando a enumeração.
Eles usam programação inteira [3] para descrever “quais resultados são válidos”.
Exemplo real: mercado Duke vs. Cornell—cada time com inline 7 livros de ofertas (0 a 6 vitórias), totalizando 14 condições, ou 2^14 = 16.384 combinações.
Mas há uma restrição: ambos não podem vencer mais de 5 jogos, pois se enfrentariam nas semifinais (apenas um avança).
Como a programação inteira resolve? Apenas três restrições:
Restrição 1: Exatamente um dos 7 livros de ofertas de Duke é verdadeiro (Duke só pode ter um número final de vitórias).
Restrição 2: Exatamente um dos 7 livros de ofertas de Cornell é verdadeiro.
Restrição 3: Duke vence 5 + Duke vence 6 + Cornell vence 5 + Cornell vence 6 ≤ 1 (não podem ambos vencer tanto).
Três restrições lineares em vez de 16.384 verificações.
Busca exaustiva x programação inteira
Ou seja, busca exaustiva é como ler todo o dicionário para encontrar uma palavra. Programação inteira é ir direto à página certa. Não é preciso checar tudo—basta descrever como são as “respostas válidas” e deixar o algoritmo encontrar os preços fora do lugar.
Dados reais: 41% dos mercados oferecem arbitragem
O artigo original aponta que a equipe de pesquisa analisou dados de abril de 2024 a abril de 2025 [2]:
• 17.218 condições analisadas
• 7.051 condições com arbitragem em mercado único (41%)
• Desvio mediano de preço: US$ 0,60 (deveria ser US$ 1,00)
• 13 oportunidades confirmadas de arbitragem entre mercados
Desvio mediano de US$ 0,60 significa que o mercado frequentemente se desvia em 40%. Isso não é “quase eficiente”—é “altamente explorável”.
Encontrar arbitragem é uma coisa. Calcular a negociação ótima é outra.
Não basta “ajustar” ou “fazer média” nos preços. É preciso projetar o estado atual do mercado para o espaço livre de arbitragem, mantendo a estrutura informacional dos preços.
A abordagem intuitiva é buscar o “preço válido mais próximo” e negociar a diferença.
Matematicamente, significa minimizar a distância euclidiana: ||μ - θ||²
Mas isso trata todas as mudanças de preço como iguais.
Ir de US$ 0,50 para US$ 0,60 e de US$ 0,05 para US$ 0,15 são alterações de US$ 0,10—mas o conteúdo informacional é completamente diferente.
Por quê? Porque preços refletem probabilidades implícitas. Mudar de 50% para 60% é um ajuste moderado. De 5% para 15% é uma mudança radical—um evento quase impossível passa a ser “possível”.
Imagine pesar-se: de 70 kg para 80 kg é “ganhou um pouco”. De 30 kg para 40 kg (para um adulto), é “de quase morte para desnutrição severa”. Mesmo aumento de 10 kg, mas significado totalmente diferente. Mudanças de preço próximas de 0 ou 1 carregam muito mais informação.
O criador de mercado da Polymarket utiliza LMSR (Logarithmic Market Scoring Rule) [4], onde preços representam distribuições de probabilidade.
Aqui, a métrica de distância correta não é a euclidiana, mas sim a divergência de Bregman [5].
No LMSR, a divergência de Bregman vira divergência KL (Kullback-Leibler) [6]—medida de “distância informacional” entre distribuições de probabilidade.
Não precisa decorar a fórmula. O importante é saber:
A divergência KL atribui mais peso a mudanças próximas dos extremos. Sair de US$ 0,05 para US$ 0,15 é “mais longe” em KL do que de US$ 0,50 para US$ 0,60. Isso condiz com nossa intuição—mudanças extremas de preço representam choques informacionais maiores.
Exemplo: no mercado de previsão de @zachxbt, Axiom superou Meteora no último minuto, impulsionado por movimentos extremos de preço.
Projeção de Bregman x Projeção Euclidiana
Conclusão central do artigo citado:
O lucro garantido máximo de qualquer negociação equivale à distância da projeção de Bregman entre o estado atual do mercado e o espaço livre de arbitragem.
Resumindo: quanto mais os preços de mercado se afastam do “espaço válido”, maior o potencial de ganho. A projeção de Bregman mostra:
- O que comprar ou vender (direção da projeção = direção da negociação)
- Quanto comprar ou vender (considerando profundidade do livro de ofertas)
- Quanto você pode ganhar (distância da projeção = lucro máximo)
O maior arbitrador lucrou US$ 2.009.631,76 em um ano [2]. Sua estratégia era resolver esse problema de otimização mais rápido e com token mais precisão que qualquer outro.
Politopo marginal e arbitragem
Imagine-se no topo de uma montanha, com um rio (espaço livre de arbitragem) ao pé. Sua posição atual (preços de mercado) está a certa distância do rio.
A projeção de Bregman ajuda a encontrar o “caminho mais curto até o rio”—não a distância em linha reta, mas o trajeto mais curto considerando o terreno (estrutura do mercado). O comprimento desse caminho é seu lucro máximo.
Agora você sabe: para calcular a arbitragem ótima, é preciso uma projeção de Bregman.
Mas surge um problema—calcular diretamente a projeção de Bregman não é viável.
Por quê? Porque o espaço livre de arbitragem (politopo marginal M) tem exponencialmente muitos vértices. Otimização convexa padrão requer acesso ao conjunto completo de restrições, ou seja, enumerar todos os resultados válidos. Isso é impossível em larga escala.
A genialidade do algoritmo Frank-Wolfe [7] é não tentar resolver tudo de uma vez, mas convergir passo a passo.
Veja como funciona:
Passo 1: Comece com um pequeno conjunto de resultados válidos conhecidos.
Passo 2: Otimize sobre esse conjunto para encontrar a melhor solução.
Passo 3: Use programação inteira para encontrar um novo resultado válido e adicione ao conjunto.
Passo 4: Verifique se já está próximo do ótimo. Se não, volte ao passo 2.
Cada iteração adiciona apenas um vértice. Mesmo após 100 iterações, você rastreia só 100 vértices—não 2^63.
Iteração Frank-Wolfe
Imagine buscar a saída em um labirinto gigante.
O método exaustivo é percorrer todos os caminhos. O método Frank-Wolfe é escolher um caminho aleatório e, a cada bifurcação, perguntar a um “guia” (solucionador de programação inteira): “Daqui, para que lado é mais provável encontrar a saída?” E seguir nessa direção. Não é preciso explorar o labirinto inteiro—basta escolher certo em cada ponto chave.
Cada iteração do Frank-Wolfe exige resolver um problema de programação linear inteira. Em teoria, isso é NP-difícil (não há algoritmo rápido universal).
Mas solucionadores modernos como o Gurobi [8] conseguem lidar eficientemente com problemas bem estruturados.
A equipe de pesquisa utilizou o Gurobi 5.5. Tempos reais de resolução [2]:
• Iterações iniciais (poucos jogos finalizados): menos de 1 segundo
• Meio do torneio (30–40 jogos finalizados): 10–30 segundos
• Fase final (50+ jogos finalizados): menos de 5 segundos
Por que é mais rápido no fim? Porque, à medida que mais resultados são conhecidos, o espaço de soluções viáveis diminui. Menos variáveis, restrições mais rígidas, resolução mais rápida.
O Frank-Wolfe padrão tem um problema técnico: quando os preços se aproximam de 0, o gradiente do LMSR tende a menos infinito, causando instabilidade.
A solução é o Barrier Frank-Wolfe: otimizar não sobre o politopo M completo, mas sobre uma versão “encolhida” M’. O parâmetro de encolhimento ε diminui adaptativamente a cada iteração—começando longe da borda (para estabilidade), aproximando-se gradualmente do limite real (para precisão).
Pesquisas mostram que, na prática, 50 a 150 iterações são suficientes para convergência [2].
O artigo revela um achado importante [2]:
Nos primeiros 16 jogos do torneio NCAA, o Frank-Wolfe market maker (FWMM) e um criador de mercado linear simples (LCMM) tiveram desempenho semelhante—pois o solucionador de programação inteira ainda era lento.
Mas após 45 jogos, foi completada a primeira projeção de 30 minutos.
Dali em diante, o FWMM superou o LCMM em precificação em 38%.
O ponto de virada: quando o espaço de resultados ficou pequeno o bastante para a programação inteira resolver dentro da janela de negociação.
O FWMM é como um estudante aquecendo no início da prova; depois que embala, domina. O LCMM é o aluno constante, porém limitado. A diferença: o FWMM possui uma “arma” superior (projeção de Bregman), mas precisa de tempo para “carregar” (esperar o solucionador).
Você detectou arbitragem. Calculou a negociação ótima via projeção de Bregman.
Agora, precisa executar.
É aqui que a maioria das estratégias falha.
A Polymarket utiliza um CLOB (Central Limit Order Book) [9]. Diferente de exchanges descentralizadas, as negociações em CLOB são executadas sequencialmente—não há garantia de que todas as ordens serão preenchidas ao mesmo tempo.
Seu plano de arbitragem:
Comprar YES a US$ 0,30. Comprar NO a US$ 0,30. Custo total: US$ 0,60. Independente do resultado, recebe US$ 1,00. Lucro: US$ 0,40.
Realidade:
Envia ordem de YES → preenchida a caution US$ 0,30 ✓
Sua ordem movimenta o preço de mercado.
Envia ordem de NO → preenchida a US$ 0,78 ✗
Custo total: US$ 1,08. Pagamento: US$ 1,00. Resultado: prejuízo de US$ 0,08.
Uma perna é preenchida, a outra não. Você fica exposto.
Por isso, o artigo só considera oportunidades com margem de lucro acima de US$ 0,05 [2]. Spreads menores são eliminados pelo risco de execução.
Risco de execução não atômica
Não presuma que sempre preencherá ao preço cotado. É preciso calcular o Preço Médio Ponderado por Volume (VWAP) [10].
Método da equipe de pesquisa: para cada bloco na cadeia Polygon (aproximadamente a cada 2 segundos), calcula-se o VWAP de todas as negociações YES e NO daquele bloco. Se |VWAP_yes + VWAP_no - 1,0| > 0,02, é registrada como oportunidade de arbitragem [2].
VWAP é o “preço médio que você realmente paga”. Se quiser comprar 10.000 tokens e o livro de ofertas mostra US$ 0,30 para 2.000, US$ 0,32 para 3.000, US$ 0,35 para 5.000—seu VWAP é (2000×0,30 + 3000×0,32 + 5000×0,35) / 10000 = US$ 0,326. Bem acima do “melhor preço” de US$ 0,30 que você viu.
Mesmo que os preços estejam desalinhados, seu lucro é limitado pela liquidez disponível.
Exemplo real [2]:
Mercado mostra arbitragem: preços YES somam US$ 0,85. Lucro potencial: US$ 0,15 por megadolar. Mas a profundidade do livro nesse preço é de apenas US$ 234. Lucro máximo extraível: US$ 234 × 0,15 = US$ 35,10.
Para arbitragem entre mercados, é preciso liquidez em todas as posições ao mesmo tempo. A menor liquidez disponível define o teto.
Por isso, nas plataformas quantitativas atuais, o impacto dos preços das ordens no preço de execução é determinante.
Esta é a resposta para este desafio durante o período Beta público.
A teoria é limpa. A produção é complexa.
Veja como é um sistema real de arbitragem em operação [2].
Dados em tempo real: conexão WebSocket com a API da Polymarket [9], recebendo atualizações do livro de ofertas, notificações de negociações e eventos de criação/liquidação de mercados.
Dados históricos: consulta de eventos de contratos via API do nó Alchemy Polygon—OrderFilled (negociação executada), PositionSplit (novo token emitido), PositionsMerge (token queimado).
A equipe de pesquisa analisou 86 milhões de negociações [2]. Essa escala exige infraestrutura robusta, não apenas scripts.
P.S. Atualmente, nós
planejamos abrir uma API de signals negociação de alta velocidade. Se pretende usar um modelo similar e deseja acesso antecipado, envie uma DM.
Para 305 mercados eleitorais dos EUA, existem 46.360 pares possíveis para análise. Manualmente, impossível.
A equipe de pesquisa utilizou uma abordagem engenhosa: empregou o modelo de linguagem DeepSeek-R1-Distill-Qwen-32B para triagem inicial [2].
Entrada: descrições das condições de dois mercados. Saída: JSON com cominações válidas de resultados.
Depois, três camadas de validação: cada mercado tem exatamente uma condição verdadeira? O número de combinações válidas é inferior a n × m (indicando dependência)? O subconjunto dependente atende às condições de arbitragem?
Resultado: 40.057 pares independentes (sem arbitragem) → 1.576 pares dependentes (potencial de arbitragem) → 374 pares atendendo critérios rigorosos → 13 pares confirmados exploráveis por humanos [2].
A precisão do LLM em mercados complexos de múltiplas condições é de 81,45%. Suficiente para triagem inicial, mas a verificação manual é indispensável antes da execução.
Camada 1: restrições lineares simples (LCMM). Verificações rápidas de regras básicas—“soma das probabilidades igual a 1”, “se A implica B, então P(A) não pode exceder P(B)”. Executa em milissegundos, eliminando erros óbvios de precificação.
Camada 2: projeção via programação inteira (Frank-Wolfe + Gurobi). Este é o núcleo. Parâmetros: Alpha = 0,9 (extrair pelo menos 90% da arbitragem disponível), ε inicial = 0,1 (10% de encolhimento), limiar de convergência = 1e-6, tempo limite = 30 minutos. Iterações típicas: 50–150. Tempo de resolução por iteração: 1–30 segundos [2].
Camada 3: validação de execução. Antes de enviar ordens, simula preenchimentos no livro de ofertas atual. Checa: liquidez suficiente? Slippage esperado? Lucro garantido após slippage? Lucro acima do thought mínimo (US$ 0,05)? Só executa se todos os critérios forem atendidos.
A fórmula de Kelly padrão [11] indica qual fração do capital alocar em cada negociação. Para arbitragem, é preciso ajustar para risco de execução:
f = (b×p - q) / b × √p
Onde b é o percentual de lucro da arbitragem, p é a probabilidade de execução integral (estimada pela profundidade do livro de ofertas) e q = 1 - p.
Limite: 50% da profundidade do livro de ofertas. Acima disso, sua ordem move significativamente o mercado.
De abril de 2024 a abril de 2025, lucro total extraído [2]:
Arbitragem de condição única: comprar ambos barato US$ 5.899.287 + vender ambos caro US$ 4.682.075 = US$ 10.581.362
Rebalanceamento de mercado: comprar todos YES barato US$ 11.092.286 + vender todos YES caro US$ 612.189 + comprar todos NO US$ 17.307.114 = US$ 29.011.589
Arbitragem combinada entre mercados: US$ 95.634
Total: US$ 39.688.585
Top 10 arbitradores levaram US$ 8.127.849 (20,5% do total). Top arbitrador: US$ 2.009.632 em 4.049 negociações, média de US$ 496 por negociação [2].
Não é loteria. Não é sorte. É execução sistemática, matematicamente precisa.
Enquanto traders leem “10 dicas para prediction markets”, o que sistemas quantitativos fazem?
Usam programação inteira para detectar dependências em 17.218 condições. Usam projeção de Bregman para calcular arbitragem ótima. Executam o algoritmo Frank-Wolfe para lidar com explosão de gradiente. Usam VWAP para estimar slippage e executam ordens em paralelo. Extraem sistematicamente US$ 40 milhões em lucro garantido.
A diferença não é sorte. É infraestrutura matemática.
O artigo é público [1]. Os algoritmos são conhecidos. Os lucros são reais.
A verdadeira questão: você consegue construir antes dos próximos US$ 40 milhões serem extraídos?
• Politopo marginal → Conjunto de todos os preços válidos. Preços devem estar nessa região para não haver arbitragem.
• Programação inteira → Descreve resultados válidos com restrições lineares, evitando enumeração exaustiva. Comprime 2^63 verificações em poucas restrições [3].
• Divergência de Bregman / Divergência KL → Mede a “distância” entre distribuições de probabilidade. Mais adequada que a distância euclidiana para cenários de preço/probabilidade. Dá mais peso a mudanças próximas dos extremos [5][6].
• LMSR (Logarithmic Market Scoring Rule) → Mecanismo de precificação do criador de mercado da Polymarket; preços representam probabilidades implícitas [4].
• Algoritmo Frank-Wolfe → Algoritmo de otimização iterativo que adiciona um novo vértice por iteração, evitando enumeração de resultados válidos exponenciais [7].
• Gurobi → Solucionador de programação inteira líder do setor, o “guia” de cada iteração Frank-Wolfe [8].
• CLOB (Central Limit Order Book) → Mecanismo de negociação da Polymarket; ordens são executadas em sequência, sem atomicidade [9].
• VWAP (Preço Médio Ponderado por Volume) → Preço médio realmente pago, considerando profundidade do livro de ofertas. Mais realista que a “melhor cotação” [10].
• Fórmula de Kelly → Indica qual fração do capital alocar em uma negociação, equilibrando retorno e risco [11].
• Execução não atômica → Quando múltiplas ordens não são garantidas de serem preenchidas simultaneamente. Uma perna é preenchida, a outra não—risco de exposição.
• DeepSeek → Modelo de linguagem utilizado para triagem de dependências de mercado, precisão de 81,45%.
[1] Post original: https://x.com/RohOnChain/status/2017314080395296995
[2] Artigo de pesquisa “Unravelling the Probabilistic Forest: Arbitrage in Prediction Markets”: https://arxiv.org/abs/2508.03474
[3] Fundamentação teórica “Arbitrage-Free Combinatorial Market Making via Integer Programming”: https://arxiv.org/abs/1606.02825
[4] Explicação do LMSR: https://www.cultivatelabs.com/crowdsourced-forecasting-guide/how-does-logarithmic-market-scoring-rule-lmsr-work
[5] Introdução à divergência de Bregman: https://mark.reid.name/blog/meet-the-bregman-divergences.html
[6] Divergência KL - Wikipédia: https://en.wikipedia.org/wiki/Kullback%E2%80%93Leibler_divergence
[7] Algoritmo Frank-Wolfe - Wikipédia: https://en.wikipedia.org/wiki/Frank%E2%80%93Wolfe_algorithm
[8] Gurobi Optimizer: https://www.gurobi.com/
[9] Documentação da API CLOB da Polymarket: https://docs.polymarket.com/
[10] Explicação do VWAP - Investopedia: https://www.investopedia.com/terms/v/vwap.asp
[11] Fórmula de Kelly - Investopedia: https://www.investopedia.com/articles/trading/04/091504.asp
[12] Artigo da Decrypt “The $40 Million Free Money Glitch”: https://decrypt.co/339958/40-million-free-money-glitch-crypto-prediction-markets





