Como executar TWAP e VWAP pela API da Hyperliquid

6 de mai. de 2026
  • twap vwap hyperliquid

  • hyperliquid execution api

  • trading algorítmico twap

  • divisão de ordens grandes na hyperliquid

  • vwap em perpétuos on-chain

Quando uma ordem é grande o suficiente, executar tudo a mercado pode causar um impacto relevante no preço (market impact): a própria ordem de compra empurra o preço para cima, elevando o custo médio acima do esperado. Para lidar com isso, mesas profissionais usam algoritmos de execução. Entre os mais clássicos estão o TWAP, preço médio ponderado pelo tempo, e o VWAP, preço médio ponderado pelo volume.

A API aberta da Hyperliquid permite que desenvolvedores individuais implementem esses algoritmos no mercado de perpétuos on-chain. Neste artigo, vamos explicar como TWAP e VWAP funcionam, como implementá-los de forma prática e em quais cenários cada abordagem tende a fazer mais sentido. Para quem não quer escrever código, o OneKey Perps oferece um caminho mais simples para operar perpétuos on-chain, sem precisar criar a própria infraestrutura de execução.

O que é TWAP

TWAP significa Time-Weighted Average Price, ou preço médio ponderado pelo tempo. A ideia central é simples: dividir uma ordem grande em várias ordens menores, distribuídas de forma uniforme ao longo de um período.

Exemplo: suponha que você queira comprar US$ 1 milhão em contratos perpétuos de BTC ao longo de 1 hora. Uma execução TWAP poderia dividir a ordem em 60 partes, enviando uma ordem de cerca de US$ 16,7 mil por minuto. Assim, independentemente das oscilações pontuais, o preço médio final tende a ficar próximo do preço médio daquele intervalo, reduzindo o impacto de uma única ordem grande no livro.

A principal vantagem do TWAP é a simplicidade: ele não depende de dados de volume em tempo real. A desvantagem é que ele não diferencia períodos de alta e baixa liquidez. Mesmo em horários menos líquidos, o algoritmo continuará enviando ordens no mesmo ritmo, o que pode aumentar o slippage.

O que é VWAP

VWAP significa Volume-Weighted Average Price, ou preço médio ponderado pelo volume. Ele vai um passo além do TWAP: em vez de distribuir a execução apenas pelo tempo, o algoritmo também considera o volume negociado no mercado.

Na prática, uma estratégia VWAP estima a distribuição histórica ou atual de volume ao longo do período de execução. Em momentos de maior volume, ela executa uma parcela maior da ordem; em momentos de menor volume, reduz o tamanho das ordens. O objetivo é aproximar o preço médio de execução do VWAP do mercado.

O VWAP exige dados de volume em tempo real ou histórico e costuma ser mais complexo de implementar do que o TWAP. Em mercados nos quais a liquidez varia bastante ao longo do dia, porém, ele pode ajudar a reduzir custos de execução.

Por que essas estratégias importam em perpétuos on-chain

Em mercados de perpétuos on-chain, a profundidade de liquidez e a eficiência de descoberta de preço podem variar bastante conforme o horário, o ativo e as condições gerais do mercado. Além disso, o funcionamento de um motor de matching on-chain ou híbrido pode fazer com que o impacto de uma ordem grande no livro seja diferente do observado em corretoras centralizadas tradicionais.

A documentação oficial da Hyperliquid deve ser consultada para entender detalhes como profundidade do livro, tipos de ordem, limites e estrutura de taxas. Esses dados são importantes para definir parâmetros como tamanho das fatias, intervalo entre ordens, tolerância de slippage e regras de pausa.

TWAP vs. VWAP

CritérioTWAPVWAP
Base do algoritmoTempoVolume negociado
ComplexidadeMenorMaior
Dados necessáriosPreço e tempoPreço, volume histórico e/ou em tempo real
Melhor usoExecuções simples e previsíveisMercados com variação clara de liquidez
Risco principalExecutar em horários de baixa liquidezModelo de volume mal calibrado
Facilidade para desenvolvedores individuaisAltaMédia a alta

Para a maioria dos usuários técnicos que estão começando, TWAP costuma ser o primeiro passo mais razoável. VWAP faz mais sentido quando você já tem dados suficientes para entender o comportamento de volume do ativo e sabe validar se a execução está realmente melhorando.

Implementando TWAP com a REST API da Hyperliquid

Ideia básica

A lógica é enviar subordens em loop pela interface de ordens da Hyperliquid, aguardando um intervalo fixo entre cada envio:

import time
import math

