A PaperTrade relatou tentativas de manipular os melhores preços de compra e venda (BBO) na Hyperliquid entre 10 e 11 de outubro de 2026. Essas cotações eram usadas para avaliar posições de negociação sintéticas. O projeto reconheceu as tentativas em 11 de outubro. A conta examinada nesta análise sacou 1,279,106.191184 USDC a mais do que depositou na plataforma.
A PaperTrade liquidava posições fechadas pelo ponto médio entre os melhores preços de compra e venda vigentes. Ao mesmo tempo, o ajuste para baixo no lucro, o chamado haircut, era calculado usando um tamanho de posição de referência fixo.
Endereços e suas funções
Todos os endereços abaixo estão na rede HyperEVM, que usa o chain ID 999.
| Rede | Endereço | Função estabelecida |
|---|---|---|
| HyperEVM | 0x2025137a136bea7446deba681cbfc7cf1970840e | A conta de negociação examinada nesta análise. |
| HyperEVM | 0x6cd5661646289fb6e65ea5c032310fded797d0a2 | O contrato proxy da exchange que registra posições, saldos e saques. |
| HyperEVM | 0xa9b4c7b7ca5835652d81e25739c870d49f39cc2e | O contrato proxy do PriceOracle, o componente que busca os dados de preço. |
| HyperEVM | 0x3997ffc8cbd281d4fc8d0548e505ae2fbbbd985a | A implementação do PriceOracle executada nas transações de abertura e fechamento da posição examinada. |
Contexto
A PaperTrade oferecia negociação alavancada em posições sintéticas lastreadas pelo pool de liquidez Martingaler. Abrir uma posição criava uma exposição de negociação interna: a PaperTrade não fazia uma ordem de compra ou venda equivalente para o ativo real na Hyperliquid. Quando uma posição era fechada, seu resultado financeiro, o lucro ou prejuízo (PnL), era liquidado com os fundos do pool.
O PriceOracle buscava os melhores preços de compra e venda vigentes na Hyperliquid por meio de um mecanismo especial do sistema chamado precompile, no endereço 0x080e, e então calculava o ponto médio desses preços. Esse valor era usado como o preço de execução da negociação. Quando uma posição lucrativa era fechada, aplicavam-se uma faixa de limite, um ajuste de lucro para impacto assimétrico no preço e uma taxa sobre fechamentos lucrativos. Caso não houvesse liquidez suficiente para um pagamento, os pagamentos eram colocados em fila.
Assim, o preço vinha das melhores cotações da Hyperliquid, enquanto a posição sintética era lastreada pelo pool da PaperTrade. O valor do pagamento dependia do tamanho da posição, embora uma negociação do tamanho correspondente não necessariamente ocorresse no mercado pelo ponto médio utilizado.
Como os eventos se desenrolaram
Todos os registros de horário abaixo estão em Tempo Universal Coordenado (UTC). As quatro etapas descrevem a abertura e o fechamento da posição da conta examinada, sua negociação externa e seus saques.
1. Abertura da posição
Em 10 de outubro, às 21:41:36, a conta 0x2025137a136bea7446deba681cbfc7cf1970840e abriu uma posição comprada (long) em ETH, uma aposta na alta do preço do Ethereum, de número 72098. Isso ocorreu na transação 0xe639…f225.

2. Fechamento da posição
Seis minutos depois, às 21:47:36, a posição foi fechada na transação 0xb5bc…df42d. O registro de fechamento mostra um preço de saída de $2,510.85. Nesse período, o preço se moveu a favor da posição em cerca de 17.55 pontos-base.
O rastreamento histórico de chamadas mostra a sequência Exchange → PriceOracle → mecanismo do sistema para buscar as melhores cotações BBO 0x080e. Esse mecanismo retornou os valores 251080 e 251090 em unidades de $0.01, ou seja, uma cotação de compra de $2,510.80 e uma cotação de venda de $2,510.90. O PriceOracle retornou 251085, correspondente ao preço de $2,510.85 registrado quando a posição foi fechada com sucesso. Ambas as leituras de cotações BBO nessa transação mostram os mesmos valores.
O spread entre compra e venda foi de $0.10, cerca de 0.40 pontos-base. O valor de 17.55 pontos-base reflete o retorno da posição entre a entrada e a saída ao longo de seis minutos, não um desvio em relação a um preço de mercado independente. Nenhum dos dois valores, isoladamente, prova que a cotação foi anormal ou deliberadamente influenciada. Este exemplo mostra como funcionaram as regras de liquidação registradas. A negociação alavancada comum permanece uma explicação suficiente para esta transação específica.

