Como criar um bot market maker na Hyperliquid
Market making é uma das estratégias mais antigas dos mercados financeiros: o market maker mantém ordens simultâneas nos dois lados do book, compra e venda, buscando capturar o spread enquanto fornece liquidez ao mercado. Com o crescimento de exchanges on-chain de perpétuos como a Hyperliquid, desenvolvedores independentes e pequenas equipes quant também conseguem participar via API aberta, sem precisar de estrutura institucional. Source: Hyperliquid docs.
Neste artigo, você verá uma visão completa de como construir um bot market maker na Hyperliquid, incluindo lógica de estratégia, arquitetura técnica, gestão de risco e boas práticas para proteger as chaves de assinatura do bot com uma carteira de hardware OneKey.
Tabela comparativa principal
O que é market making em contratos perpétuos
No mercado spot tradicional, o market maker mantém estoque físico do ativo. Em contratos perpétuos, esse “estoque” aparece como exposição líquida comprada ou vendida. Um market maker ideal tenta manter a posição sempre neutra em delta, capturando o spread por meio de atualizações frequentes de ordens de compra e venda, em vez de apostar na direção do preço.
A arquitetura de livro de ofertas da Hyperliquid é semelhante à de exchanges centralizadas, mas a liquidação acontece on-chain e os fundos ficam sob autocustódia do usuário. A documentação oficial detalha tipos de ordem, estrutura de taxas e especificações da API — leitura essencial para quem pretende desenvolver um bot de market making.
Lógica central de um bot market maker
Cálculo do spread
A estratégia simétrica mais simples consiste em posicionar ordens nos dois lados do preço médio, ou mid price, com um spread definido:
preço_de_compra = mid_price * (1 - spread / 2)
preço_de_venda = mid_price * (1 + spread / 2)
A definição do spread precisa cobrir alguns custos e riscos:
- Taxas de negociação, especialmente taker fee quando houver execução agressiva
- Movimento adverso esperado do preço, conhecido como risco de adverse selection
- Custo de hedge relacionado à variação da funding rate
Consulte a documentação oficial da Hyperliquid para entender os níveis de taxa de cada mercado e escolha uma base de spread compatível com o tamanho do seu capital e com a liquidez do par negociado.
Lógica de atualização de ordens
Como o preço muda continuamente, as ordens precisam ser atualizadas com frequência para manter cotações competitivas. Gatilhos comuns incluem:
- Gatilho por tempo: atualizar a cada intervalo fixo, por exemplo, a cada 5 segundos
- Gatilho por desvio de preço: atualizar imediatamente quando o mid price se afastar das ordens atuais acima de um limite definido
- Gatilho por execução: após uma ordem ser executada, enviar novas ordens para recompor a liquidez
Em produção, normalmente se combina mais de um gatilho. O objetivo é evitar atualizações excessivas, que podem desperdiçar taxas e limite de API, sem deixar as cotações atrasadas a ponto de serem arbitradas.
Gestão de risco de inventário
Durante o market making, é comum acumular inventário: um lado do book executa repetidamente enquanto o outro não acompanha. Isso faz a posição líquida se afastar da neutralidade. O risco de inventário é um dos principais riscos da estratégia.
Formas comuns de controle:
- Inclinação de posição, ou skewing: se o bot estiver líquido comprado, ele ajusta tanto o bid quanto o ask para baixo, desestimulando novas compras e incentivando vendas, empurrando a posição de volta para neutro
- Limites rígidos de posição: se a exposição líquida ultrapassar um limite, o bot para de cotar no lado que aumentaria ainda mais o desequilíbrio até que a posição volte a um nível aceitável
# Pseudocódigo: inclinação de preço com base na posição líquida
position = get_net_position("BTC") # positivo = comprado, negativo = vendido
skew_factor = -position * inventory_risk_param # parâmetro ajustável de risco de inventário
bid_price = mid_price * (1 - spread / 2) + skew_factor
ask_price = mid_price * (1 + spread / 2) + skew_factor
Visão geral da arquitetura do sistema
Um bot market maker completo costuma ter os seguintes módulos:
┌─────────────────────────────────────────────────────┐
│ Loop principal do bot │
├──────────────┬──────────────┬────────────────────────┤
│ Camada de │ Camada de │ Camada de execução │
│ dados │ estratégia │ │
│ │ │ │
│ WebSocket │ Cálculo do │ Envio/cancelamento via │
│ Book de │ mid price │ REST API │
│ ofertas │ Cálculo de │ Gestão de ordens em lote │
│ Fills │ spread │ Assinatura │
│ │ Skew de │ Camada de hardware │
│ │ inventário │ OneKey │
│ │ Controle de │ │
│ │ risco │ │
└──────────────┴──────────────┴────────────────────────┘
│ │
Entrada de dados de mercado Envio de ordens à [Hyperliquid](https://app.hyperliquid.xyz/)
- A camada de dados assina snapshots do book e dados de execução em tempo real via WebSocket, conforme a seção de WebSocket da documentação da Hyperliquid
- A camada de estratégia calcula novas cotações com base nos dados mais recentes
- A camada de execução cancela e envia ordens em lote pela REST API, usando assinatura estruturada EIP-712 para proteger as requisições
Pontos importantes de implementação
Envio de ordens via REST API
A API de ordens em lote permite enviar ordens de compra e venda na mesma requisição, reduzindo latência de rede:
def refresh_quotes(exchange, coin, bid_px, ask_px, order_size):
# Cancela ordens antigas em lote
open_orders = get_open_orders(coin)
if open_orders:
cancel_ids = [o["oid"] for o in open_orders]
exchange.bulk_cancel(coin, cancel_ids)
# Envia novas cotações em lote
new_orders = [
build_limit_order(coin, is_buy=True, px=bid_px, sz=order_size),
build_limit_order(coin, is_buy=False, px=ask_px, sz=order_size),
]
return exchange.bulk_orders(new_orders)
Monitoramento de execuções via WebSocket
Polling via REST não é suficiente para notificações de execução em tempo real. O ideal é assinar eventos de fill do usuário por WebSocket:
def on_user_fill(fill_data):
coin = fill_data["coin"]
side = fill_data["side"] # "B" = compra executada / "A" = venda executada
sz = fill_data["sz"]
px = fill_data["px"]
update_inventory(coin, side, sz, px)
trigger_quote_refresh(coin) # Atualiza cotações imediatamente após o fill
Conexões WebSocket podem cair. Implemente reconexão automática, reassinatura de todos os canais e reconstrução do estado local após reconectar.
Principais riscos
Market making não é “arbitragem sem risco”. Os principais riscos incluem:
- Risco de inventário: a posição líquida pode crescer em uma direção e gerar perdas se o mercado continuar se movendo contra você
- Risco de adverse selection: participantes mais rápidos podem executar suas ordens quando sabem que o preço justo mudou
- Risco de liquidez: em mercados menos líquidos, pode ser difícil sair de posições acumuladas sem slippage relevante
- Risco de funding rate: contratos perpétuos têm pagamentos de funding que podem afetar o resultado da estratégia
- Risco operacional: bugs, falhas de conexão, problemas de API ou lógica de reconexão podem causar ordens incorretas ou exposição indesejada
- Risco de chave privada: se a chave de assinatura for comprometida, um invasor pode tentar enviar ordens ou movimentar fundos dependendo da arquitetura usada
Carteira de hardware OneKey: boas práticas para gestão de chaves do bot
Um bot market maker precisa assinar operações com frequência, mas isso não significa que a segurança das chaves deva ser reduzida. A carteira de hardware OneKey mantém as chaves privadas em um chip seguro isolado da internet. Mesmo que o servidor do bot seja comprometido, o invasor não consegue exportar a chave privada da carteira.
Arquitetura recomendada:
- Use o recurso de API Agent da Hyperliquid para criar uma carteira de subconta separada para o bot e vinculá-la à conta principal
- Gerencie a chave da subconta com uma carteira de hardware OneKey
- Faça o bot construir as mensagens de transação e enviá-las a um serviço local de assinatura
- Conclua a assinatura na OneKey e envie a requisição assinada à Hyperliquid
Com essa arquitetura, mesmo que o código do bot receba lógica maliciosa, ele não deve conseguir movimentar fundos sem passar pelo fluxo de revisão e assinatura da OneKey.
Sugestões de otimização de performance
- Combine cancelamento e novo envio em uma operação atômica quando possível; a Hyperliquid oferece suporte a interfaces em lote de cancel-and-place
- Priorize ordens
Alo, ou apenas maker, para evitar execução como taker e buscar a estrutura de taxas maker aplicável - Registre timestamp, preço e tamanho de cada execução para analisar a performance da estratégia com frequência, separando PnL por captura de spread e perdas de inventário
- Implemente circuit breakers: se a perda diária passar de um limite definido, o bot deve parar automaticamente e enviar alerta
- Controle a frequência de requisições para evitar rate limit e falhas em cascata
OneKey Perps como fluxo prático antes da automação
Se você ainda não quer construir um bot do zero, o caminho mais simples é começar operando e observando o mercado por uma interface pronta. O OneKey Perps oferece um fluxo integrado para negociar perpétuos, acompanhar posições e entender a dinâmica de margem, funding e execução antes de automatizar uma estratégia.
Baixe ou abra o app da OneKey, conecte sua carteira e experimente o OneKey Perps com tamanho reduzido para se familiarizar com o ambiente. Use essa etapa como aprendizado operacional, não como promessa de retorno. Depois, se fizer sentido para o seu perfil de risco e capacidade técnica, você pode evoluir para um bot com controles próprios.
Perguntas frequentes
Q1: Quanto capital é necessário para começar a fazer market making na Hyperliquid?
A Hyperliquid não define um capital mínimo oficial para market making. Na prática, o valor necessário depende do preço do mercado, do tamanho mínimo de ordem e da liquidez disponível. O recomendado é começar com escala muito pequena, testar a lógica da estratégia e aumentar gradualmente apenas depois que o sistema estiver estável.
Q2: De onde vem o lucro de um bot market maker?
A principal fonte é a captura do spread entre compra e venda. Quando uma ordem de compra e uma ordem de venda são executadas em preços próximos, o bot tenta capturar a diferença entre elas, descontadas as taxas. Mercados mais ativos e com maior volume podem oferecer mais oportunidades, mas também costumam ter mais concorrência.
Q3: Como testar o bot sem arriscar dinheiro real?
A Hyperliquid oferece ambiente de testnet. Consulte a seção de configuração de testnet na documentação oficial e altere os endpoints da API para fazer testes sem risco de capital real.
Q4: A carteira de hardware OneKey pode virar gargalo de performance?
A velocidade de assinatura da OneKey atende à maioria das estratégias quantitativas. Para cenários de frequência muito alta, como dezenas de assinaturas por segundo, pode fazer sentido combinar a arquitetura de API Agent com uma hot wallet limitada para operações de alta frequência, mantendo a OneKey para proteger a conta principal e aprovar movimentações de fundos. Essa abordagem busca equilibrar segurança e performance.
Q5: Como lidar com limites de API?
A Hyperliquid aplica limites de frequência de requisições. Consulte a documentação oficial para os limites atualizados. Uma boa prática é implementar algoritmo de token bucket para controlar o ritmo de chamadas e usar backoff automático ao receber respostas de rate limit, como HTTP 429.
Conclusão
Criar um bot market maker na Hyperliquid combina finanças quantitativas, engenharia de sistemas e segurança on-chain. Do cálculo de spread à gestão de inventário, cada parte da estratégia precisa ser medida e ajustada. Da chave em software à assinatura com hardware OneKey, cada camada adicional de segurança pode reduzir riscos operacionais importantes.
Se você ainda está explorando perpétuos, comece pelo caminho mais simples: baixe o app da OneKey, use o OneKey Perps em pequena escala e entenda a dinâmica do mercado antes de automatizar. Quando estiver pronto para desenvolver, consulte a documentação oficial da Hyperliquid para se aprofundar nos detalhes da API.
Aviso de risco: market making é uma estratégia quantitativa de alto risco e pode gerar perdas significativas por volatilidade de mercado, falhas técnicas ou ineficiência da estratégia. A alavancagem em contratos perpétuos amplia ganhos e perdas potenciais. Este conteúdo é apenas para fins educacionais e técnicos, não constitui recomendação de investimento, negociação, jurídica ou financeira. Avalie cuidadosamente sua tolerância a risco e cumpra as leis e regulações aplicáveis na sua região.