def execute_twap(exchange, info, coin, total_size, is_buy, duration_seconds, num_slices):
    """
    Executa total_size em num_slices ordens iguais ao longo de duration_seconds segundos.
    """
    slice_size = total_size / num_slices
    interval = duration_seconds / num_slices

    for i in range(num_slices):
        # Obtém o preço de marcação atual
        ctx = info.meta_and_asset_ctxs()
        mark_px = get_mark_price(ctx, coin)

        # Ordem a mercado com tolerância de slippage
        # Também é possível usar ordens limitadas próximas ao book
        result = exchange.market_open(
            coin=coin,
            is_buy=is_buy,
            sz=round(slice_size, 4),
            slippage=0.005  # 0,5% de tolerância de slippage
        )

        print(f"[{i+1}/{num_slices}] Executado: {result}")

        if i < num_slices - 1:
            time.sleep(interval)

    print("Execução TWAP concluída")

Em produção, esse tipo de script precisa de proteções adicionais, como:

  • lógica de novas tentativas em caso de erro;
  • tratamento de ordens parcialmente executadas;
  • controle de tamanho mínimo por ordem;
  • limite de slippage;
  • pausa automática em caso de volatilidade extrema;
  • registro detalhado de cada execução para auditoria posterior.

Melhoria: usar ordens limitadas para reduzir custo

Trocar cada subordem de mercado por uma ordem limitada pode reduzir custos, especialmente quando há possibilidade de capturar taxa de maker. O trade-off é o risco de a ordem não ser executada.

Uma abordagem comum é usar um mecanismo de timeout: se a ordem limitada não for preenchida dentro de um período definido, o script cancela a ordem e envia uma ordem de mercado para completar a fatia restante.

def place_with_timeout(exchange, coin, is_buy, sz, limit_px, timeout_seconds=30):
    result = exchange.order(
        coin=coin,
        is_buy=is_buy,
        sz=sz,
        limit_px=limit_px,
        order_type={"limit": {"tif": "Gtc"}}
    )

    oid = result["response"]["data"]["statuses"][0]["resting"]["oid"]

    time.sleep(timeout_seconds)

    # Verifica se a ordem ainda está aberta
    open_orders = get_open_orders(coin)

    if any(o["oid"] == oid for o in open_orders):
        exchange.cancel(coin=coin, oid=oid)

        # Completa a parte restante com ordem a mercado
        exchange.market_open(
            coin=coin,
            is_buy=is_buy,
            sz=get_remaining_size(oid),
            slippage=0.01
        )

Essa lógica deve ser adaptada ao tamanho da posição, à liquidez do ativo e à urgência da execução. Quanto mais agressiva for a conversão para mercado, maior a chance de execução completa, mas também maior o risco de slippage.

Calculando VWAP em tempo real com dados de WebSocket

Para calcular VWAP, é necessário acumular preço vezes volume e dividir pelo volume total negociado:

class VWAPTracker:
    def __init__(self):
        self.cumulative_pv = 0.0  # soma de price * volume
        self.cumulative_v = 0.0   # soma de volume

    def on_trade(self, price, size):
        self.cumulative_pv += price * size
        self.cumulative_v += size

    @property
    def vwap(self):
        if self.cumulative_v == 0:
            return None

        return self.cumulative_pv / self.cumulative_v

Ao assinar o fluxo de negociações da Hyperliquid via WebSocket, cada trade recebido pode acionar o callback on_trade, atualizando o VWAP em tempo real. A estratégia de execução, então, compara o VWAP calculado com o preço atual de mercado para decidir quando e como enviar a próxima subordem.

A especificação exata de assinatura WebSocket, campos de trade e formato das mensagens deve ser conferida na documentação oficial da Hyperliquid, pois esses detalhes podem mudar com o tempo.

Sugestões de parâmetros

Os parâmetros dependem do ativo, da liquidez e do tamanho relativo da ordem. Como ponto de partida técnico, considere:

ParâmetroSugestão prática
Número de fatiasMais fatias reduzem impacto, mas aumentam complexidade e exposição ao tempo
Intervalo entre ordensDeve refletir a liquidez média e a urgência da execução
Slippage máximoDeve ser definido antes da execução e respeitado pelo script
Timeout de ordem limitadaCurto demais pode virar mercado com frequência; longo demais pode deixar a execução incompleta
Limite de variação de preçoPausar se o mercado se mover contra a execução além de um limite predefinido
Tamanho mínimo por ordemDeve respeitar limites do mercado e evitar ordens economicamente ineficientes

Uma boa prática é começar com tamanhos pequenos, registrar todos os resultados e comparar a execução real com um benchmark de TWAP ou VWAP antes de aumentar o volume.

Comparação com outros algoritmos em DEXs

  • dYdX também oferece APIs de ordem e pode ser usado para implementar uma lógica semelhante de TWAP.
  • GMX usa um modelo baseado em oráculos de preço, então a lógica de execução e o impacto esperado podem ser diferentes.
  • A Hyperliquid usa um modelo de livro de ofertas mais próximo do observado em corretoras centralizadas, o que torna a experiência de TWAP/VWAP mais diretamente transferível para quem já conhece execução em order book.

