Pular para o conteúdo

    Aperte / para buscar e [ ou ] para ir à página anterior ou à próxima.

    Como funciona por dentro

    Visão geral da arquitetura

    O protocolo é um pequeno conjunto de contratos na HyperEVM que lê preços da HyperCore, a camada da Hyperliquid, por meio de precompiladas e movimenta USDC nela. Esta página mostra os contratos e como eles se encaixam.

    Arquitetura on-chainAs intenções assinadas vão do relayer, passando pelo BatchExecutor, até o Exchange, que lê os preços da Hyperliquid nas precompiladas da HyperCore e movimenta USDC com o CoreWriter. Staking, Tokenomics e o token ficam ao lado.Off-chainsua carteira ou chave de sessãoassinarelayerHyperEVMenvia lotesBatchExecutorExchangebibliotecas de negociação, fila, fundos e adminSessionKeyManagerlentes (somente leitura)StakingTokenomicstokenDepositProxyFactoryHyperCorelê preçosmovimenta USDCBBOmarcação e oráculoCoreWriterUSDC spot
    Arquitetura on-chain. As intenções assinadas vão do relayer, passando pelo BatchExecutor, até o Exchange, que lê os preços da Hyperliquid nas precompiladas da HyperCore e movimenta USDC com o CoreWriter. Staking, Tokenomics e o token ficam ao lado.

    Contratos (HyperEVM)

    • Exchange: o contrato de trading. Ele guarda cada saldo, abre e fecha posições, acerta resultados, opera a fila de pagamentos e mantém o LP e as contas de taxas. Um ponto de entrada enxuto delega a quatro bibliotecas (trading, fila, fundos, administração). Aberturas e fechamentos chegam só pelo BatchExecutor; saques e chamadas de manutenção podem vir de qualquer pessoa.
    • BatchExecutor: a única porta de entrada do relayer. Aceita lotes só das chaves de relayer configuradas e repassa cada chamada assinada, apenas para uma lista fixa de funções.
    • SessionKeyManager: registra chaves de sessão, verifica cada assinatura e cada nonce para o Exchange e cuida da revogação. O registro chega pelo relayer; a revogação também pode ser uma chamada direta da sua carteira.
    • Token, Staking, Tokenomics: o token BACK (recurso de transferência desativado no lançamento), o contrato de staking com seu acumulador de recompensas e o contrato que calcula e cunha BACK pelas perdas e acompanha o LP contábil.
    • BuilderRegistry: os builders aprovados e a taxa única de builder, limitada a 15%. Não é atualizável: substituí-lo é uma nova implantação para a qual o SessionKeyManager passa a apontar.
    • DepositProxyFactory e DepositProxy: derivam o endereço de depósito determinístico de cada conta e implantam o pequeno contrato por trás dele, que só pode enviar USDC na HyperCore para o Exchange. Nenhum dos dois é atualizável: um endereço de depósito nunca deve mudar.
    • Lentes e PriceOracle: visões somente leitura sobre o Exchange e a HyperCore, e um auxiliar de preços, para apps e serviços. O Exchange lê as precompiladas diretamente, não por meio deles.

    Os endereços estão em endereços dos contratos.

    Precompiladas (HyperCore)

    • BBO 0x000000000000000000000000000000000000080e: a melhor oferta de compra e a melhor oferta de venda; o ponto médio entre elas é o preço de execução.
    • Mark 0x0000000000000000000000000000000000000806: o preço de marcação da Hyperliquid, lido pelas proteções de preço inativas e usado como alternativa quando um mercado é retirado.
    • Oracle 0x0000000000000000000000000000000000000807: o preço do oráculo da Hyperliquid, com os mesmos usos do preço de marcação.
    • CoreWriter 0x3333333333333333333333333333333333333333: o contrato de sistema que envia ações para a HyperCore. Os proxies de depósito o usam para enviar USDC para a conta do Exchange na HyperCore, e o Exchange o usa para pagar os saques na sua conta da HyperCore.

    As precompiladas de saldo permitem que o Exchange confira se um depósito realmente chegou antes de creditá-lo (Depósitos: proxies CREATE2).

    Uma operação de ponta a ponta

    Você assina uma intenção com sua chave de sessão e o app a envia ao relayer, que a confere e coloca na fila. O relayer junta as intenções da fila num lote e o envia ao BatchExecutor, que chama o Exchange uma vez por intenção. O Exchange verifica a assinatura pelo SessionKeyManager, lê o BBO para obter o preço de execução, abre a posição ou acerta o fechamento com o LP, atualiza seu saldo e, numa perda, faz o Tokenomics cunhar BACK para você. Intenções de muitas contas dividem uma transação, mas cada uma é acertada separadamente: o relayer marca cada chamada como autorizada a falhar, então uma intenção que falha não interrompe as outras.

    Frontends

    Toda abertura e todo fechamento são enviados pelo nosso relayer. Outro frontend pode produzir as mesmas assinaturas e enviá-las pela API do relayer (API de intenções), mas não pode enviar aberturas nem fechamentos direto aos contratos.

    Serviços off-chain

    Serviço Função
    Intake do relayer Aceita intenções assinadas, confere e reserva saldos.
    Motor do relayer Agenda as intenções da fila e as envia em lotes.
    Indexador Acompanha a rede bloco a bloco, confere os invariantes contábeis a cada bloco e transmite as atualizações das contas.
    API de leitura e stream Servem ao app o estado dos mercados, o histórico e o stream ao vivo da conta.
    Keepers Liquidam, coletam a fila, distribuem as recompensas de staking, ajustam os tetos de contratos em aberto, trocam a curva de pagamento conforme o cronograma e reexecutam cunhagens adiadas.
    Sweeper e worker de fundos Varrem os depósitos e encaminham os saques para outras redes.

    Nenhum desses serviços pode assinar por você nem mover seus fundos sem a sua assinatura. Se eles pararem, o trading para, mas o seu saldo livre continua podendo ser sacado pela sua carteira.

    Governança

    O dono de cada contrato atualizável é um timelock: uma atualização ou mudança de parâmetro é agendada pelo multisig de governança e só pode ser executada depois de 2 dias. Um segundo timelock, com um atraso de 7 dias, controla quem detém os papéis do primeiro. Um multisig guardião pode agir na hora numa emergência, dentro dos limites estreitos listados em Riscos.

    Última atualização: