Guia completo do Uniswap DualPool: o capital do LP parado também pode gerar rendimento

Fonte: Uniswap; Compilado por: Claw do Jinse Finance

O DualPool da Uniswap já está em produção — é um open source do Uniswap v4 Hook, co-designado pela Spark e desenvolvido pela Uniswap Labs. Permite que os market makers ganhem receitas de empréstimo enquanto os ativos estiverem ociosos, só colocando o capital em uso quando a transação acontece. De fora, o DualPool é apenas um pool v4 comum: traders, agregadores e solvers executam transações via PoolManager. Mas por dentro, o capital no pool é guardado num cofre de rendimento ERC-4626; quando é necessário executar uma operação, o capital é puxado para posições de liquidez concentrada.

O problema do capital ocioso

A liquidez on-chain está sempre de prontidão. Os ativos depositados em pools AMM podem ser negociados a qualquer momento, mas no intervalo entre transações esses ativos não geram qualquer rendimento. Para market makers profissionais, isso os força a escolher entre:

  • Colocar o capital no pool: ganha comissões de negociação, mas abre mão do rendimento de empréstimos;

  • Colocar o capital no mercado de empréstimos: ganha rendimento, mas não consegue participar do fluxo de negociação.

Para pares de negociação entre stablecoins, as taxas são muito baixas e a concorrência é intensa; o rendimento de empréstimos pode empatar ou até superar as taxas. Por isso, às vezes os market makers preferem rendimento, e essa liquidez deixa de aparecer no AMM.

O DualPool elimina essa escolha ao disponibilizar liquidez em tempo real: entre transações, o capital é mantido num cofre de rendimento; quando a transação chega, o pool, dentro da própria transação, chama sob demanda o montante necessário.

Como funciona o DualPool

Entre duas transações, a liquidez efetivamente mantida pelo PoolManager no DualPool é quase zero. O capital fica num cofre ERC-4626 escolhido pelo operador do pool, gerando continuamente rendimento de empréstimos. Quando chega uma transação, o Hook executa de forma atómica, dentro do contexto da transação, um ciclo de quatro passos:

  1. Retirar apenas o capital estritamente necessário: o Hook calcula, com base no preço atual, as quantidades de cada tipo de token exigidas pelo seu intervalo de configuração, e apenas retira a diferença do cofre.

  2. Implantar liquidez concentrada: de acordo com o esquema de alocação do operador, publicar o capital como uma ou várias posições.

  3. Executar a transação normalmente: o PoolManager executa os cálculos padrão de swaps para essas posições e cobra a taxa fixa do pool, sem ser diferente de outros pools.

  4. Recolocar o capital restante no cofre: o Hook remove todas as posições que adicionou, faz o acerto com o PoolManager e devolve o capital remanescente ao cofre.

Para o trader, isto é uma transação Uniswap normal. O capital do operador só sai do cofre durante o período em que a transação decorre e é devolvido imediatamente após a conclusão. Como a própria transação trata da retirada e recolocação de liquidez, o sistema pode operar de forma autónoma, sem qualquer infraestrutura de Keeper.

Para quem é o DualPool

  • Operadores são market makers profissionais. Os operadores implementam o pool, definem taxas, escolhem cofres de rendimento, desenham a distribuição de liquidez e injetam capital inicial. Em troca, recebem simultaneamente comissões de negociação e receitas geradas pelo capital ocioso.

  • Provedores de liquidez (LPs) podem entrar no pool quando o operador permitir depósitos externos. Os LPs recebem participação proporcional nos ativos do pool, enquanto ganham comissões e rendimento do cofre, sem necessidade de gestão ativa.

  • Traders (Swappers) negociam com o DualPool como se estivessem a usar qualquer outro pool Uniswap, através das interfaces, agregadores e routers que já utilizam. Todo o processo da transação não revela a realidade de que a liquidez acabou de estar armazenada no cofre de empréstimos.

O router e o agregador executam o caminho de transação do DualPool usando a execução existente do v4, sem necessidade de mudanças. A única (opcional) adição de trabalho é o pricing (detalhado abaixo).

Formas de liquidez

O DualPool não deposita o capital num único intervalo de preço. Cada pool traz um esquema de distribuição configurado pelo operador: um conjunto de intervalos de ticks ponderados que são implantados em conjunto a cada transação. Os intervalos podem sobrepor-se, podem ser distribuídos de forma assimétrica em ambos os lados do preço atual, ou podem estar totalmente inclinados para um lado. Isto já basta para codificar uma estratégia de market making, e não apenas um simples “banding”. Algumas formas típicas de distribuição que os operadores podem executar incluem:

  • Livro de ordens de stablecoins: concentrar a maior parte do peso numa faixa estreita em torno do preço ancorado, com coberturas mais superficiais na periferia, de modo que a profundidade crítica se concentre onde praticamente ocorre todo o volume de transações.

  • Tipo haltere (barbell): manter o centro bem apertado e, ao mesmo tempo, manter profundidade unilateral mais longe, para que grandes fluxos unilaterais sejam negociáveis sem diluir a liquidez em ticks raramente tocados.

  • Escada de defesa ancorada: empilhar suportes cada vez mais profundos no lado frágil do preço ancorado, adequada para operadores com obrigações de defesa.

Os operadores podem substituir o esquema de distribuição a qualquer momento entre transações, portanto a forma pode ser ajustada com flexibilidade ao ambiente de volatilidade: mais estreito e agressivo quando o mercado está calmo; mais amplo e defensivo quando o mercado está tenso. O algoritmo de alocação de capital é conservador: antes de calcular a liquidez, o Hook atribui a cada intervalo uma quota exata do saldo do pool; assim, intervalos sobrepostos nunca calculam capital duplicado.

Características que nunca mudam

As seguintes três propriedades são fixadas aquando da criação do pool:

  • Taxas: cada DualPool tem taxas estáticas; depois não existe qualquer caminho de código que as possa alterar. Se for preciso reprecificar o mesmo par de negociação, o operador deve implementar um novo pool.

  • Cofre: a ligação entre a moeda do pool e o seu cofre de rendimento é definida de uma vez por todas. Depois, não há caminhos administrativos para direcionar os fundos do pool para um cofre diferente.

  • Lógica de negociação: cada transação executa as operações matemáticas padrão do v4 do PoolManager, para qualquer liquidez implantada pelo Hook.

Essas imutabilidades tornam o DualPool previsível para agregadores e solvers que o roteiam: os operadores não podem alterar a lógica central de negociação, nem existem funções administrativas para roubar fundos depositados por LPs. O poder que o operador mantém (pausar e retomar o pool, reajustar a distribuição de liquidez, limitar depósitos externos e, em caso de emergência, cortar o acesso ao cofre) encontra-se totalmente fora destas três imutabilidades.

Pricing de pools com zero liquidez permanente

Um pool sem liquidez residente quebra o hábito de routers e agregadores ao longo dos anos: estimar profundidade ao ler o estado do pool. Se consultar o DualPool on-chain entre duas transações, verá um preço, mas a liquidez é quase zero — mesmo que o pool consiga transacionar milhões de dólares. Assim, o DualPool expõe uma interface de pricing dedicada. Usar totalmente o fluxo nativo de pricing do Hook é opcional, mas fazê-lo melhora significativamente o roteamento:

  • Visão de pricing indicativa: precifica uma transação prevista com base na liquidez que o Hook irá implantar (incluindo taxas). Zero pricing indica que o pool não consegue negociar e deve ser roteado para outro lugar.

  • Visão de “par de reservas”: separa os ativos totais do pool da liquidez efetiva — ou seja, o montante que o cofre consegue devolver imediatamente. Quando o cofre tem um limite ou a utilização é restringida, a liquidez efetiva é o limite; o Hook configura o tamanho do capital com base nesse limite, e o router também deve limitar o tamanho da transação em conformidade.

  • Pools pausados retornam um erro explícito, em vez de fornecer silenciosamente preenchimento vazio; assim, o router pode saltá-los.

Não há mudanças no nível de execução, porque uma transação do DualPool é uma transação v4 padrão, com as mesmas restrições de execução e de slippage de outros pools. A única diferença é o custo: o ciclo adiciona operações de levantamento e depósito do cofre dentro da transação, portanto o gas pode ser várias vezes superior ao de uma transação v4 normal. Com os preços de gas atuais, isto não custa mais do que alguns cêntimos; ainda assim, conta no preço líquido de execução.

Modelo de segurança

O modelo de segurança do DualPool é, em grande parte, implementado por código, independentemente da escolha do cofre:

  • Isolamento: o Hook mantém um livro-razão por pool e por moeda, com o capital de cada pool. O saldo total de tokens nunca é usado como input contabilístico e os ativos registrados num pool não podem ser resgatados por outro.

  • Segurança das quotas: as quotas dos LPs são internas e intransferíveis. O cálculo das quotas inclui um deslocamento virtual para resistir a ataques de inflação; o arredondamento é sempre feito na direção favorável aos LPs existentes e é exigido um período mínimo de detenção configurável para evitar que a mesma transação em bloco capture arbítrio de taxas com depósitos e levantamentos.

  • Proteção contra reentrada: os pontos de entrada para utilizadores incluem proteções padrão; o ciclo de transação é protegido por um bloqueio transitório que rejeita reentradas de transações do mesmo pool e congela qualquer posição de depósitos e levantamentos do Hook durante qualquer ciclo.

A suposição central de confiança é o cofre de rendimento subjacente. O cofre do pool mantém os fundos ociosos e o Hook tem autorização sempre ativa sobre ele; por isso, o operador deve escolher um cofre cujo risco de governação e de upgrade seja aceitável. A escolha do cofre é um núcleo da gestão de risco do operador. Se o risco de um cofre se tornar inaceitável, a alternativa é uma única operação de emergência: pausar o pool, desativar depósitos, revogar as autorizações do cofre e tentar retirar todo o capital do pool. Se o cofre tiver limite ou liquidez insuficiente, o sistema degrada de forma elegante: o pricing e o tamanho de implantação diminuem para a liquidez efetiva, e as participações dos LPs sobre os ativos totais não são afetadas; um cofre que não aceite depósitos nunca bloqueia a transação.

A OpenZeppelin auditou o DualPool e não encontrou vulnerabilidades graves ou de alto risco; todas as questões reportadas foram resolvidas. O relatório de auditoria é fornecido juntamente com o código do DualPool Hook.

Construir com DualPool

Se quiser que os seus fundos continuem a ganhar rendimento entre duas realizações, o DualPool já está em produção. Para implementar o seu próprio DualPool, use este guia de deployment: ele orienta como implantar um Hook auditado a partir da fábrica oficial. O guia de deployment inclui o processo completo, incluindo configuração e validação.

Para saber mais profundamente como o DualPool funciona, consulte o repositório GitHub e a documentação para developers, que inclui guias de integração para routers e agregadores.

UNI4,05%
Ver original
Esta página pode conter conteúdos de terceiros, que são fornecidos apenas para fins informativos (sem representações/garantias) e não devem ser considerados como uma aprovação dos seus pontos de vista pela Gate, nem como aconselhamento financeiro ou profissional. Consulte a Declaração de exoneração de responsabilidade para obter mais informações.
  • Recompensa
  • Comentar
  • Republicar
  • Partilhar
Comentar
Adicionar um comentário
Adicionar um comentário
Nenhum comentário
  • Fixado