Esta é a etapa em que o preço de entrada se transforma em pagamento. Os preços são expressos em unidades de $0.01, então a faixa de limiar, calculada com arredondamento para baixo até um número inteiro, é:
O resultado corresponde ao cálculo registrado no fechamento da posição. Os valores na tabela são arredondados para seis casas decimais; os cálculos intermediários foram realizados com precisão total.
| Etapa do cálculo | Fórmula | Valor, USDC |
|---|---|---|
| Lucro bruto após a faixa de limiar | 10,000,000 × m | 17,355.223523 |
| Lucro ajustado | Lucro bruto × coeficiente | 13,494.728986 |
| Taxa sobre fechamento lucrativo | Lucro ajustado × 2% | 269.894580 |
| Lucro líquido após a taxa | Lucro ajustado - taxa | 13,224.834407 |
Com os mesmos preços e parâmetros, uma hipotética posição de $500K teria gerado 661.241720 USDC após a taxa. A posição registrada de $10M gerou 20 vezes mais, enquanto a redução percentual do lucro decorrente do ajuste de impacto no preço permaneceu a mesma em ambos os casos, em 22.243992%.
Assim, uma movimentação de preço de $4.40 gerou um lucro de 13,224.834407 USDC na posição examinada. Nos cinco segundos antes do fechamento dessa posição, a conta não realizou nenhuma negociação de ETH que resultasse no preenchimento de uma ordem. Portanto, este exemplo estabelece como o pagamento foi calculado, mas não revela uma negociação manipulativa correspondente.
Um pump de 100x, um empréstimo de $75M e um rollback da blockchain: o que aconteceu com a Tectonic?5 de set. de 2026Leia mais3. Negociação externa e liquidações repetidas
Entre 22:01:00 e 22:03:00, a mesma conta realizou 597 negociações de ETH na Hyperliquid: comprou 6,058.1450 ETH e vendeu 383.0414 ETH. O histórico mais completo coletado da conta contém 10,427 negociações de ETH, com um volume total de aproximadamente $231.84M.
O histórico da PaperTrade registra 337 posições de ETH fechadas, incluindo 296 fechadas com lucro. As posições lucrativas abrangeram seis tamanhos nocionais, de $500K a $10M. A exposição total foi construída ao longo de várias posições.

Dos 296 fechamentos lucrativos, 62 ocorreram dentro de um segundo de uma negociação de ETH feita pela mesma conta. Em 52 casos, a sobreposição temporal envolveu apenas negociações em que a conta atuou como maker, ou seja, forneceu liquidez ao mercado. Em outros 10 casos, houve negociações em que a conta atuou como taker, preenchendo ordens já colocadas. Esses últimos dez casos se enquadram em três transações de fechamento de posição dentro de dois segundos.
Por exemplo, a posição 69035 foi fechada com lucro em uma posição short, uma aposta na queda do preço, em $2,505.85, enquanto vendas taker em $2,505.80 foram preenchidas em tempo próximo. Em comparação, o fechamento da posição 71121 coincidiu no tempo com dez compras maker.
O rastro de transação reconstruído da posição 69035 mostra cotações de $2,505.80 e $2,505.90, cujo ponto médio é o $2,505.85 registrado. A transação da posição 71121 também mostra preços de $2,509.70 e $2,509.80, e o oráculo retorna o ponto médio de $2,509.75. Assim, as cotações de entrada reais dessas transações foram estabelecidas.
Testar uma influência deliberada no preço exige dados sequenciais de cotações em todo o mercado, de ordens colocadas e canceladas, bem como um preço de mercado independente para o mesmo período. Um timestamp correspondente, por si só, não é suficiente.
4. Saques
Durante o período examinado, cinco saques da Exchange corresponderam a registros de transação bem-sucedidos e a créditos de USDC na rede HyperCore.
| Horário do saque, UTC | Valor, USDC | Transação na HyperEVM |
|---|---|---|
| 10 de outubro, 21:13:59 | 17,961.112612 | 0x9979…cd72 |
| 10 de outubro, 21:34:09 | 131,739.237844 | 0x9a27…3fbc |
| 10 de outubro, 22:06:48 | 1,543,488.792097 | 0x4162…23b0 |
| 10 de outubro, 22:13:21 | 735,681.502282 | 0x136e…abd6 |
| 11 de outubro, 02:10:35 | 50,336.049203 | 0x0223…ac48 |
| Total sacado | 2,479,206.694038 |

O total de depósitos chegou a 1,200,100.502854 USDC, incluindo redepósitos de fundos previamente sacados. Subtraindo os depósitos do total de saques, obtém-se uma saída líquida da conta de 1,279,106.191184 USDC.
Ao mesmo tempo, o total de saques inclui capital inicial devolvido e fundos reutilizados.
Um ponto médio BBO sem verificação de preço de mercado independente
A ramificação decodificada do PriceOracle rejeita preços zerados e cotações inválidas nas quais o bid é maior que o ask e, em seguida, retorna o ponto médio atual das duas cotações. O código não contém nenhuma média de preços ao longo de um período nem uma verificação independente de desvio significativo em relação ao preço de mercado.
Essas verificações confirmam que as cotações têm um formato e uma relação válidos, mas não avaliam se há liquidez real suficiente para sustentar uma posição sintética do tamanho correspondente.

O percentual de ajuste não depende do tamanho da posição
A fórmula assimétrica de impacto no preço usa o parâmetro fixo referenceNotional, um valor nocional usado como base de cálculo, em vez do tamanho real da posição. Assim, o valor monetário do pagamento cresce com o tamanho da posição, mas o percentual de ajuste permanece o mesmo.
Para todos os seis tamanhos de posição, os resultados dos 296 fechamentos lucrativos correspondem à curva de cálculo documentada, com uma margem de até 0.000000001 USDC.

A resposta da PaperTrade e a devolução dos fundos
Em um comunicado de 11 de outubro, a PaperTrade reconheceu que, durante a madrugada, houve tentativas de manipular os melhores preços de compra e venda (BBO) de BTC e ETH na Hyperliquid. O projeto explicou que essas tentativas foram possibilitadas por limites de interesse aberto excessivamente flexíveis no lançamento da plataforma. Também informou que havia começado a reduzir os limites diretamente on-chain e no nível do relayer, o componente que repassa as solicitações de negociação.
A PaperTrade também afirmou que um dos usuários que obteve lucro devolveu quase todos os ganhos por meio de novas contas. A conta examinada registrou 30 liquidações subsequentes, que resultaram em perdas de 450,000 USDC. Essas perdas já estão incluídas no cálculo da saída líquida.
No entanto, as mudanças nos limites e a devolução dos fundos por meio de outras contas não foram confirmadas de forma independente.