Não quer programar? Use o OneKey Perps

Nem todo usuário precisa criar um algoritmo de execução do zero. O OneKey Perps oferece uma interface simples para negociar perpétuos on-chain, com a segurança de assinatura de uma carteira de hardware OneKey. Para quem opera na Hyperliquid e quer uma experiência mais prática, isso reduz a necessidade de manter scripts, infraestrutura, chaves em ambiente de execução e monitoramento próprio.

Para ordens de porte médio, uma alternativa simples é usar o OneKey Perps para executar manualmente em partes, com ordens limitadas e controle de preço. Essa abordagem não substitui um algoritmo profissional, mas pode ajudar a reduzir impacto de mercado sem exigir código.

Se você procura um fluxo mais seguro e direto para negociar perpétuos on-chain, baixe ou experimente a OneKey e acesse o OneKey Perps. Use com cautela, defina limites antes de operar e evite aumentar tamanho de posição apenas porque a interface facilita a execução.

Perguntas frequentes

Q1: TWAP ou VWAP: qual é melhor para usar na Hyperliquid?

Para a maioria dos desenvolvedores individuais, TWAP é mais fácil de implementar e mais confiável como ponto de partida. VWAP pode funcionar melhor quando há padrões de volume mais previsíveis no mercado, mas exige análise histórica, dados em tempo real e calibração mais cuidadosa. Uma abordagem prudente é começar com TWAP e só avançar para VWAP depois de acumular dados suficientes.

Q2: algoritmos de execução eliminam totalmente o impacto de mercado?

Não. Eles podem reduzir o impacto, mas não eliminá-lo. O limite real depende da relação entre o tamanho da ordem e a liquidez disponível. O papel do algoritmo é distribuir a execução ao longo do tempo e, no caso do VWAP, em períodos de maior volume, não garantir um preço específico.

Q3: como avaliar se a execução foi boa?

Uma métrica comum é comparar o preço médio efetivo da execução com um benchmark, como o TWAP ou VWAP do período. Essa diferença costuma ser analisada como Implementation Shortfall. Para isso, registre cada subordem, horário, preço, quantidade, taxa e status de execução.

Q4: uma carteira de hardware OneKey pode ser integrada a scripts de execução?

Sim. A OneKey suporta interfaces padrão de assinatura Ethereum. Um script pode enviar a mensagem a ser assinada para um serviço local de assinatura conectado à carteira de hardware e, depois da confirmação, transmitir a ordem para a Hyperliquid. Em estratégias de baixa frequência, como TWAP com intervalos maiores, a latência da assinatura tende a ser menos relevante.

Q5: o que fazer se o mercado se mover muito durante a execução?

É recomendável definir proteções de preço. Por exemplo, se o preço de mercado se afastar mais de um limite predefinido em relação ao início da execução, como 2%, o script pode pausar automaticamente e aguardar estabilização ou encerrar a execução. Isso ajuda a evitar continuar acumulando posição em um cenário muito desfavorável.

Conclusão

TWAP e VWAP são ferramentas úteis para reduzir custo de execução em ordens grandes. Com a API aberta da Hyperliquid, essas técnicas também podem ser aplicadas ao mercado de perpétuos on-chain. Seja por código ou por execução manual em partes, a lógica principal é a mesma: distribuir a ordem no tempo, reduzir impacto no livro e buscar um custo médio mais controlado.

Para quem prefere uma experiência mais simples, o OneKey Perps é um bom ponto de partida prático para operar perpétuos on-chain com uma carteira OneKey, sem precisar implementar algoritmos próprios.

Aviso de risco: estratégias algorítmicas de execução não garantem preenchimento a um preço específico. Volatilidade, baixa liquidez, falhas técnicas e atrasos de assinatura ou transmissão podem fazer o custo real ficar muito diferente do esperado. A negociação de contratos perpétuos envolve alto risco e pode causar perda parcial ou total dos fundos. Este conteúdo é apenas uma referência técnica e não constitui aconselhamento financeiro, jurídico ou de investimento. Avalie os riscos e opere de acordo com sua própria situação.

Proteja sua jornada criptográfica com o OneKey

View details for Comprar OneKeyComprar OneKey

Comprar OneKey

A carteira de hardware mais avançada do mundo.

View details for Baixar aplicativoBaixar aplicativo

Baixar aplicativo

Alertas de golpe. Todas as moedas suportadas.

View details for OneKey SifuOneKey Sifu

OneKey Sifu

Clareza Cripto—A uma chamada de distância.