Changelog
Mudanças de API e descontinuações para a testnet e o alpha da mainnet da Hypercall.
Política de mudanças da API experimental
Todos os endpoints /experimental e as mensagens WebSocket explicitamente experimentais são instáveis. Mudanças incompatíveis podem entrar em vigor com um dia (24 horas) de aviso prévio. Isso inclui remover ou renomear campos ou endpoints, alterar tipos de campos e alterar o comportamento de requisições ou respostas. Os avisos neste changelog informarão as superfícies afetadas, as mudanças necessárias nos clientes e a data e hora de entrada em vigor. Os clientes devem acompanhar esses avisos e se atualizar antes desse horário. Esta política não altera os compromissos de compatibilidade dos endpoints e assinaturas não experimentais.
Consulte a API experimental de combos para a interface atual. Esta política não anuncia disponibilidade nem uma mudança imediata de schema.
Veja também: Referência da API REST · API WebSocket · Autenticação
Sem nova release - 6 de outubro de 2026
Adicionado
- Política pública de margem PM:
GET /v1/pm-margin/policyretorna a política de portfolio margin ativa (tipo, versão, modo do overlay de gama e o universo completo por ativo subjacente) sem autenticação. A resposta traz umETagforte eCache-Control: public, max-age=60, stale-while-revalidate=300; envieIf-None-Matchpara receber um304 Not Modifiedsem corpo enquanto a política não mudar. Consulte Parâmetros de risco PM. - Compressão WebSocket em produção: a negociação
permessage-deflatedescrita em 30 de setembro agora está habilitada na configuração de produção. Clientes que não oferecem a extensão não são afetados.
Sem nova release - 5 de outubro de 2026
Adicionado
- Nenhuma mudança de rate limit ou de tier foi lançada neste período; os rate limits não mudaram, e os novos envios de perpétuos via TEE contam contra o manager da Account como os demais envios de ordens de perpétuos. Nenhum endpoint foi descontinuado.
- Rotas de gatilho e lote para perpétuos via TEE:
POST /v1/tee-perp/orders/submit-triggerenvia um stop-loss ou take-profit nativo, ePOST /v1/tee-perp/orders/submit-batchenvia uma ordem agrupada (na,normalTpsloupositionTpsl). Ambas usam a mesma assinatura EIP-712 por app-key dePOST /v1/tee-perp/orders/submit, passam pela mesma verificação de portfolio margin e sempre carregam o builder code da Hypercall. - Preview de perpétuos via TEE:
POST /v1/tee-perp/previewexecuta a verificação de margem para uma ordem, lote ou mudança de alavancagem sem gravar no journal, reservar nonces ou chamar o enclave, e retorna a decisão, umreasonCodeestável, os valores de margem, os preços de liquidação da venue e ummaxSizeobtido por bisseção. As respostas de envio de ordem, lote e alavancagem agora trazem o mesmoreasonCode. Consulte reason codes. - Mercados de perpétuos via TEE:
GET /v1/tee-perp/marketslista os mercados de perpétuos que a Hypercall aceita e seus índices de ativo. Todo mercado que tenha um feed de preço da Hypercall, uma grade de cenários PM e um mercado da Hyperliquid com margem em USDC é aceito em todas as rotas TEE. Qualquer outro mercado é recusado commarket_not_supported. - Lembrete sobre rotas: as rotas TEE são opcionais no nível da API: os clientes de API as escolhem chamando os endpoints
/v1/tee-perp/, e as ordens que não as usam passam pelo caminho de diretivas do contrato da conta. No app da Hypercall, a TEE é a rota padrão para perpétuos, com a rota via smart contract disponível como configuração avançada em Configurações.
Alterado
- IDs de requisição escolhidos pelo cliente devem ser UUIDv7s novos.
POST /v1/tee-perp/cancels/submit-prepared(tantononceReservationRequestIdquantorequestId) ePOST /liquidation/standard-margin(request_id) retornam400quando o ID da requisição não é um UUIDv7 (por exemplo, um v4 decrypto.randomUUID()), quando seu timestamp embutido tem mais de 1 hora, ou quando está mais de 30 segundos no futuro. Gere um novo UUIDv7 para cada nova requisição e reutilize-o apenas para repetir essa mesma requisição dentro da hora. - Repetições de ordens, cancelamentos e alterações de alavancagem TEE que atravessam esta release são rejeitadas. As identidades atribuídas pelo servidor para
POST /v1/tee-perp/orders/submit,POST /v1/tee-perp/cancels/submit,POST /v1/tee-perp/cancels/submit-by-oid,POST /v1/tee-perp/schedule-cancel/submitePOST /v1/tee-perp/leverage/submitmudaram nesta release. Repetir uma requisição enviada pela primeira vez antes da atualização retorna400por nonce reutilizado, em vez da aceitação original; a requisição original continua valendo. Assine e envie uma nova requisição com um nonce novo. - Os tamanhos das pernas de RFQ são verificados quanto à precisão no envio: um tamanho de perna de RFQ com mais de 6 casas decimais (mais fino que
0.000001) é rejeitado quando o RFQ é enviado, e o erro informa o maior tamanho executável para o qual arredondar para baixo. Antes, o RFQ era aceito e todas as cotações dos makers falhavam, então os takers viam um timeout genérico de ausência de cotações. O hash assinado das pernas não mudou: arredonde o tamanho você mesmo antes de assinar.
Sem nova release - 4 de outubro de 2026
Adicionado
- Alavancagem de perpétuos via TEE:
POST /v1/tee-perp/leverage/submitaltera a alavancagem por mercado e o modo cross ou isolated pela rota TEE, usando a mesma regra de margem da admissão de ordens. Uma alteração recusada retorna umreasonCodeestável, comoinsufficient_marginouleverage_requires_flat_account.
Sem nova release - 2 de outubro de 2026
Adicionado
- Rotas de cancelamento e cancelamento agendado para perpétuos via TEE:
POST /v1/tee-perp/cancels/submit(por ID de ordem do cliente),POST /v1/tee-perp/cancels/submit-by-oidePOST /v1/tee-perp/schedule-cancel/submit(dead-man's switch) estão disponíveis na rota TEE.
Nenhuma nova versão - 30 de setembro de 2026
Adicionado
- Compressão de WebSocket:
/wssuportapermessage-deflateda RFC 7692 comserver_no_context_takeover, habilitado por ambiente. Clientes que oferecem a extensão recebem mensagens maiores comprimidas; clientes que não oferecem não são afetados. Consulte Compressão. - Dados de mercado indicativos em lote: o novo canal
indicative_market_data_v2entrega as linhas deindicative_market_datacomo framesIndicativeMarketDataBatch, cada um contendo as linhas publicadas dentro de uma janela de lote (25 ms por padrão), em ordem e sem consolidação. Sua confirmação é{"type":"Subscribed","channel":"indicative_market_data_v2","batch":true}; sem esse marcador, volte paraindicative_market_data, que permanece inalterado. As linhas chegam com até uma janela de atraso. Compermessage-deflate, os frames em lote são cerca de cinco vezes menores do que linhas comprimidas uma a uma. Consulte Entrega em lote. O campo de assinatura"batch": true, de vida curta, foi removido; os servidores o ignoram. - Canais desconhecidos são rejeitados: um
Subscribepara um canal que não existe agora retorna{"type":"Error","code":"unknown_channel","channel":"<name>","message":"Unknown channel '<name>'"}em vez de uma confirmaçãoSubscribedseguida de silêncio. As mensagensErrorganham os campos opcionaiscodeechannel. Canais descontinuados mantêm o erro existente. - Cliente Rust:
WsClient::subscribe_indicative_market_data(symbols)assinaindicative_market_data_v2e volta paraindicative_market_dataquando o servidor confirma sem o marcador de lote ou rejeita o canal. Desative comWsClient::with_batched_indicative(false)e encerre comWsClient::unsubscribe_indicative_market_data(), que funciona em qualquer canal que tenha sido resolvido. Mudança incompatível (pré-1.0): o argumentobatchdo método foi removido,WsMessage::Subscribeperde seu campobatch, eWsMessage::SubscribedeWsMessage::Errorganham campos opcionais, portanto literais de struct e padrões exaustivos precisam ser atualizados.
Alterado
- Mudança incompatível: margem de portfólio exige uma conta HyperCore unificada.
POST /margin-modecomportfolioagora falha com400e códigopm_account_not_unified, a menos que o HyperCore reporte a Account no modounifiedAccount. Habilite-o primeiro com a diretivahl_set_abstraction, aguarde a confirmação e tente novamente. Uma Account PM não unificada nunca poderia ser avaliada, então isso substitui uma falha posterior e opaca. GET /portfolioexplica a ausência do feed de patrimônio PM. Quando uma Account em margem de portfólio não tem patrimônio atual no HyperCore, a resposta é409pm_account_not_unifiedse o HyperCore nunca publicou a Account e reporta outro modo, ou um503pm_account_equity_pendingque pode ser repetido até que um snapshot unificado atual chegue ao engine (indicando o modo do HyperCore quando não for unificado). Outras falhas de avaliação PM mantêm o503genérico.- O preflight de maker de RFQ separa falhas de precificação. Uma cotação que a venue não consegue avaliar (por exemplo, por falta de uma superfície de volatilidade implícita) agora é rejeitada com o motivo
pricing_unavailableem vez demargin_rejected.margin_rejectedagora significa apenas uma decisão de margem sobre a conta do maker.
Nenhuma nova versão - 2 de setembro de 2026
Adicionado
- Simulação de risco pública:
POST /risk/simulate/portfoliopré-visualiza sobreposições ou substituições de posições precificadas pela marcação.POST /risk/simulate/orderspré-visualiza a admissão financeira de ordens em repouso ou atômicas. Ambos os endpoints usam um único snapshot imutável do engine, suportam Standard Margin e Portfolio Margin, não exigem autenticação e nunca alteram o estado da conta ou do journal. As pré-visualizações de ordens excluem garantias de roteamento, matching, nonce e suspensão de negociação, portanto uma ordem real posterior pode diferir depois que o estado do engine avançar. - Linhas de base ordenadas de ordens abertas:
POST /risk/simulate/ordersaceita o campo opcionalhypothetical_open_orders, admite essas ordens sequencialmente como ordens GTC em repouso e reporta seu efeito combinado com a ordem proposta ou o pacote atômico.
Migração de opções da Standard Margin
Escopo: a Standard Margin reconhece spreads de opções, butterflies e outros portfólios compatíveis dentro de cada ativo subjacente e vencimento. Calendars mantêm grupos de vencimento separados. O financiamento em USDC e as rotas de ordens existentes permanecem inalterados.
Contrato de caixa aditivo: os resumos de portfólio via REST e WebSocket adicionam standard_margin, contendo cash_margin, initial_margin_headroom, maintenance_margin_headroom e diagnósticos de vencimentos compatíveis. Os campos existentes initial_margin e maintenance_margin mantêm seus significados históricos derivados do NAV. Use os campos explícitos de folga em caixa para admissão e liquidação na SM. Detalhamentos ausentes significam que o recurso está indisponível, não risco zero.
Mudança incompatível na semântica de posições: margin_posted e maintenance_margin por posição são diagnósticos isolados, anteriores à proteção de grupo. Não os some para obter requisitos da conta nem para estimar o custo de fechar uma perna. Use os requisitos da conta e o detalhamento agrupado.
Mudança incompatível em campo anulável: posições de opções na SM agora retornam liquidation_price: null nas mensagens de portfólio via REST e WebSocket. Atualize decodificadores que exigem uma string decimal e exiba um preço indisponível ou a folga da conta. Retornar o preço anterior representaria de forma incorreta o risco de liquidação agrupado. Essa mudança exige uma transição coordenada entre backend e cliente; não é uma alegação de compatibilidade com decodificadores antigos e rígidos.
Migração de clientes: atualize o frontend e os consumidores automatizados de risco antes de retomar a negociação contra o novo backend. Cancele e confirme a remoção das cotações antigas do maker e, em seguida, pare o maker antigo. Inicie o maker atualizado somente com o novo detalhamento de caixa disponível. Novas versões do maker param de cotar quando esse contexto está ausente; versões mais antigas usam o NAV para a utilização e não são adequadas para as novas regras de risco baseadas em caixa. Não execute versões mistas do backend para as mesmas contas de negociação.
Bibliotecas Rust: os preços de liquidação das posições de portfólio tornam-se opcionais e os resumos de margem adicionam um campo público de detalhamento, exigindo as atualizações correspondentes em literais de struct. As assinaturas existentes das funções auxiliares de margem derivadas do NAV permanecem inalteradas; consumidores de risco que consideram o caixa devem usar o contrato explícito da SM. A biblioteca do liquidador também exige a folga autoritativa de maintenance_margin em snapshots de margem serializados e em candidatos construídos. Reconstrua esses snapshots a partir de leituras atuais; não infira a folga de caixa ausente a partir do NAV salvo.
Validação: consumidores próprios distinguem PM de SM, a ausência de contexto de caixa interrompe decisões automatizadas de risco e os formatos de requisição e assinatura de ordens permanecem inalterados. Esta entrada não lançada não estabelece implantação nem uma transição suportada com versões mistas.
Nenhuma nova versão - 15 de agosto de 2026
Adicionado
- Volume de ativos da coleção:
GET /accounts/{wallet}/collectionagora retorna o notional canônico exato acumulado de cada ativo subjacente como uma string decimal no campo aditivoassets[].volume.
Sem nova versão - 14 de agosto de 2026
Avisos de descontinuação
- Campo de nome de usuário do perfil descontinuado: O campo
usernamena resposta doGET /profileda API Rust está descontinuado e poderá ser removido em ou após 7 de setembro de 2026. Leia os nomes de usuário selecionados emGET /username?wallet=...na Analytics API. Se esse endpoint retornar404, deriveadjective_noun.xxlocalmente a partir da carteira canônica. As respostas bem-sucedidas de/profileagora incluem os cabeçalhosDeprecation,Sunset,X-Deprecation-Removal-UnixeWarningdurante a janela de migração. - Campos legados restantes de nome de usuário nas respostas: O campo
usernamenas respostas legadas deGET /usernameePOST /usernameda API Rust, além das respostas de leaderboard de competições, continua sujeito a remoção conforme o cronograma de 20 de agosto de 2026. O contrato deGET /usernameePOST /usernameassinado da Analytics API é o substituto para nomes de usuário selecionados. Clientes de leaderboard devem derivar localmente os nomes de exibiçãoadjective_noun.xxa partir dewalletouwallet_addresscanônico quando não houver um nome selecionado. O algoritmo determinístico de nome de conta abaixo é normativo.
Algoritmo determinístico de nome de conta
Entrada: Remova os espaços e converta para minúsculas uma carteira EVM canônica. O valor deve corresponder a ^0x[0-9a-f]{40}$. Uma entrada inválida produz Unknown.
Listas ordenadas de palavras: Preserve exatamente esta ordem.
adjectives = [swift, silent, long, short, deep, wide, sharp, calm, cold, quiet, bold, thin, idle, vivid, grim, amber, slate, rapid, steady, hollow, rogue, plain, lucky, brisk, stark]
nouns = [theta, vega, gamma, delta, rho, basis, carry, skew, strike, tenor, vol, wick, candle, ladder, condor, collar, straddle, strangle, butterfly, spread, hedge, premium, tick, lot]
Função de hash: Use FNV-1a de 32 bits sobre os bytes ASCII. Toda multiplicação faz wrap para um inteiro sem sinal de 32 bits, equivalente a Math.imul(hash, 0x01000193) >>> 0 em JavaScript.
fnv1a32(value, seed = 0x811c9dc5):
hash = uint32(seed)
for byte in ascii(value):
hash = uint32(hash XOR byte)
hash = uint32(hash * 0x01000193)
return hash
wallet = trim(input).lowercase()
adjective_hash = fnv1a32(wallet)
noun_hash = fnv1a32(wallet + "#2", adjective_hash)
adjective = adjectives[adjective_hash modulo 25]
noun = nouns[noun_hash modulo 24]
suffix = last 2 characters of wallet
display_name = adjective + "_" + noun + "." + suffix
Vetores de teste:
| Carteira | Nome de exibição |
|---|---|
0x000000000000000000000000000000000000002a | vivid_candle.2a |
0xd9fe4c6bf4271fd685409cd01b7eece052c886c8 | silent_theta.c8 |
Adições
- API pública de badges: O Worker de analytics agora serve o registro de badges em
GET /badges, os detentores paginados emGET /badges/{slug}, o estado por conta emGET /badges/accounts/{wallet}e lotes compatíveis com cache de até 100 carteiras emGET /badges/accounts?wallet=.... Pódio e volume histórico total usam as gerações materializadas do leaderboard. A elegibilidade de fundador fica congelada para contas vistas pela primeira vez antes de 1º de agosto de 2026 UTC. As contagens de mensagens do Trollbox vinculadas a carteiras são atualizadas a cada hora e mantêm os níveis conquistados mesmo depois que uma mensagem é excluída. - Conquistas de sequência e coleção no perfil:
GET /accounts/{wallet}/streak?days=14|61|365retorna o calendário de sequência.GET /accounts/{wallet}/collectionretorna a grade independente de ativos da coleção, sem parâmetro de janela de tempo. A sequência conta dias UTC consecutivos com um fill qualificado. A coleção conta os ativos subjacentes distintos negociados e os compara com o catálogo listado atual. Self-matches resolvidos não contam. Uma coleção Completa continua conquistada mesmo que o catálogo cresça depois. - Nomes Hyperliquid nas linhas do leaderboard: As linhas
data[]retornadas pelos endpoints de leaderboard de competição e histórico total agora incluem o campo anulávelhyperliquid_name. O Worker de analytics resolve nomes apenas para as carteiras da página retornada, agrupa as chamadas à HyperEVM em lotes e mantém em cache resultados positivos e negativos por dez minutos. Esse campo é separado dousernamegerado e descontinuado. Os clientes podem dar preferência a ele quando não for nulo e, caso contrário, usar o nome determinístico de conta.
Sem nova versão - 3 de agosto de 2026
Mudanças incompatíveis
- Imagens de perfil removidas da API Rust:
POST /profile/imagenão está mais disponível, eGET /profilenão retorna maisprofile_image_url.
Sem nova versão - 29 de julho de 2026
Mudanças incompatíveis
- Endpoint REST de candles removido:
GET /candlesnão está mais disponível e agora retorna404. Os clientes devem parar de chamar esse endpoint. - Entrega de candles via WebSocket descontinuada: A Hypercall não publica mais mensagens
CandleUpdatenos canaiscandles:<UNDERLYING>:<RESOLUTION>. Os clientes devem parar de assinar esses canais. Não há um stream de candles substituto disponível nesta versão.
Sem nova versão - 27 de julho de 2026
Adições
- Horário de publicação indicativo: todo payload WebSocket
indicative_market_dataagora incluipublished_at, o timestamp em milissegundos, segundo o relógio da API, de quando esse payload foi enviado. Usepublished_at - rfq_provider_quotes[].updated_atpara medir a idade da cotação do provedor no momento da publicação. Não compare nenhum desses valores com o relógio de parede do cliente. Otimestampexistente continua sendo o horário de atualização do agregado de origem. - Relógio de transporte do WebSocket: clientes que precisam de uma duração conservadora entre publicação e recebimento podem enviar
{"type":"ClockSync","nonce":"<client nonce>"}e aguardar{"type":"ClockSynced","nonce":"<same nonce>","server_at":<API milliseconds>}antes de assinar. Combine a amostra da API com o tempo decorrido monotônico do cliente. Não compareserver_atcom o relógio de parede do cliente.
Sem nova versão - 22 de julho de 2026
Adições
- Direção do trade no histórico público: todo trade retornado por
GET /tradesagora incluitaker_sidecomoBuyouSell. O lado maker é sempre o oposto. - Paginação por cursor para trades: passe
after_trade_idparaGET /tradespara buscar trades mais recentes em ordem crescente detrade_id. Continue a partir do último ID retornado. O modo cursor não pode ser combinado comoffset,option_id,underlyingouaccount; as consultas existentes com offset e filtros permanecem inalteradas.
Nenhuma nova versão - 20 de julho de 2026
Mudanças incompatíveis
- Consumidores lentos de WebSocket são desconectados: conexões
/wssão encerradas quando qualquer limite de segurança por conexão é ultrapassado. Os limites aplicados são 16.384 mensagens pendentes, 8 MiB de dados pendentes codificados, 5 segundos de idade da fila e 5 segundos para uma única escrita no socket. Esses são limites operacionais de segurança, não garantias de throughput nem promessas de compatibilidade. Uma violação de fila, bytes ou idade envia o código de fechamento1008com um motivo em JSON compacto contendoerror: "slow_consumer",class,causeerecovery. Uma conexão que não consegue aceitar nem mesmo o frame de fechamento pode ser encerrada sem um motivo legível. Ainda não há cursor de replay disponível. Os clientes devem reconectar, autenticar novamente quando necessário, refazer as assinaturas e seguir a ação de recuperação: buscar novamente um snapshot para dados públicos ordenados, reconciliar eventos privados duráveis via REST ou buscar novamente o estado do portfólio. Os clientes não devem presumir entrega ininterrupta durante uma reconexão. A rota de ingresso de provedores de cotação/ws/quotesé separada e não foi alterada. - Atualizações indicativas sem alteração são agrupadas:
indicative_market_datanão emite mais toda atualização de cotação que altera apenas o timestamp. Quando os preços, tamanhos e a disponibilidade do provedor não mudam, cada instrumento emite no máximo uma atualização de frescor por segundo. Mudanças financeiras de preço ou tamanho e remoções de provedores continuam sendo publicadas imediatamente. Clientes que usavam cada timestamp de origem como um evento devem usar o snapshot mais recente recebido. - Comandos WebSocket compartilham os limites de taxa do REST dentro de um mesmo processo de API: os comandos assinados
PlaceOrder,SubmitRfq,SubmitAutoExecuteRfqeAcceptRfqQuotevia/wsagora usam o mesmoRateLimitCacheem memória por carteira que seus equivalentes REST naquele processo de API. Os limites não valem para todo o cluster, e réplicas diferentes da API mantêm janelas independentes. A carteira só é contabilizada após a recuperação da assinatura e a autorização do agente, portanto informar outra carteira não consome o limite dela. Um pod dedicado de entrega WebSocket não contorna esses limites. Comandos WebSocket acima do limite retornam uma mensagemErrorem vez de cabeçalhos HTTP de limite de taxa.
Correções
- Backpressure de memória no WebSocket: o caminho do proprietário do socket agora mantém a contabilização da fila desde a admissão até a conclusão da escrita no socket. Ele registra bytes codificados, idade da fila, tempo de serialização, bytes reais do frame, latência entre publicação e escrita, falhas de escrita e fechamentos por pressão por classe de entrega.
- Largura de banda indicativa duplicada: snapshots indicativos repetidos da cadeia completa com campos financeiros inalterados são suprimidos antes da distribuição pública.
Nenhuma nova versão - 13 de julho de 2026
Adições
- Códigos de erro da API: respostas de erro JSON HTTP
4xxe5xxgeradas pela API passam a incluircodeemessage, preservando os campos já existentes. Use ocodeestável e legível por máquina para ramificar a lógica emessagepara exibição ou diagnóstico. Veja Erros e motivos de rejeição.
Nenhuma nova versão - 3 de julho de 2026
Adições
- Visibilidade de cotações de provedores de RFQ:
GET /options-summarypode incluir as cotações indicativas brutas dos provedores de cotação de RFQ ao passarinclude_rfq_provider_quotes=trueou o alias retrocompatívelrfq_provider_quotes=true. Limite as cotações de provedores por instrumento comrfq_provider_quotes_limit,provider_quotes_limitoulimit. - Stream de dados de mercado indicativos: mensagens WebSocket
IndicativeMarketDataagora incluemrfq_provider_quotes, para que os clientes possam inspecionar o conjunto de cotações indicativas de RFQ por provedor por trás do bid e ask agregados.
Correções
- Parâmetros de consulta do options summary: a referência da API REST agora documenta os novos parâmetros de consulta de cotações de provedores do
/options-summary. - Cotações de provedores indisponíveis: cotações de provedores de RFQ que não estão mais disponíveis deixam de aparecer prontamente nas respostas de dados de mercado.
Nenhuma nova versão - 26 de junho de 2026
Avisos de descontinuação
- Rota de ordem omitida:
PlaceOrderaceitarouteomitido até pelo menos 4 de julho de 2026.POST /ordertratarouteomitido comobest_executione retorna os cabeçalhosDeprecation,Sunset,X-Deprecation-Removal-UnixeWarning. Os clientes devem enviarroutee incluí-lo nos typed data doPlaceOrder.routenão se tornará obrigatório antes de 4 de julho de 2026, mas poderá se tornar obrigatório depois.
Adições
- Rota de ordem opcional:
POST /orderagora aceita um camporouteopcional e assinado emPlaceOrder. Os clientes podem enviarbest_execution,book_onlyourfq_only. Umrouteomitido assume como padrão o comportamento atual debest_executiondurante a janela de descontinuação programada. - Rota de ordem somente livro: os clientes podem enviar
route=book_onlypara pular a descoberta de RPI/RFQ e despachar diretamente para o livro de ofertas.route=best_executionmantém o comportamento existente de RPI seguido do livro.route=rfq_onlyestá reservado e atualmente é rejeitado em/orderaté que a semântica de histórico de ordens somente RFQ seja implementada. - Validação de rota em ordens em lote:
POST /bulk_ordersuportaroute=book_onlypara requisições com rota. Umrouteomitido mantém o comportamento existente somente livro.route=best_executioneroute=rfq_onlysão rejeitados em lote porque o endpoint de lote não executa o roteamento de RPI/RFQ.
Nenhuma nova versão - 25 de junho de 2026
Correções na documentação
- Referência da API: adicionado
GET /liquidationsà Referência da API REST gerada e incluído link para o endpoint no guia de Liquidação.
Nenhuma nova versão - 10 de junho de 2026
Correções na documentação
- URLs base da referência da API: corrigida a Referência da API REST gerada para listar os ambientes públicos como
https://testnet-api.hypercall.xyzpara testnet ehttps://api.hypercall.xyzpara produção.
Nenhuma nova versão - 10 de junho de 2026
Correções
Execução
- Execuções de RPI com livro vazio: o RPI de perna única agora trata o limite do usuário como teto ou piso de execução quando não há liquidez executável no livro. Respostas de melhoria de preço elegíveis no limite exibido podem ser executadas em vez de rejeitadas por não melhorarem o próprio limite. Se houver liquidez executável no livro, os provedores de cotação ainda precisam melhorar esse preço do livro em pelo menos um tick. Veja Prioridade de ordens.
- Respostas de provedores de cotação: respostas de RFQ agora seguem a mesma regra de preço limite da API. Cotações naturais no limite do tomador são aceitas quando não existe referência no livro, enquanto cotações fora do limite do tomador ou que não melhoram a liquidez executável do livro continuam sendo recusadas.
Trollbox
- Roteamento na mainnet: o Trollbox de produção agora aponta para o worker da mainnet, então o chat do app usa o ambiente ativo do Trollbox.
Nenhuma nova versão - 1º de junho de 2026
Veja também: Post de lançamento da mainnet
Mudanças incompatíveis
- Ambiente mainnet: clientes de produção devem usar o app, a API, os chain IDs, os endereços de contrato e o domínio de assinatura configurados para a mainnet. Não reutilize assinaturas da testnet, chaves de API da testnet, chaves de agente da testnet nem premissas de faucet na mainnet.
- Escopo de negociação no lançamento: o alpha da mainnet é restrito a fluxo de opções com risco definido. Vendas descobertas (naked shorts), margem de portfólio ampla, financiamento via faucet e caminhos de competição da testnet não estão habilitados para usuários públicos da mainnet.
- Rota de faucet bloqueada em builds com dinheiro real: caminhos de financiamento exclusivos do faucet não estão disponíveis em builds de produção. Usuários da mainnet depositam USDC pelo fluxo de financiamento do app.
Adições
Mainnet
- Alpha da mainnet: a Hypercall está no ar em app.hypercall.xyz com liquidação real em USDC e opções de SPCX como mercado de lançamento.
- Mercado de lançamento SPCX: opções da SpaceX estão disponíveis na mainnet com calls, puts, straddles, strangles e spreads de risco definido. Os contratos SPCX da mainnet vencem às 16h00 ET. O mercado usa o mesmo modelo de roteamento de ordens documentado em Prioridade de ordens.
- Configuração de chain da mainnet: conexão de carteira, assinatura de ordens de opções, endereços de contrato e textos de UI específicos de cada ambiente agora derivam da configuração ativa de mainnet/testnet, em vez de premissas de testnet fixas no código.
- Controles de negociação em produção: a configuração de lançamento mantém a negociação ativa (sem halt) e preserva parâmetros de risco controlados para o rollout do alpha.
- API de produção: a API pública de produção está disponível para clientes da mainnet.
Financiamento
- Depósitos em USDC: usuários podem depositar USDC em uma conta Hypercall pelo app. O fluxo mostra rota, chain de origem, estado do relay, conta de destino e valor creditado antes e depois do envio.
- Atribuição de depósitos na Exchange: os eventos de depósito de USDC da Exchange incluem explicitamente a conta creditada, para que os serviços de backend creditem a conta Hypercall pretendida em vez de inferir a titularidade a partir de
msg.sender. Veja Contratos: Onboarding. - Deposit zaps: o frontend suporta fluxos de bridge e depósito pelo app, incluindo cotação e acompanhamento de status do relay.
- Saques: o suporte a saques na mainnet passa por system actions e aparece nas ações de financiamento da conta.
- Seleção de rota de depósito: as ações de depósito escolhem a rota ativa a partir da configuração do contrato, permitindo que a mesma UI siga caminhos de financiamento específicos de cada ambiente.
- Aceite legal: os fluxos de configuração de conta e de financiamento incluem o aceite legal do lançamento, com os Termos de Uso e a Política de Privacidade publicados.
Execução
- RPI para ordens de uma perna: opções de uma perna são roteadas pelo leilão de Retail Price Improvement quando elegíveis e voltam ao livro de ofertas quando nenhuma cotação qualificada vence.
- RFQ para pacotes multi-perna: pacotes de estratégias multi-perna são roteados via RFQ para execução tudo-ou-nada. Ordens dual-mode em produção dão preferência ao RFQ quando a execução em pacote é necessária.
- Taxas no lançamento: as taxas de maker e taker estão desativadas na configuração de lançamento. Veja Taxas.
- Roteamento de ordens combinadas: ordens combinadas são roteadas pelos caminhos RPI/RFQ do backend, e não por premissas de pacote apenas no frontend.
- Shorts de provedores de cotação: provedores de cotação registrados podem preencher as pernas vendidas necessárias para liquidez de RFQ/RPI, enquanto o escopo público do lançamento permanece restrito.
Correções
- Acesso à página de depósito: as rotas de financiamento de terceiros no host do app e o comportamento do modal de depósito foram desbloqueados para o fluxo de financiamento em produção.
- Remoção da allowlist de depósitos: o bloqueio por whitelist de depósitos em produção foi desativado para liberar o financiamento no lançamento.
- Dimensionamento de RFQ: tamanhos de RFQ em modo de custo são arredondados exatamente antes do envio, evitando desvio de precisão fracionária no dimensionamento dos pacotes.
- Cotações de payoff multi-perna: os gráficos de payoff multi-perna usam o resolvedor de cotações por perna, para que os valores exibidos correspondam ao pacote selecionado.
- Valores negativos: valores negativos agora são exibidos com sinal explícito nas superfícies de UI do lançamento.
- Limpeza de endereços de depósito obsoletos: endereços de depósito obsoletos e estado de bridge não utilizado foram removidos após a verificação do lançamento.
Nenhuma nova versão - 22 de maio a 1º de junho de 2026
Veja também: Post de lançamento da mainnet
Mudanças incompatíveis
- Margem de portfólio desativada fora da testnet: ambientes que não são testnet agora rejeitam a configuração de margem de portfólio. O alpha da mainnet usa apenas margem padrão.
- Normalização de estado de ordens: os rótulos do ciclo de vida das ordens distinguem de forma mais consistente os estados reconhecida/aberta e parcialmente/totalmente executada. Clientes que exibem strings de status brutas devem tratá-los como os estados canônicos voltados ao usuário.
Adições
Financiamento e contas
- Seleção de rota de depósito: o app seleciona as rotas de depósito a partir da configuração ativa do contrato, em vez de premissas de ambiente fixas no código.
- Exchange deposit zaps: a testnet ganhou o fluxo de bridge e depósito no app que depois chegou à mainnet, incluindo o tratamento de cotação/status do relay.
- Crédito explícito de depósitos: depósitos de USDC na Exchange creditam a conta indicada no evento de depósito, evitando atribuição ambígua quando um router ou zap envia a transação.
- Saques padrão em USDC: carteiras padrão podem enviar saques em USDC pelo caminho de API/system action.
- Bootstrap de margem na configuração da conta: a configuração de chave de API agora inicializa o modo de margem suportado durante o onboarding, reduzindo a chance de uma conta com saldo ficar em um estado de negociação inválido.
- Configurações de conta centralizadas: preferências e configurações da conta foram normalizadas para que financiamento, chaves de agente, visibilidade do Trollbox e configurações de perfil compartilhem uma única superfície de conta.
Mercados e negociação
- Mercados em breve: o app pode exibir cards de mercados "em breve" sem listá-los como mercados negociáveis.
- Open interest fracionário por ativo: o open interest por ativo exibe valores fracionários em vez de truncar mercados menores.
- Risco indicativo a partir do catálogo ao vivo: as listas de mercados indicativos de RFQ/risco derivam do catálogo ao vivo, e não de uma lista desatualizada no frontend.
- Marketability por bid/ask de referência: a entrada de ordens usa dados de bid/ask de referência para decidir se uma ordem é executável a mercado.
- Uncrossing de IV com fontes mistas: os cálculos de volatilidade implícita no resumo de opções desfazem o cruzamento de preços bid/ask de fontes mistas antes de derivar a IV.
- Linhas de marcação sticky nativas: as linhas de marcação de estratégias passaram a usar comportamento sticky nativo para uma rolagem mais limpa da cadeia.
UI e conteúdo
- Modo escuro: o app recebeu uma revisão completa de modo escuro em toda a superfície de negociação.
- Estados de interação: os estados de interação do frontend foram refinados para o acabamento do lançamento.
- Separação entre homepage da Hypercall e Insights: o roteamento web público foi renovado, com o Insights separado em sua própria propriedade e a home do produto apontando para a superfície de negociação ao vivo.
- Explicação RPI vs RFQ: o artigo sobre execução RPI foi publicado e vinculado aos materiais de lançamento.
Correções
- Negociabilidade no marquee: o marquee exibe apenas mercados listados, para que os usuários não vejam ativos não negociáveis como se estivessem ativos.
Sem nova versão - 28 de abril a 21 de maio de 2026
Veja também: Week 7 Product Update
Mudanças incompatíveis
- Superfícies de API não utilizadas removidas: o endpoint
/limit_iv, que não era utilizado, e a rota duplicada/profile/username-requestforam removidos. Os clientes devem usar as rotas documentadas na Referência da API REST. - Fallback de pacotes RFQ restringido: RFQs multi-leg são negociações de pacote e não dependem mais da semântica de fallback para o livro de ofertas na execução arbitrária de múltiplas pernas. Use o envio de ordens de perna única para obter o comportamento de fallback para RPI/livro de ofertas.
- Chain IDs de assinatura configuráveis: a assinatura de ordens de opções não assume mais um único chain ID de testnet. Os clientes devem derivar a chain de assinatura do ambiente ativo.
Novidades
Mercados
- Mercado SPCX na testnet: opções pré-IPO da SpaceX foram adicionadas à testnet, com vencimentos limitados à data do IPO, em 12 de junho.
- Filtragem de mercados listados no marquee: os marquees de mercado de produção e staging mostram apenas mercados listados, evitando que ativos indisponíveis apareçam como negociáveis.
- Modelo de vol de moneyness com reconhecimento de sessão: a modelagem de volatilidade considera o contexto da sessão ao precificar mercados sensíveis a moneyness.
Construtor de estratégias
- Construtor de estratégias em 1 clique: estruturas de opções comuns, como straddles, strangles, vertical spreads e iron condors, podem ser selecionadas em uma galeria de estratégias em vez de montadas perna por perna.
- Construtor avançado: o modo avançado adiciona controles de faixa de strikes, seleção de vencimento distante para estruturas do tipo calendar e construção de estratégias com pernas vendidas.
- Novo formulário de ordens multi-leg: a entrada de pacotes foi reconstruída com tratamento de cotações por perna, contagem regressiva de expiração de cotações, mensagens de slippage e um fluxo mais limpo para aceitar a melhor cotação.
- Rótulos e badges de estratégia: os cabeçalhos de estratégia agora mostram rótulos compactos, classificação débito/crédito e nomes mais curtos quando o contexto de ticker ou vencimento já está claro.
- Indicadores na grade de opções: as visualizações da grade ganharam pills para pernas selecionadas, linhas de mark fixas, rótulos de DTE, setas de ponto de equilíbrio e indicadores de posição nas visualizações de grade, largura e spread.
RPI e RFQ
- Retail Price Improvement: ordens de perna única em instrumentos elegíveis passam pelo leilão RPI antes de recorrer ao livro de ofertas. Veja Prioridade de ordens.
- Stream de risco de RFQ indicativo: atualizações de cotações indicativas e de risco são transmitidas via WebSocket, reduzindo o polling para superfícies de cotação ativas.
- Builder de alto nível para clientes RFQ: o cliente Rust e a CLI de trade ganharam helpers para construir solicitações de cotação RFQ.
Conta e chaves de agente
- Painel de revogação de chaves de agente: as configurações da conta agora listam as chaves de agente ativas com um fluxo de revogação. Veja Autenticação de agentes.
- Notificações de chaves de agente: usuários com muitas chaves ativas recebem uma notificação de recomendação com link para o painel de revogação.
- Seleção de chain pronta para mainnet: o chain ID de assinatura, a chain da carteira Privy e o comportamento de troca de carteira agora derivam da configuração do ambiente.
Trollbox
- Trollbox no desktop: um painel de chat arrastável está disponível no app desktop, com configurações para exibi-lo ou ocultá-lo.
- Ponte com o Telegram: mensagens, respostas, mídias, reações, atribuição de encaminhamento, stickers e cards de comandos são sincronizados entre o Trollbox web e o Telegram.
- Vinculação de conta do Telegram: os usuários podem vincular o Telegram a uma carteira por meio de um fluxo com código de uso único.
- Deep links e pré-visualizações no Trollbox: links de mensagens têm pré-visualizações OG, imagens de mídia e rotas no app para mensagens compartilhadas.
Perfil e interface
- Imagens de perfil: os usuários podem enviar, recortar ou importar imagens de perfil, com avatares padrão determinísticos quando nenhuma imagem é definida.
- Fluxo de revisão de ordens: a entrada de ordens no mobile ganhou uma etapa de revisão e confirmação por deslize para enviar.
- Refinamentos de tema e layout: variáveis de tema, rótulos de gráficos, ações rápidas, pills de estratégia e estados de botões foram ajustados no desktop e no mobile.
- Desempenho: as páginas de ativos e o leaderboard reduziram buscas redundantes e renderizam dados mais úteis já na primeira pintura.
- Equity de conta unificado: as leituras de margem de portfólio e do feed Hydromancer usam o estado do portfólio para o equity da conta, melhorando a consistência entre as exibições de margem.
Correções
- Divergência de unidade de venda por tier: o tratamento de unidades de venda e o rollback de linhas de margem foram corrigidos na admissão de ordens por tier.
- Configuração de tier na primeira ordem: carteiras sem estado de tier são inicializadas na primeira ordem, em vez de gerar um erro de tier ausente.
- Instrumentos vencidos: a reconciliação do catálogo agora trata pares put/call ausentes e instrumentos ativos vencidos durante os ticks de vencimento.
- Estabilidade do Trollbox: heartbeats de WebSocket, roteamento de ambiente, carregamento de avatares, normalização de mídias, persistência de reações e tratamento de desconexão por inatividade foram corrigidos.
Nenhum novo release - 17 a 27 de abril de 2026
Veja também: Atualização de Produto da Semana 6
Adições
RFQ
- Sistema de negociação por Request for Quote (RFQ): novo modo de negociação para mercados sem liquidez profunda no livro de ofertas. Envie um RFQ, receba cotações em tempo real pelo canal
rfqautenticado do WebSocket e aceite ou recuse. Quando nenhuma cotação é recebida, recorre a uma ordem limitada no livro de ofertas. Permite listar rapidamente novos ativos (US500, USOIL, GOLD, HYPE) sem esperar por liquidez orgânica. - Modo de execução automática: o novo tipo de assinatura EIP-712
SubmitAutoExecuteRfqpré-autoriza a execução até um preço limite. A primeira cotação elegível dentro do limite é executada imediatamente, em uma única ida e volta. Recorre a uma ordem limitada no livro de ofertas se nenhuma cotação chegar ou se todas excederem o limite. - Cards de cotação RFQ: as cotações exibem preços por perna, prêmio líquido total e um temporizador de contagem regressiva até o vencimento. Aceite ou recuse com um clique.
- Controles de slippage: tolerância de slippage configurável (1%, 2%, 3%, 5%) em relação ao preço indicativo ao enviar um RFQ.
Negociação Multi-Perna
- Construtor de ordens de opções multi-perna: clicar em uma opção na cadeia a adiciona como perna em um formulário de ordem RFQ multi-perna. Várias pernas se acumulam; o botão X remove pernas individuais. As pernas ficam salvas na URL (
?legs=), então ordens multi-perna sobrevivem a recarregamentos e podem ser compartilhadas. - Detecção automática de estratégia: detecta e rotula 28 tipos de estratégia: Bull/Bear Call/Put Spread, Long/Short Straddle, Long/Short Strangle, Calendar Spread, Diagonal Spread, Iron Condor, Iron Butterfly, Call/Put Butterfly, Call/Put Condor, Risk Reversal, Collar, Synthetic Long/Short, Ratio Spread, Backspread, Box Spread, Jade Lizard, Seagull, Broken Wing Butterfly, Split-Strike Conversion. Os nomes das estratégias levam à documentação.
- Payoff, gráfico e gregas combinados: a visão multi-perna mostra um diagrama de payoff combinado, um gráfico de preço teórico combinado (soma dos preços teóricos de todas as pernas) e gregas agregadas (delta, gama, teta, vega) com ajuste de sinal para pernas vendidas.
- Alternância entre gregas do contrato e da estratégia: alterne entre gregas por contrato e agregadas no nível da estratégia no painel inferior.
- Máximo de pernas aumentado para 10: antes eram 4.
Liquidação
- Sistema de liquidação em duas fases: liquidação parcial por meio de ordens de fechamento IOC gerenciadas pelo backend, escalando para liquidação total via leilão on-chain quando a liquidação parcial é insuficiente.
- Aba Liquidações: nova aba no painel inferior que mostra os eventos de liquidação da carteira conectada.
GET /liquidations: histórico público de transições de liquidação, paginado por cursor, usado por bots de liquidação de terceiros para descobrir candidatos.- Bot liquidante de exemplo: novo crate
liquidatorque demonstra o monitoramento de liquidações de margem padrão e ordens de liquidação assinadas da Hypercall.
UI
- Atribuição de P&L no gráfico de patrimônio: ative o ícone de camadas para ver áreas empilhadas por posição no gráfico de patrimônio. Uma decomposição em barras horizontais abaixo do gráfico agrupa as posições por ativo subjacente, mostra o P&L realizado por símbolo e permite filtrar por checkbox para isolar ou ocultar posições individuais. Passar o cursor (crosshair) atualiza a decomposição. Veja o guia desktop.
- Painel de mercados expansível com breadcrumbs: o painel de mercados à esquerda se recolhe para dar mais espaço à área de negociação. Os breadcrumbs mostram o contexto de navegação (por exemplo, Ativos > BTC > Opções).
- Sino de notificações: substitui o megafone de anúncios. Dropdown com abas Notificações (execuções) e Anúncios. O indicador de não lido aparece já na primeira renderização via SSR. O estado de dispensado por carteira fica salvo no localStorage.
- Menu da conta ao passar o cursor: passar o cursor sobre o botão de perfil mostra um dropdown com patrimônio, P&L, poder de compra e número de posições. Usuários que ainda não definiram um nome de usuário veem o convite "Escolher nome".
- Ajuda na navegação: botão de ajuda na barra de navegação com link para a documentação.
- Indicador de serviço indisponível: indicador vermelho no cabeçalho quando o backend está inacessível.
- Indicador de posição no leaderboard: badge de posição ao vivo na barra de navegação (substitui o link do leaderboard), com indicadores de variação que mostram mudanças de posição conforme você negocia.
- Páginas de detalhe de posições liquidadas: visão detalhada por posição com gráfico de preço teórico, execuções individuais, decomposição do P&L realizado e nomes amigáveis de instrumentos (por exemplo, "BTC $55,000 Call Apr 14").
- Imagens dinâmicas de prévia social: imagens OG geradas para todas as páginas compartilháveis: instrumentos (gráfico teórico + gregas), estratégias multi-perna (diagrama de payoff + nome da estratégia), perfis (estatísticas de P&L + posição), leaderboard (top 5 com medalhas) e confirmações de negociação.
- Barra de navegação desktop reestruturada: rodapé removido, botão de conectar movido para o cabeçalho, indicadores de atalhos de teclado (Ctrl+K) visíveis.
- Corrigido o corte de preço no cabeçalho do gráfico: os preços não transbordam mais nos cabeçalhos de gráfico no desktop.
PWA
- Migração para a rota raiz: todas as rotas foram consolidadas de
/mobile/*para a raiz/*. Os caminhos legados/mobile/*redirecionam automaticamente. Esquema de URL unificado entre desktop e mobile. - Fluxo de atualização do PWA no iOS: usuários que instalaram o antigo PWA
/mobileveem um modal de atualização em estilo nativo, com instruções passo a passo de instalação no iOS (Compartilhar > Ver Mais > Adicionar à Tela de Início), usando a iconografia oficial da Apple. - Splash screens no iOS e preload de navegação: mais de 12 splash screens específicas por dispositivo eliminam o flash branco na inicialização a frio. O preload de navegação busca a página enquanto o service worker inicializa.
- Atalhos do app: pressione e segure o ícone na tela de início para acesso rápido a Portfólio e Depósito.
- Bloqueio de suspensão da tela: mantém a tela ligada durante sessões de negociação no modo PWA standalone. Readquire automaticamente ao retomar o app.
- Armazenamento persistente: solicita
navigator.storage.persist()para evitar que o navegador descarte os recursos do app em cache.
API
instrument_typenos eventos do WebSocket: os eventos de execução e de atualização de ordem agora inclueminstrument_type("option"ou"perp"). Adição retrocompatível.- Filtro
?symbol=emGET /profile/trades: filtra o histórico de negociações por símbolo do instrumento. Reduz o payload para traders de alto volume que consultam instrumentos específicos. - Execuções de perpétuos encaminhadas via WebSocket: as execuções de perpétuos da Hydromancer agora são publicadas no feed do WebSocket (antes ausentes).
AcceptRfqQuoteePlaceOrdervia WebSocket: o ciclo de vida completo da ordem (enviar RFQ, receber cotações, aceitar, colocar ordem) agora pode rodar em uma única conexão WebSocket, sem nenhuma chamada REST.- Campo
fillsemPerpOrderResult: o SDK em Rust agora retorna as execuções diretamente nas respostas de ordens de perpétuos. Campos:coin,side,size,price.
Correções
- Ordens fantasma IOC/FOK: ordens IOC e FOK parcialmente executadas deixavam a quantidade restante no livro de ofertas como ordens fantasma. Agora o restante é cancelado imediatamente após a execução parcial, e o status é definido como
Canceledem vez dePartiallyFilled. - Reserva de prêmio em compras de fechamento: ordens de compra que fecham uma posição vendida reservavam prêmio indevidamente, drenando o patrimônio e disparando liquidações falsas. A reserva de prêmio agora é ignorada para ordens de compra que fecham posição.
- Cadeias vencidas após deploy: cadeias de opções vencidas apareciam brevemente como Active ao reiniciar o servidor. Os instrumentos agora são verificados contra os timestamps de vencimento no carregamento e marcados imediatamente como
ExpiredPendingPrice. - Fallback de RFQ sem cotações: RFQs com execução automática que não recebiam cotações elegíveis mostravam um erro. Agora recorrem à colocação de uma ordem limitada no livro de ofertas.
- Precisão dos maiores movimentos no letreiro: os maiores movimentos na barra de cotações agora derivam do cache de resumo de opções, usando a variação do preço teórico em relação ao teórico de 24h, filtrada apenas para opções cotadas. Antes usavam dados brutos de BBO, que geravam valores ruidosos ou desatualizados.
- price_change no resumo de opções: a referência de BBO para o cálculo de variação de preço agora usa apenas o bid do livro de ofertas, substituindo o fallback de mark vs. teórico que podia gerar números enganosos.
Sem nova versão - 14 a 16 de abril de 2026
Mudanças incompatíveis
PUT /orderePUT /bulk_order: novos endpoints de substituição atômica de ordens. Cancelam a ordem existente e colocam uma nova no mesmo tick do motor. Se o cancelamento falhar (ordem já executada ou não encontrada), a nova ordem não é colocada. Usam o novo tipo de assinatura EIP-712ReplaceOrder. Clientes que usam o padrão antigo de cancelar e depois colocar devem migrar.
Adições
API
GET /profile/realized-pnl: retorna o PnL realizado por símbolo, agregado a partir de execuções e liquidações. Aceita o parâmetro opcionalcompetition_idpara restringir os resultados à janela de uma competição.- Campo
realized_pnlemGET /profile/trades: cada linha de execução agora inclui o PnL realizado atribuído àquele trade específico. net_depositse componentes de atribuição emGET /profile/historical-pnl: os pontos históricos de snapshot de patrimônio agora incluem depósitos líquidos acumulados e detalhamentos de atribuição de P&L.- Campo
prev_day_pxemGET /markets: o payload de mercados agora inclui o preço de referência do dia anterior por instrumento.
UI
- Megafone de anúncios: ícone de megafone nos cabeçalhos desktop e mobile com badge de contagem de não lidos. Ao clicar, abre um popover listando os anúncios (título, corpo, data, imagem/link opcional). Estado de lido/dispensado por carteira.
- Editar e substituir ordens: no desktop, ícone de lápis nas ordens abertas para edição inline de preço/tamanho; o check envia, o X cancela, e a linha fica destacada em âmbar durante a edição. No mobile, tocar em uma ordem exibe os botões Cancelar e Atualizar.
- Posições liquidadas na página do membro: nova seção "Posições liquidadas" entre Posições e Histórico de trades. Mostra o PnL realizado por símbolo de opções vencidas e trades encerrados, com coloração verde/vermelha. Veja Settlement para entender como as opções são liquidadas.
- Coluna de PnL realizado no histórico de trades: exibe o PnL realizado por execução com codificação de cores; execuções que abrem posição mostram um traço.
- Gerenciamento de chaves de API não pisca mais ao carregar: a lista de agentes é renderizada imediatamente, em vez de aparecer de repente após o carregamento da página.
- Tabela de posições vazia oculta: quando o usuário não tem posições abertas, a seção de posições é ocultada por completo, em vez de mostrar cabeçalhos de tabela vazios.
- Botões de conexão no estado vazio: restaurados os botões de conexão de carteira que faltavam nas telas de estado vazio.
PnL
- P&L agora é líquido do prêmio pago: o PnL realizado agora considera o prêmio pago para abrir a posição. Antes, mostrava apenas o payout bruto. Exemplo: uma carteira que antes mostrava +27K após considerar $135K de prêmio pago.
- Opções liquidadas agrupadas por ativo subjacente: a atribuição não lista mais cada símbolo vencido individualmente; as posições liquidadas são agrupadas em blocos por ativo subjacente (por exemplo, "BTC (settled)").
- Patrimônio ao vivo não cai mais a zero para posições OTM: corrigida a quebra em que o valor de posições fora do dinheiro (OTM) caía abruptamente a zero na ponta ao vivo do gráfico de patrimônio.
- Atribuição visível para carteiras apenas com posições vencidas: carteiras sem posições abertas, mas com opções liquidadas, agora mostram corretamente a atribuição de PnL.
Correções
GET /profileretornando 500: corrigido para carteiras com dados agregados incompletos.- PnL não realizado desatualizado após reinício do servidor: os portfólios agora são reprecificados imediatamente no reinício, em vez de aguardar a próxima atualização de marcação.
- Erro de um dia no DTE nos diagramas de payoff: corrigido o cálculo de dias até o vencimento que deslocava as linhas de ponto de equilíbrio e de perda máxima.
- Roubo de foco: corrigido o roubo de foco durante interações na UI.
- Melhorias na renderização de gráficos: diversas correções de exibição de gráficos.
Sem nova versão - 11 a 13 de abril de 2026
Adições
Notificações push
- Notificações push no navegador: assine alertas de execução, liquidação e settlement via Web Push. Novos endpoints:
POST /push/subscribe,POST /push/unsubscribe,POST /push/preferences. Todos os endpoints de push exigem uma assinatura de carteira EIP-712. Alternâncias por tipo (execuções, liquidações, settlements) disponíveis nas Configurações do desktop e nas preferências da conta no mobile. - Notificações toast no desktop: toasts em tempo real para execuções de ordens e erros no layout desktop.
Trading
- Aba Greeks (desktop): nova aba no painel inferior mostrando, por posição, delta, gama, teta, vega, rho e IV. Os cabeçalhos das colunas têm tooltips com links para a referência de Greeks. Linhas de subtotal por ativo subjacente; total do portfólio quando as posições abrangem vários ativos subjacentes.
- Colunas ordenáveis no leaderboard: as colunas de lucro, volume e eficiência no leaderboard agora são clicáveis para ordenação.
- Melhorias no formulário de ordens: seletores rápidos de quantidade, tooltips aprimorados, dimensionamento responsivo.
- Gráfico de PnL na página do membro: os perfis de membros agora mostram um gráfico de patrimônio ao longo do tempo.
- Estatísticas HC/HL movidas para o painel lateral: as estatísticas da HyperCore e da HyperLiquid foram movidas para um painel lateral.
- Linhas de ordens com tamanho zero removidas: a lista de ordens não exibe mais ordens com tamanho zero.
Ghost Mode
- Ghost mode: usuários não autenticados podem navegar por mercados, livros de ofertas e gráficos sem conectar uma carteira. A página de configurações também fica acessível sem autenticação. Veja o guia do desktop para mais detalhes.
- Favicons dinâmicos por ativo: o ícone da aba do navegador mostra um anel verde com o ícone do ativo ativo. Variantes de call/put são exibidas ao visualizar opções.
Gráficos
- Visualização da superfície de volatilidade: visualizador 3D interativo da superfície de volatilidade em
/risk/vol-surfacepara todos os ativos subjacentes listados. Veja Oráculos para entender como as superfícies de volatilidade são obtidas. - Gráfico do portfólio com intervalo padrão de 5 minutos: renderização mais suave em contas mais novas (visão de 8H em vez de 4D).
- Gráfico atualiza ao mudar preferências: alternar o modo do gráfico nas preferências agora tem efeito imediato, sem recarregar a página.
API
- Filtro de vencimento em
GET /options-summary: passe?expiry=YYYY-MM-DDpara restringir a resposta a um único vencimento.
Conta
- Nomes de exibição de usuário: carteiras podem definir um nome de exibição mostrado no leaderboard e nas páginas de membros. Os nomes entram em vigor instantaneamente (sem revisão de moderador). Editável inline tanto nas Configurações do desktop quanto nas configurações do mobile.
Correções
- Lados bid/ask invertidos em algumas ordens: corrigida a atribuição incorreta de lado que dependia da direção da ordem on-chain.
- Tempo de carregamento da cadeia de opções reduzido em ~60%: carregamento mais rápido via filtragem por vencimento na API e dados de gráfico pré-carregados para os strikes visíveis.
- Troca de mercado agora é instantânea: sem recarregar a página inteira ao trocar de ativo subjacente no desktop.
- Crash ao trocar de tenor no desktop: corrigidos o crash e a lentidão ao alternar entre tenores de opções.
- Rolagem da página de conta no desktop: conteúdo longo do histórico de trades agora rola corretamente.
- 404 em /preferences no mobile: a página de preferências agora é acessível no mobile.
- Poder de compra atualiza após depósito: o saldo agora é atualizado imediatamente após um depósito pelo faucet da testnet, sem precisar atualizar a página.
- Bloqueio de trade exibido quando o agente não está configurado: mostra ações de configuração em vez de um botão de assinatura sem função.
- Banners de erro somem automaticamente: banners de erro persistentes agora se fecham sozinhos.
- Layout do leaderboard no mobile: corrigidos valores espremidos no mobile em comparação ao desktop.
- Cintilação de redirecionamento eliminada: removidos os redirecionamentos visíveis ao navegar para o app.
Nenhuma nova versão - 7 a 10 de abril de 2026
Veja também: Semana 4: Desktop entra no ar
Adições
API
GET /historical-theos: preços teóricos de opções ao longo do tempo, substituindo o histórico bruto de preços do último negócio. Intervalos de tempo e limites configuráveis. Veja a Referência da API REST.GET /historical-theos/batch: busque séries de preços teóricos de até 50 instrumentos em uma única requisição. Parâmetros:instrument_names=A,B,C&interval=1h&limit=100.realized_pnlemGET /profile/trades: as execuções agora retornam o PnL realizado.
UI
- Greeks agora usam marcações teóricas: todos os cálculos de Greeks usam preços teóricos em vez de preços do último negócio, melhorando significativamente a precisão para strikes ilíquidos.
- Gráfico de preço teórico nas páginas de instrumentos: as páginas de contratos de opções exibem um gráfico histórico de preço teórico (substitui o histórico bruto de preços de negócios).
- Posição inline na página do instrumento: sua posição aberta no instrumento ativo é exibida diretamente na página do contrato.
- Melhorias nos estados vazios: textos e layout melhores para gráficos vazios e estados vazios.
Correções
- Limite de depósito do faucet: o faucet da testnet agora respeita o saldo restante permitido por carteira em vez de um máximo fixo.
- 503s intermitentes em
GET /portfolio: corrigidos erros intermitentes de servidor no endpoint de portfólio. - Indicadores de carregamento: eliminados indicadores de carregamento fantasmas durante o carregamento da página.
GET /profile/tradesretornando 500: corrigido para carteiras com execuções.- Deslocamento de layout na página de membro: corrigido o deslocamento de alinhamento na página de membro.
- Rótulo do gráfico padrão: esclarecido que a preferência de gráfico padrão se aplica aos ativos.
Nenhuma nova versão - 1 a 6 de abril de 2026
Veja também: Atualização de produto da semana 3
Mudanças incompatíveis
- Modelo de margem de portfólio alterado: a fórmula da margem inicial mudou de
scanning_riskparamax(scanning_risk, option_floor) + gamma_overlay. Três novos campos nas respostas de portfólio via REST e WebSocket:scanning_risk,option_floor,gamma_overlay. O saldo disponível agora éequity - total_margin_used(antes eracash - total_margin_used). O patrimônio agora inclui o PnL não realizado de perpétuos. - Mudanças em
GET /risk/grid: removido o parâmetroinclude_open_orders. O modelo de cenários mudou de eixo único{scenario_type, value}para choques combinados{spot_shock_pct, vol_shock_pct, pnl_weight, is_tail}. O PnL do pior cenário agora é ponderado.
Adições
Desktop
- Layout de trading desktop: interface desktop completa com visualização de trade em múltiplos painéis, navegação por teclado, gráfico de preço do instrumento, símbolos compactos de opções e clique para navegar de posições/ordens até os instrumentos.
API
- Instrumentos de opções agora incluem símbolo e preço do ativo subjacente: as respostas de instrumentos de opções expõem seu ativo subjacente. Veja a Referência da API REST.
Competição e leaderboard
- Sistema de competições: novos endpoints:
GET /competitions,GET /leaderboard,GET /competition-metric-ranks,POST /submitUsernameRequest. Calendário mensal (do dia 1 ao dia 1, às 16:00 ET). Competição na testnet com prêmios reais (300/$200 em SYN). Market makers excluídos do ranking. - UI do leaderboard: selo de posição ("Rank #X" ou CTA "Trade to win"), card com a distribuição de prêmios, integração com Hyperliquid Names, símbolos de opções formatados ("04/10 $59,000 Call"), P&L por lote FIFO, timestamps relativos (5m, 2h, 3d).
- Markdown nas descrições de competições: as descrições de competições suportam formatação markdown.
Portfólio
- Margem de portfólio: margem cruzada entre posições correlacionadas. Instrumentos vencidos excluídos do gamma overlay.
UI
- Símbolos compactos de opções: formato legível em toda a UI: "04/10 $59,000 Call".
- Botão Max no formulário de ordem: tamanho máximo com um clique com base na margem disponível.
- Separadores de milhar: todos os campos de preço e tamanho exibem separadores.
- Clique em posição/ordem → instrumento: tocar em uma linha de posição ou ordem navega até o contrato correspondente.
- Página de preferências: tooltips, alternância de selos e estado de preferências sincronizado entre sessões.
Correções
- Centralização UTC dos gráficos: os gráficos de ativos são centralizados em limites UTC; transições de timeframe estabilizadas.
- Gestos de deslizar (mobile): corrigido o comportamento errático de deslizar para cancelar e da navegação por deslize.
- Remoção de prefixo de URL no desktop: removido o prefixo
/mobiledas URLs no desktop; seleção de strike corrigida.
Nenhuma nova versão - 24 a 31 de março de 2026
Veja também: Atualização de produto da semana 2
Adições
Gráficos
- Gráfico histórico de PnL: gráfico de patrimônio ao longo do tempo na página inicial com crosshair interativo. Toque/clique para inspecionar qualquer ponto; mostra o timestamp e atualiza a exibição do saldo.
- Gráfico do ativo: gráfico de preço spot por ativo com eixo y limitado ao intervalo do período visível.
Gerenciamento de ordens
- Cabeçalhos de seção: as seções de posições, ordens e histórico têm cabeçalhos distintos para facilitar a leitura.
- Deslizar para excluir ordens (mobile): deslize para a esquerda em uma ordem aberta para cancelá-la.
- Confirmação de cancelamento de ordem: diálogo dedicado para cancelar ordens.
- Clique na linha da ordem → página do contrato: tocar em uma ordem navega até a visualização de detalhes do instrumento.
- Aparência atualizada das ordens abertas: estilo renovado para ordens abertas.
Conectividade
- Banners de desconexão do WebSocket: banners visíveis quando o feed WS cai ou o backend está inacessível.
Greeks
- Greeks da posição na página do ativo: delta, gama, teta e vega agregados na página de detalhes do ativo.
- Greeks do contrato na página do contrato: Greeks por posição na visualização do contrato.
- Pontos de equilíbrio para todos os tipos de opção: pontos de equilíbrio calculados e exibidos para calls, puts e spreads.
Histórico de trades
- Horário de execução em
GET /profile/trades: as linhas do histórico de trades agora incluem o timestamp da execução. - Persistência do vencimento na grade de opções: o vencimento selecionado é salvo nos parâmetros de consulta da URL e restaurado na navegação.
- Instrumentos de opções incluem símbolo e preço do ativo subjacente: os instrumentos de opções expõem seu ativo subjacente nas respostas.
Conta
- Sistema de nomes de usuário: defina um nome de exibição para o endereço da sua carteira, mostrado no leaderboard e nas páginas de membros.
Correções
GET /profile/tradesretornando 500: corrigido para carteiras com execuções.- Ordem padrão de exibição das posições: as posições mostram por padrão o valor, depois o PnL e depois o custo médio (antes era inconsistente).
- Rodapé da ordem mostra o tempo até o vencimento: adicionada a exibição de TTE; um atraso de 1 segundo na assinatura evita envios duplicados acidentais.
- Logout no mobile: o estado da sessão é limpo corretamente ao sair.
- Fundo no modo claro: corrigida a cor de fundo no modo claro.
- Transições de página mais suaves: menos travamentos visuais durante a navegação.
- Fundo do deslize: corrigida a renderização do fundo durante interações de deslize.
Nenhuma nova versão - 16 a 23 de março de 2026
Veja também: Atualização de produto da semana 1
Adições
Tema e aparência
- Modo escuro Midnight: novo tema escuro de alto contraste, ao lado do modo claro existente.
- Modo de tema automático: o tema acompanha automaticamente a preferência claro/escuro do dispositivo. Novos usuários usam o modo automático por padrão.
Painel e estatísticas
- Campos de estatísticas HL e HC: alterne entre estatísticas específicas da Hyperliquid e da Hypercall no painel.
- Razão put/call: razão put/call adicionada ao painel de estatísticas da Hypercall.
- Badges de resultado: badges visuais para resultados de trades (lucro, prejuízo, vencida sem valor etc.), com gráfico de pizza no cabeçalho da posição.
Cadeia de opções
- Ordenação de strikes e persistência da seleção: os preços de exercício podem ser ordenados; a seleção persiste entre sessões.
- Preenchimento inicial do preço-alvo: a página de preço-alvo já abre com o preço atual do ativo subjacente, em vez de vazia.
- Normalização do preço do ativo subjacente: exibição consistente do preço do ativo subjacente em todas as páginas, incluindo os dados de perpétuos da DEX.
UX de ordens
- Mensagem de cancelamento para ordens executadas/expiradas: tentativas de cancelar ordens já executadas ou expiradas mostram "This order has already been completed or cancelled" em vez de um erro bruto.
Preferências
- Página de preferências: tooltips, rotação de badges e estado de preferências sincronizado entre sessões.
Correções
Conectividade
- Dados atualizados na reconexão do WebSocket: ordens, execuções e portfólio são buscados novamente na reconexão do WS, em vez de exibir dados desatualizados.
- Atraso de reconexão do WS: o temporizador de backoff agora é zerado após uma conexão saudável. Antes ele nunca era zerado, fazendo com que todas as reconexões esperassem 30 segundos depois de algumas desconexões normais.
Ordens
- Ordens fantasmas em instrumentos vencidos: ordens em instrumentos liquidados agora são removidas corretamente, evitando erros "Orderbook not found" ao cancelar.
- Rejeição de saldo de caixa negativo: ordens de compra (BUY) que deixariam o saldo de caixa negativo agora são rejeitadas no envio. Mensagem de rejeição: "Insufficient cash (Standard)". Essa verificação pode ser ignorada em ordens buy-to-close que reduzem risco. Veja Margem padrão.
UI
- Animação do preço-alvo: corrigida a animação que ficava pulando/travada na página de preço-alvo.
- Corte no gráfico de ativos no mobile: corrigido o corte das ações rápidas no gráfico de ativos no mobile.
- Travamento no carregamento do PWA mobile: corrigido um problema que fazia o PWA mobile travar em "Loading...".
Problemas conhecidos
Antes de depurar o comportamento do cliente, verifique primeiro a página de status da Hypercall para incidentes ativos e manutenções.
O comportamento e os problemas conhecidos do ambiente de staging são comunicados junto com o acesso; entre em contato com a equipe para mais detalhes.
Política de versionamento
Rótulos de estabilidade:
- Estável: caminhos do router e formatos principais de requisição/resposta com baixa probabilidade de mudança
Mudanças incompatíveis: serão documentadas aqui, com guias de migração.