Contratos
Estes são os endereços atuais dos contratos da Hypercall Mainnet Alpha. O escopo do lançamento é intencionalmente restrito enquanto a plataforma se expande.
Os componentes on-chain da Hypercall estão implantados na HyperEVM (chain ID 999). Cada usuário recebe um contrato Account. O Exchange mantém o USDC da plataforma e a custódia das opções, e executa diretivas assinadas contra as Accounts. O Factory cria as Accounts. O Option Registry implanta e reconhece os tokens de opção.
Responsabilidades dos Contratos
Exchange
Proxy atualizável. Versão 0.6.1 na mainnet.
- Mantém o USDC depositado na HyperCore em nome da plataforma (
depositUsdcFor,depositPmLiquidityFor). - Queima os ERC20s de opção no depósito e emite
Depositpara que o engine credite o valor (depositOption). - Registra as Accounts criadas pelo Factory e rastreia o manager de cada Account (
getAccounts,getAccount,managers). - Executa diretivas assinadas.
executeUserDirectiveencaminha à Account uma diretiva assinada pelo manager ou por uma API wallet.executeRsmDirectiveexecuta uma diretiva de sistema assinada pelo RSM (créditos, saques, estado de liquidação). Ambas só podem ser chamadas pelo sequencer da Hypercall: os usuários assinam e a Hypercall submete. - Rastreia os nonces usados por signatário (
isNonceUsed).
Account
Uma por usuário, implantada como BeaconProxy. Versão 0.2.4 na mainnet.
- Detém os saldos e posições do usuário na HyperCore. Perpétuos e spot ficam no ledger da Account na HyperCore.
- Tem um manager (a EOA que a criou) e qualquer número de API wallets nomeadas.
- Verifica as assinaturas das diretivas. API wallets podem assinar ordens e cancelamentos; todo o resto exige o manager. Veja Assinatura EIP-712.
- Chamadas diretas exclusivas do manager:
transferTo(recipient, token, amount)move tokens da HyperEVM para fora da Account, eapproveZeroFeeBuilder(builder)aprova um builder da Hyperliquid com taxa máxima de 0%. As ordens de perpétuos da Hypercall carregam o builder code da Hypercall, então essa aprovação é necessária uma vez antes da primeira ordem de perpétuo. depositSpotfaz a ponte de HYPE ou de um token spot suportado da HyperEVM para a Account na HyperCore.
Factory
Cria Accounts com createAccount(uint96 salt). O endereço é determinístico por manager e salt; predictAccount(manager, salt) o retorna antes da criação. Veja Onboarding.
Router
Auxiliar de depósitos. deposit(account, token, amount, isPerp) encaminha USDC para a HyperCore pela CoreDepositWallet da Circle, tokens spot pela Account e tokens de opção pelo Exchange. depositHype(account) faz a ponte de HYPE nativo.
Option Registry
Implanta os ERC20s de opção e é a fonte de verdade sobre se um token é uma opção suportada (isSupportedOption).
Tipos de Diretiva
| Diretiva | Signatário | Descrição |
|---|---|---|
hl_limit_order | API wallet | Ordem limitada na Hyperliquid |
hl_cancel_by_oid | API wallet | Cancelamento por ID de ordem da Hyperliquid |
hl_cancel_by_cloid | API wallet | Cancelamento por ID de ordem do cliente |
hc_update_api_wallet | Manager | Adiciona, substitui ou remove uma API wallet nomeada na Account |
hl_add_api_wallet | Manager | Aprova uma API wallet da Hyperliquid para a Account na HyperCore |
hl_send_asset | Manager | Envia ativos da Account na HyperCore |
hl_set_abstraction | Manager | Define o modo de conta da Account na HyperCore (somente unified) |
As diretivas RSM (créditos, saques, início e fim de liquidação, ordens de recuperação reduce-only) são assinadas pelo signatário RSM e submetidas pelo sequencer. Os usuários nunca as assinam. Veja Diretivas RSM.
Liquidação
A liquidação é executada no engine da Hypercall. Veja Liquidação. O Exchange tem hooks para que um contrato de leilão on-chain transfira o manager de uma Account para o licitante vencedor, mas nenhum leiloeiro está configurado na mainnet.
Confiança e Permissões
Esta seção é a referência de quem pode fazer o quê on-chain. Para a versão curta, veja Modelo de confiança.
Submissão
Apenas o sequencer da Hypercall tem o SEQUENCER_ROLE na Exchange, então ele é o único que chama executeUserDirective e executeRsmDirective. Você assina; a Hypercall submete. O sequencer não consegue forjar uma diretiva de usuário: a Account recupera o signatário por conta própria e aceita apenas o seu manager ou uma API wallet ativa.
Diretivas RSM
Quando o estado do engine exige uma ação on-chain, o signatário RSM assina uma diretiva e o sequencer a submete. A Exchange rejeita qualquer diretiva RSM que não seja assinada pelo signatário RSM registrado (Exchange.rsmSigner). O signatário RSM atual é controlado pelo operador; o roadmap vai publicar como esse papel será descentralizado ou terá a necessidade de confiança reduzida de outra forma.
Diretivas que a própria Exchange executa:
- Envios de USDC ou tokens spot a partir do saldo HyperCore da Exchange, incluindo saques padrão de USDC
- Mint de ERC20s de opções para um endereço quando opções são sacadas
- Início e encerramento da liquidação de uma Account
Diretivas que uma Account aceita do RSM, impostas pelo contrato Account:
- Ordens IOC reduce-only, ou vendas spot IOC próximas ao mercado para USDC, sobre o saldo da Account na Hyperliquid
- Envios de ativos a partir da Account na HyperCore, apenas para a Exchange (por exemplo, para cobrir um saldo negativo)
- Cancelamentos de ordens
As diretivas RSM continuam sendo executadas enquanto uma Account está em liquidação. A liquidação de opções no vencimento não é uma diretiva RSM: ela é aplicada ao caixa no estado do engine. O endereço do signatário RSM e cada execução de diretiva ficam visíveis on-chain.
Upgrades
- Exchange e Option Registry são proxies atualizáveis.
- Account e Option Token são BeaconProxies. Todas as Accounts rodam a mesma implementação, então um único upgrade do Account Beacon altera todas as Accounts de uma vez. O mesmo vale para os tokens de opção e o Option Token Beacon.
- O Timelock controla o proxy admin da Exchange e os caminhos de upgrade da Account, do Option Token e do Option Registry, com atraso mínimo de 30 segundos.
- A multisig Admin Safe detém os papéis de admin e governor da Exchange e o papel de owner da Factory.
- O papel de governor, detido pela Admin Safe, pode substituir o signatário RSM e o auctioneer e movimentar o USDC da Exchange (
rescueUsdcToEvm). Ele passará a ficar sob o timelock na etapa 1 do plano de confiança. Como admin padrão da Exchange, a Safe também pode conceder ou revogarSEQUENCER_ROLEe qualquer outro papel da Exchange diretamente, sem o timelock.
Os endereços estão na tabela de Configuração da Mainnet abaixo. A titularidade de uma Account só muda por meio de uma transação on-chain.
Endereços Implantados
Mainnet Alpha
| Contrato | Endereço | Descrição |
|---|---|---|
| Exchange | 0xE6b7FaA216cabb2b38B392f577C9c826378b2240 | Contrato principal da exchange |
| Exchange Implementation | 0xF7F0610aC612d140bdb34DCD2872828Bc67349cD | Implementação do Exchange por trás do proxy |
| Account Implementation | 0xCD87F572bef2855c8Ffb69A6Da3D9785d6017791 | Implementação da Account |
| Account Beacon | 0x1b96D6a48d1fB34dC45953697414656D2851Ca93 | Beacon da Account |
| Fetcher | 0x8654912Eae1554662665C13EeD4f1D8A4b028aDB | Contrato auxiliar de leitura |
| Option Token Implementation | 0x6D0C7a116f9561A8De692c23c4C11682738ed206 | Implementação do token de opção |
| Option Token Beacon | 0xfb320352B25Dba7f139EA9Bf8966891CCa12dC35 | Beacon do token de opção |
| Factory | 0x2CeeAC2E032e4cCb05FF744619BfAb8cC75efE1b | Factory de Accounts |
| Router | 0xF41FF41B6F007dE851ACc9F43Bd2f597Da741E2D | Auxiliar de depósitos e roteamento |
| Option Registry | 0x8C8efdd5F78C25215d03c8BbD5D1f6f0F1BB0598 | Registro de tokens de opção |
| Option Registry Implementation | 0xF222421a93df1086E329503723b3cC4c30546C46 | Implementação do Option Registry por trás do proxy |
| Hypercall Fee Collector | 0x406ceBfC7063e55761007D1C4b66B29308016602 | Endereço de builder da Hyperliquid nas ordens de perpétuos (também hl_builder_address em GET /exchange-info) |
Configuração da Mainnet
| Parâmetro | Endereço ou Valor | Descrição |
|---|---|---|
| USDC | 0xb88339CB7199b77E23DB6E890353E22632Ba630f | USDC da HyperEVM usado pela Hypercall |
| Core Deposit | 0x6B9E773128f453f5c2C60935Ee2DE2CBc5390A24 | Auxiliar de depósito da HyperCore |
| RSM Signer | 0x502E7fAbF34E84EeB115C34FE947b79A94dF886E | Signatário RSM atual, controlado pelo operador |
| Sequencer | 0x56a2924217C91EB4d6989Cf4C7b4dF03020E8944 | Sequencer atual |
| Timelock | 0x96f17e6f7269cA4300a391514c109eBA70661674 | Detém o proxy admin do Exchange e os caminhos de upgrade da Account, do Option Token e do Option Registry. Atraso mínimo de 30 segundos. |
| Admin Safe | 0xF741246D2e0ADD4EFa7e88BE0961cccf3562b502 | Multisig que detém os papéis de admin e governor do Exchange e o papel de owner do Factory |
Código-Fonte
O código-fonte dos contratos será disponibilizado após a conclusão da auditoria.
Relacionados
- Assinatura EIP-712 - Formatos de mensagem e assinatura
- Autorização de Agentes - Configuração de API wallets
- Onboarding - Criação de conta e depósitos
- Autenticação da API - Assinatura de requisições