Recentemente estou a fazer um resumo dos métodos de avaliação da área DeFi. Depois de estudar alguns casos, a Uniswap é uma representante típica em termos de influência e lógica iterativa. Este artigo realiza uma revisão abrangente da Uniswap.
A lógica interna da iteração da Uniswap da V1 para a V4, bem como o lançamento do protocolo UniswapX, é uma inovação funcional e otimização de mecanismos para transações DEX.
V1 implementou inicialmente AMM no campo da criptografia, V2 reduziu a exposição ao risco do ETH e lançou um oráculo de preços mais difícil de manipular, V3 resolveu o problema da baixa eficiência de capital através da liquidez centralizada, V4 implementou um DEX personalizável, e o protocolo UniswapX foi fortalecido através do mecanismo de leilão. A competitividade dos agregadores de terceiros permite otimizar o deslizamento de preços.
Não é necessário entrar em detalhes sobre o status e influência da Uniswap. Segundo os dados em tempo real da Dune, a Uniswap continua a ser a DEX com a maior quota de mercado.
Como uma DEX líder, ela não existe há muito tempo, mas foi iterada muitas vezes. Vamos dar uma olhada no processo de desenvolvimento:
Em junho de 2017, Vitalik publicou o artigo On Path Independence;
Em novembro de 2018, foi lançado o Uniswap V1: suportando transações entre ETH e ERC-20Token;
Em março de 2020, foi lançado o Uniswap V2: suportando transações entre quaisquer dois pares de Tokens ERC-20;
Em maio de 2021, o Uniswap V3 foi lançado: melhorando a taxa de utilização dos fundos LP e propondo o conceito de liquidez agregada;
Em junho de 2023, o Uniswap V4 foi lançado: a personalização do contrato Hooks foi introduzida para evitar vazamento de valor;
Em julho de 2023, Uniswap X foi lançado: agregando liquidez on-chain e off-chain, proteção MEV.
Em 2017, Vitalik publicou um artigo “On Path Independence” em sua página pessoal, no qual o mercado automatizado de criador (AMM) foi introduzido pela primeira vez no campo da criptografia, que é um método de negociação diferente do CEX. Claro, essa abordagem já vinha sendo discutida há muito tempo em círculos não criptográficos (como círculos financeiros tradicionais).
Sabemos que no mercado de ações, mercado de futuros ou CEX existente, a maioria das transações são conduzidas no Livro de Ordens (modo livro de ordens). Os market makers (como corretores e exchanges centralizadas) correspondem as ordens de compra dos compradores e as ordens de venda dos vendedores quando os preços correspondem, completando assim as transações entre compradores e vendedores.
No entanto, têm surgido problemas no caso da descentralização. A razão é que no ambiente descentralizado da DEX (qualquer pessoa pode participar na criação do mercado), é difícil corresponder transações no modo de livro de ordens para fornecer liquidez correspondente, taxa de transação e a experiência é relativamente fraca e, sem liquidez suficiente, é difícil corresponder à eficácia operacional da CEX.
Neste artigo de Vitalik, é introduzido um conceito inovador no mercado de criptografia: Automatic Market Maker. Neste conceito, a fixação de preços de ativos é feita através de algoritmos de preços em vez do modelo tradicional de livro de ordens.
No modelo AMM, não há necessidade de cotações de formador de mercado ou correspondência de sistema, e os traders podem utilizar diretamente a liquidez no pool para realizar a troca de ativos.
TokenA e TokenB formam uma relação de produto constante: tokenA_balance(p) * tokenB_balance(p) = K (K permanece inalterado)
Este é um sistema de negociação impulsionado pela liquidez, este modelo é chamado de Constant Product Market Maker (CPMM). Sob esta abordagem, um market maker independente de caminho pode ser formado definindo qualquer relação (monotônica) entre tokenA e tokenB e calculando suas derivadas a qualquer momento para dar um preço.
No mecanismo de criação de mercado da AMM, não há contraparte específica semelhante ao modelo de livro de ordens. O valor real do ativo é determinado pela fórmula matemática de um produto constante. Até certo ponto, pode ser comparado à contraparte sendo um contrato inteligente, que pode realizar a negociação automatizada do ativo.
Alguém precisa de fornecer liquidez num contrato inteligente, e o fornecedor de liquidez é LP (Fornecedor de Liquidez). O LP fornece liquidez para transações ao injetar ativos nos contratos inteligentes no pool, obtendo assim rendimento das taxas de transação.
Depois que o LP constrói a piscina de liquidez inicial, os traders podem trocar Tokens através da piscina, e os arbitradores tomarão a iniciativa de manter os preços dos ativos consistentes com os preços de mercado através da arbitragem de preços entre diferentes mercados.
No Uniswap V1 lançado em novembro de 2018, todos os ativos podem ser resgatados através de ETH. Para transações entre ETH e ERC-20Token, qualquer pessoa pode adicionar tokens para negociar com ETH nativo. ETH é essencialmente um intermediário de negociação de ativos.
Assuma que um ETH vale atualmente 100TokenA, e que um pool de ETH/TokenA consiste em 10 ETH e 1000 TokenA.
Neste momento, o valor de 10 ETH e 1.000 TokenA é igual a 1.000 dólares americanos, e a relação de valor dos ativos é de 1:1.
k=10 *1000=10000, este produto permanece inalterado sem adicionar mais liquidez.
Agora, suponha que eu queira vender 5 ETH para o pool, então deve ser:
y=10000/(10+5)=666.67, o número de ETH na piscina aumentou para 15 e o número de USDC neste momento passou a ser 666.67, então troquei 5 ETH por 333.33 TokenA e, neste momento, o preço de um único ETH na piscina é de 666.67/15=44.44, ou seja, um ETH equivale a 44.44 TokenA.
Claro, se o preço numa única pool mudar significativamente em relação ao de outros mercados de negociação, os arbitragistas imediatamente vão entrar em ação até que eliminem a diferença de preço. Afinal, o mecanismo AMM só pode gerar preços de transação, mas não pode descobrir os preços de mercado, portanto, o papel dos arbitragistas é muito importante.
As perdas impermanentes ocorrem quando a relação de preços dos tokens depositados muda em comparação com quando foram depositados na pool. Quanto maior a mudança, maior a perda de impermanência.
Agora, como LP, vamos continuar a dar um exemplo:
Fórmula principal do UniswapV1: x∗y=k
Agora, como fornecedor de liquidez, continuamos a adicionar 10 ETH e 1000 TokenA à pool como liquidez inicial. Neste momento, 1 ETH equivale a 100 TokenA, e o produto constante das duas quantidades de ativos é 101000=10000( xy=10000,x=100y).
Neste momento, se o preço de 1 ETH aumentar para 200 TokenA, podemos converter: x*y=10000, x=200y, calculando assim x=7,071, y=1414,21.
Neste momento, a pool de liquidez mudou de 10 ETH iniciais e 1000 TokenA para: 7.071 ETH e 1414.21 TokenA.
Neste momento, se resgatar todos os ativos, receberei 7.071 ETH e 1414.21 TokenA. O valor real calculado usando TokenA é 7.071200+1414.21=2828.41. Se calculado com base nos 10 ETH iniciais e nos 1000 TokenA, o preço atual deve ser 10200+1000=3000TokenA.
A diferença nesta parte do rendimento (3000-2828.41=171.59TokenA) é a perda impermanente.
As perdas impermanentes ocorrem porque, sob o mecanismo de criador de mercado automático das trocas descentralizadas, os provedores de liquidez ajustam os fundos com base nas flutuações de preços, resultando em perdas de capital e retornos perdidos.
Uma vez que atuam tanto como compradores quanto como vendedores, são forçados a aumentar a quantidade de ativos que possuem quando os preços caem e a diminuir a quantidade de ativos que possuem quando os preços sobem, resultando em perdas.
Claro, também pode optar por cobertura e gerir os riscos ao abrir contratos curtos/longos em ETH.
Para motivar os utilizadores a atuar como LPs para fornecer liquidez e incentivá-los a suportar a volatilidade de preços, surgiu o Token LP. Este é uma recompensa para os fornecedores de liquidez, que podem obter uma certa percentagem da taxa de transação para cada transação (UniswapV1, os traders pagam 0,3% na transação, que pertence ao fornecedor de liquidez). Ao mesmo tempo, também serve como um certificado para LP retirar a liquidez adicionada por si próprio.
Outro conceito é o deslizamento de negociação, amigos que frequentemente fazem negociações DEX certamente estarão familiarizados com ele. Como um sistema de negociação impulsionado pela liquidez, a bela equação de produto constante do AMM é uma curva suave, e o preço muda o tempo todo de acordo com a relação entre oferta e demanda.
Se negociar um grande número de Tokens neste momento, ocorrerá deslize e haverá uma diferença entre o preço esperado e o preço que realmente obtém da pool. Em outras palavras, haverá uma diferença entre o preço desejado e o preço da transação.
A Uniswap V1 apenas suporta transações entre pares de negociação ERC-20/ETH. Na essência, utiliza o ETH como uma moeda de transição intermédia para a troca entre Tokens ERC-20. Embora o caminho da transação seja simples, cria exposição ao risco de ETH para os fornecedores de LP. Riscos de exportação, perda impermanente e deslizamento.
No Uniswap V2, ainda é baseado no mecanismo de 'criador de mercado de produto constante', mas a atualização do V2 trouxe melhorias de eficiência, incluindo: suporte para quaisquer dois pares de tokens ERC-20 para negociação, o que significa que qualquer ERC20 pode ser criado - pares ERC20 sem a necessidade de emparelhar através do caminho de transição do ETH.
Não vou entrar em detalhes sobre este ponto. A atualização do V2 inclui muitos aspectos. Existem mais dois pontos importantes: melhorar o price.Oracle, accomplishflash loan.
No processo do Uniswap V1, o preço calculado dividindo os fundos de reserva dos dois ativos na pool não é seguro se usado como previsão de preço on-chain porque pode ser facilmente manipulado.
Um dos objetivos desta atualização V2 é aumentar o custo e a dificuldade da manipulação de preços。
Na V1, supondo que outros contratos usem o preço atual do ETH-DAI para liquidar derivativos, um atacante que manipula o preço medido pode comprar ETH do par ETH-DAI, desencadear a liquidação do contrato derivativo a um preço inflacionado e depois vender o ETH de volta ao par, trazendo sua negociação de volta ao seu verdadeiro preço. Neste caso, as transações podem até ocorrer como transações atômicas, ou com mineradores controlando a ordem das transações dentro de um bloco.
No V2, para determinar o equilíbrio de preços de mercado, o preço é atualizado uma vez por bloco e o preço de troca de tokens é determinado antes do próximo bloco, ou seja, o preço de mercado de tokens é baseado na última transação no bloco anterior.
Nesta atualização, também é fornecido um novo dado de previsão de preço: preço médio ponderado no tempo (TWAP). Acumular os preços relativos de dois ativos no início de cada bloco permite que outros contratos na Ethereum estimem o preço médio ponderado no tempo de dois ativos ao longo de qualquer intervalo de tempo.
Mais especificamente, no Uniswap V2, o preço é acumulado rastreando a soma cumulativa do preço quando alguém interage com o contrato no início de cada bloco. Com base no carimbo de data/hora do bloco, cada preço é ponderado pela quantidade de tempo desde a última atualização do bloco. Isso significa que o valor do acumulador em qualquer momento dado (após ser atualizado) deve ser a soma dos preços a prazo para cada segundo na história do contrato.
Os utilizadores do oráculo podem escolher quando começar e terminar este período, o custo para os atacantes manipularem a TWAP será mais alto e o preço é relativamente difícil de manipular.
O empréstimo relâmpago é uma inovação absoluta em comparação com as finanças tradicionais. Afinal, as transações reais não podem ser revertidas como na blockchain.
As flash swaps foram introduzidas na V2. Os utilizadores podem emprestar ativos à pool e usá-los noutro local na cadeia, devolvendo apenas os ativos e pagando os juros correspondentes no final da transação (pagamento na mesma transação atómica). Se o dinheiro não for devolvido normalmente, a transação será anulada.
Na verdade, permite que qualquer pessoa empreste rapidamente qualquer ativo armazenado na piscina Uniswap. No V1, os utilizadores não podem receber e utilizar o ativo antes de o pagar. Ao utilizar um ativo A para comprar um ativo B, o ativo A precisa de ser enviado para o contrato antes de o ativo B poder ser obtido.
Existem alguns outros pontos atualizados: Incluindo Uniswap V2, que ajustou o novo framework de contrato, usando um formato simples de ponto fixo binário para codificar e processar preços (precisão), atualização de taxas de protocolo e suporte a meta transações para as ações da pool criadas, etc.
Antecedentes: Uniswap V2 tem problemas de liquidez. De acordo com a introdução ao mecanismo AMM acima, podemos ver que em V1 e V2, a liquidez da pool está realmente distribuída na área [0, +∞]. Em outras palavras, qualquer preço é permitido na pool V2. ocorrem transações (consultar a curva suave da função inversa no produto constante AMM).
À primeira vista, isto parece ser algo bom. A gama de negociação é muito ampla, mas na realidade, não há demanda suficiente para pares de negociação com diferentes volatilidades em suas faixas de preço, o que resulta em uma grave falta de liquidez, exceto para algumas faixas de negociação, baixa utilização de ativos.
Como pode imaginar, é inútil e desperdiçador fornecer liquidez a um preço tão distante do intervalo de preços que o preço pode nunca alcançar esse ponto.
Neste caso, para melhorar a liquidez financeira, o Uniswap V3 introduziu o conceito de liquidez concentrada. Ou seja:
Os provedores de liquidez (LPs) são livres para escolher fornecer liquidez numa determinada faixa de preço, o que pode proporcionar uma melhor liquidez e operar dentro de uma gama de eficiência de capital elevada. Ao mesmo tempo, em termos de aplicação, também pode fazer diferentes configurações para pools de ativos com diferentes volatilidades de preço.
Cada pequeno intervalo de preço no V3 pode ser entendido como um V2 em funcionamento. Durante a transação, o preço mover-se-á suavemente ao longo da curva. Quando o preço atinge uma certa secção do V2, atinge o ponto de intervalo do intervalo de preço do V3. Neste momento, o ponto de preço deslizará para o próximo intervalo de preço.
Depois de entender o conceito acima, podemos conhecer os novos substantivos - O núcleo do V3 são os Ticks.
Ticks, ticks, são os menores incrementos pelos quais um título pode ser negociado. No V3, ao dividir o intervalo de preços de [0, +∞] em inúmeros Ticks refinados, são implementadas restrições nos pontos finais superiores e inferiores de cada intervalo.
A liquidez é agregada através do controlo da granularidade. O intervalo de preços inteiro no V3 é calibrado por Ticks discretos e uniformemente distribuídos. Cada Tick tem um índice e preço correspondente, e cada Tick terá a sua própria profundidade de liquidez.
Os princípios matemáticos do Uniswap V3 mudaram, embora seja semelhante à camada subjacente do V2:
L=xy sob o sinal de raiz
L é chamada a quantidade de liquidez, e a liquidez no pool é a combinação das quantidades dos dois ativos Token. Da mesma forma, o produto das quantidades dos dois tokens é K, mas como cada Tick tem diferentes profundidades de liquidez, as fórmulas equivalentes para diferentes profundidades já não são as mesmas.
Não entrarei em detalhes sobre os princípios matemáticos. Abaixo está um artigo de Atis Elsts sobre os princípios matemáticos do V3. Amigos interessados podem lê-lo por si mesmos.
No Uniswap V2, ainda existe uma taxa de transação padrão de 0,3%, enquanto no Uniswap V2V3 são fornecidos 3 níveis de taxa diferentes devido a diferentes granularidades, que são 0,05%, 0,3% e 1%, respetivamente. Neste momento, os LPs podem concentrar a eficiência do seu capital nos intervalos mais frequentemente negociados para obter retornos máximos.
Além disso, o V3 otimizou mais uma vez o oráculo com base no V2. Ele não armazena mais apenas uma variável de acumulação de preço, mas armazena um conjunto de variáveis, o que pode estender a vida útil dos dados, reduzir as taxas de gás e economizar custos.
O Uniswap V4 é baseado no modelo de liquidez centralizada do Uniswap V3, permitindo a qualquer pessoa implementar novas pools de liquidez centralizada no Uniswap com funcionalidades personalizadas, tornando-se assim uma plataforma DEX eficiente e personalizável.
No V4, o ponto central é o contrato Hooks, a visão é permitir que qualquer pessoa tome essas decisões de compensação ao introduzir "hooks".
Para cada pool, o criador pode definir um "contrato Hooks" que executa lógica em pontos-chave no ciclo de chamadas. Esses Hooks também gerenciam as taxas de câmbio da pool e as taxas de saque cobradas aos provedores de liquidez.
Hooks são um conjunto de contratos desenvolvidos por terceiros ou funcionários da Uniswap. Ao criar um pool, o pool pode optar por vincular um hook. Então, em uma etapa específica da transação, o pool automaticamente chamará o contrato hook a ele vinculado. O contrato está em pontos de chamada no ciclo de vida para implementar a lógica.
Em outras palavras, um gancho é um contrato implantado externamente que executa alguma lógica definida pelo desenvolvedor em um ponto especificado na execução do pool. Esses ganchos permitem que os integradores criem pools de liquidez centralizadas com execução flexível e personalizável. Os ganchos podem modificar os parâmetros do pool, ou adicionar novos recursos e funcionalidades.
Cada pool de liquidez Uniswap tem um ciclo de vida: Durante o ciclo de vida de uma pool de liquidez, várias coisas acontecem, incluindo: a pool é criada com uma taxa de comissão padrão, a liquidez é adicionada, removida ou readaptada, e os utilizadores também podem trocar Tokens, etc. No Uniswap v3, estes eventos do ciclo de vida estão intimamente ligados e executados numa ordem muito rigorosa.
Mas para criar espaço para liquidez personalizável no Uniswap V4. O contrato Hooks cria um método de introdução de código para os criadores de pools de mineração realizarem operações especificadas em pontos-chave no ciclo de vida da pool de mineração, como antes e depois de trocas, ou antes e depois de alterações na posição de LP.
Em resumo, Hooks são plugins para personalizar como as pools, swaps, taxas e posições LP interagem, através do contrato de hooks. Os desenvolvedores podem inovar em cima da liquidez e segurança do protocolo Uniswap, criando pools AMM personalizadas através de hooks integrados com contratos inteligentes v4.
Funcionalidades de exemplo que podem ser implementadas através de contratos hook incluem:
A lógica principal do Uniswap V4 é a mesma do V3 e não é atualizável. Uma vez que cada pool de mineração agora é definida por mais do que apenas tokens e níveis de taxa, podem ser construídas várias pools de mineração a partir disto. E embora cada pool possa utilizar seu próprio contrato inteligente de hook, os hooks estão restritos a permissões específicas determinadas quando a pool é criada.
Também existem algumas mudanças arquiteturais no V4, como a Contabilidade Flash (conta instantânea) que pode reduzir significativamente as taxas de gás. Esta funcionalidade está incluída no EIP-1153, que introduz armazenamento “transitório”, e será implementada após a atualização de Cancun (Ethereum Cancun).
Além disso, a versão V4 também utiliza o modo singleton (salva todos os estados da pool em um contrato), contabilidade relâmpago (garante a solvência da pool), restaura o suporte para ETH nativo, suporta tokens ERC-1155 e adiciona mecanismos de governança aguardando melhorias.
UniswapX é um novo protocolo de código aberto (GPL), sem permissão e baseado em leilões para negociação em AMMs e outras fontes de liquidez.
O protocolo irá melhorar a funcionalidade da troca em várias áreas, incluindo:
Antecedentes: As transações on-chain continuam a inovar, levando a uma proliferação de pools de liquidez, e novos níveis de taxas, L2 e mais protocolos on-chain também dispersarão a liquidez.
Solução: UniswapX tem como objetivo resolver este problema através de uma rede aberta que terceiriza a complexidade de roteamento para terceiros que precisam competir para preencher transações utilizando liquidez on-chain, como pools AMM ou seus próprios inventários privados.
Com UniswapX, os traders poderão usar a interface Uniswap sem se preocupar se estão obtendo o melhor preço. As transações dos traders sempre serão registradas e liquidadas de forma transparente na cadeia. Todas as ordens são alimentadas pelo Roteador de Ordens Inteligente da Uniswap, que força terceiros a competir com Uniswap V1, V2, V3 e, após o lançamento, V4.
Essencialmente, UniswapX reforça o mecanismo de competição e otimiza o deslizamento de preço de cada pool de ativos através da seleção de roteamento de terceiros.
Além disso, UniswapX também lançou novas tentativas:
Sem transação de gás, não há cobrança por falha. O trader assina uma ordem única fora da cadeia, que é depois submetida à cadeia por um terceiro que paga o gás em nome do trader. O terceiro inclui a taxa de gás no preço da transação, mas pode competir pelo melhor preço executando múltiplas ordens em lotes e reduzir os custos de transação.
Proteção de MEV, devolvendo o MEV originalmente obtido através de negociação de arbitragem aos traders a um preço melhor. O UniswapX ajuda os utilizadores a evitar formas mais explícitas de retirada de MEV: ordens executadas usando ativos privados de terceiros não podem ser “sandwiched” e terceiros são incentivados a usar relés de transação privados ao encaminhar ordens para pools de liquidez on-chain.
A próxima versão intercadeias da UniswapX combinará a troca e a ponte num único procedimento contínuo. Usando a UniswapX intercadeias, os trocadores poderão trocar entre cadeias em segundos e podem esperar pelo seu progresso.
A lógica interna da iteração do Uniswap da V1 para a V4, bem como o lançamento do protocolo UniswapX, é a inovação funcional do DEX (AMM).
V1 implementou inicialmente AMM no campo da criptografia, V2 reduziu a exposição ao risco do ETH e lançou um oráculo de preços mais difícil de manipular, V3 resolveu o problema da baixa eficiência de capital através da liquidez centralizada, V4 implementou um DEX personalizável e o protocolo UniswapX foi fortalecido através do mecanismo de leilão. A competitividade de agregadores de terceiros permite otimizar o deslizamento de preço.
Podemos ver que a Uniswap está inovando a si mesma a cada passo do caminho - reduzindo os custos de empréstimo, otimizando a experiência do usuário, fortalecendo a consciência da concorrência e abraçando tecnologias emergentes. Esta atualização iterativa é a base para um bom protocolo durar para sempre.
Compartilhar
Conteúdo
Recentemente estou a fazer um resumo dos métodos de avaliação da área DeFi. Depois de estudar alguns casos, a Uniswap é uma representante típica em termos de influência e lógica iterativa. Este artigo realiza uma revisão abrangente da Uniswap.
A lógica interna da iteração da Uniswap da V1 para a V4, bem como o lançamento do protocolo UniswapX, é uma inovação funcional e otimização de mecanismos para transações DEX.
V1 implementou inicialmente AMM no campo da criptografia, V2 reduziu a exposição ao risco do ETH e lançou um oráculo de preços mais difícil de manipular, V3 resolveu o problema da baixa eficiência de capital através da liquidez centralizada, V4 implementou um DEX personalizável, e o protocolo UniswapX foi fortalecido através do mecanismo de leilão. A competitividade dos agregadores de terceiros permite otimizar o deslizamento de preços.
Não é necessário entrar em detalhes sobre o status e influência da Uniswap. Segundo os dados em tempo real da Dune, a Uniswap continua a ser a DEX com a maior quota de mercado.
Como uma DEX líder, ela não existe há muito tempo, mas foi iterada muitas vezes. Vamos dar uma olhada no processo de desenvolvimento:
Em junho de 2017, Vitalik publicou o artigo On Path Independence;
Em novembro de 2018, foi lançado o Uniswap V1: suportando transações entre ETH e ERC-20Token;
Em março de 2020, foi lançado o Uniswap V2: suportando transações entre quaisquer dois pares de Tokens ERC-20;
Em maio de 2021, o Uniswap V3 foi lançado: melhorando a taxa de utilização dos fundos LP e propondo o conceito de liquidez agregada;
Em junho de 2023, o Uniswap V4 foi lançado: a personalização do contrato Hooks foi introduzida para evitar vazamento de valor;
Em julho de 2023, Uniswap X foi lançado: agregando liquidez on-chain e off-chain, proteção MEV.
Em 2017, Vitalik publicou um artigo “On Path Independence” em sua página pessoal, no qual o mercado automatizado de criador (AMM) foi introduzido pela primeira vez no campo da criptografia, que é um método de negociação diferente do CEX. Claro, essa abordagem já vinha sendo discutida há muito tempo em círculos não criptográficos (como círculos financeiros tradicionais).
Sabemos que no mercado de ações, mercado de futuros ou CEX existente, a maioria das transações são conduzidas no Livro de Ordens (modo livro de ordens). Os market makers (como corretores e exchanges centralizadas) correspondem as ordens de compra dos compradores e as ordens de venda dos vendedores quando os preços correspondem, completando assim as transações entre compradores e vendedores.
No entanto, têm surgido problemas no caso da descentralização. A razão é que no ambiente descentralizado da DEX (qualquer pessoa pode participar na criação do mercado), é difícil corresponder transações no modo de livro de ordens para fornecer liquidez correspondente, taxa de transação e a experiência é relativamente fraca e, sem liquidez suficiente, é difícil corresponder à eficácia operacional da CEX.
Neste artigo de Vitalik, é introduzido um conceito inovador no mercado de criptografia: Automatic Market Maker. Neste conceito, a fixação de preços de ativos é feita através de algoritmos de preços em vez do modelo tradicional de livro de ordens.
No modelo AMM, não há necessidade de cotações de formador de mercado ou correspondência de sistema, e os traders podem utilizar diretamente a liquidez no pool para realizar a troca de ativos.
TokenA e TokenB formam uma relação de produto constante: tokenA_balance(p) * tokenB_balance(p) = K (K permanece inalterado)
Este é um sistema de negociação impulsionado pela liquidez, este modelo é chamado de Constant Product Market Maker (CPMM). Sob esta abordagem, um market maker independente de caminho pode ser formado definindo qualquer relação (monotônica) entre tokenA e tokenB e calculando suas derivadas a qualquer momento para dar um preço.
No mecanismo de criação de mercado da AMM, não há contraparte específica semelhante ao modelo de livro de ordens. O valor real do ativo é determinado pela fórmula matemática de um produto constante. Até certo ponto, pode ser comparado à contraparte sendo um contrato inteligente, que pode realizar a negociação automatizada do ativo.
Alguém precisa de fornecer liquidez num contrato inteligente, e o fornecedor de liquidez é LP (Fornecedor de Liquidez). O LP fornece liquidez para transações ao injetar ativos nos contratos inteligentes no pool, obtendo assim rendimento das taxas de transação.
Depois que o LP constrói a piscina de liquidez inicial, os traders podem trocar Tokens através da piscina, e os arbitradores tomarão a iniciativa de manter os preços dos ativos consistentes com os preços de mercado através da arbitragem de preços entre diferentes mercados.
No Uniswap V1 lançado em novembro de 2018, todos os ativos podem ser resgatados através de ETH. Para transações entre ETH e ERC-20Token, qualquer pessoa pode adicionar tokens para negociar com ETH nativo. ETH é essencialmente um intermediário de negociação de ativos.
Assuma que um ETH vale atualmente 100TokenA, e que um pool de ETH/TokenA consiste em 10 ETH e 1000 TokenA.
Neste momento, o valor de 10 ETH e 1.000 TokenA é igual a 1.000 dólares americanos, e a relação de valor dos ativos é de 1:1.
k=10 *1000=10000, este produto permanece inalterado sem adicionar mais liquidez.
Agora, suponha que eu queira vender 5 ETH para o pool, então deve ser:
y=10000/(10+5)=666.67, o número de ETH na piscina aumentou para 15 e o número de USDC neste momento passou a ser 666.67, então troquei 5 ETH por 333.33 TokenA e, neste momento, o preço de um único ETH na piscina é de 666.67/15=44.44, ou seja, um ETH equivale a 44.44 TokenA.
Claro, se o preço numa única pool mudar significativamente em relação ao de outros mercados de negociação, os arbitragistas imediatamente vão entrar em ação até que eliminem a diferença de preço. Afinal, o mecanismo AMM só pode gerar preços de transação, mas não pode descobrir os preços de mercado, portanto, o papel dos arbitragistas é muito importante.
As perdas impermanentes ocorrem quando a relação de preços dos tokens depositados muda em comparação com quando foram depositados na pool. Quanto maior a mudança, maior a perda de impermanência.
Agora, como LP, vamos continuar a dar um exemplo:
Fórmula principal do UniswapV1: x∗y=k
Agora, como fornecedor de liquidez, continuamos a adicionar 10 ETH e 1000 TokenA à pool como liquidez inicial. Neste momento, 1 ETH equivale a 100 TokenA, e o produto constante das duas quantidades de ativos é 101000=10000( xy=10000,x=100y).
Neste momento, se o preço de 1 ETH aumentar para 200 TokenA, podemos converter: x*y=10000, x=200y, calculando assim x=7,071, y=1414,21.
Neste momento, a pool de liquidez mudou de 10 ETH iniciais e 1000 TokenA para: 7.071 ETH e 1414.21 TokenA.
Neste momento, se resgatar todos os ativos, receberei 7.071 ETH e 1414.21 TokenA. O valor real calculado usando TokenA é 7.071200+1414.21=2828.41. Se calculado com base nos 10 ETH iniciais e nos 1000 TokenA, o preço atual deve ser 10200+1000=3000TokenA.
A diferença nesta parte do rendimento (3000-2828.41=171.59TokenA) é a perda impermanente.
As perdas impermanentes ocorrem porque, sob o mecanismo de criador de mercado automático das trocas descentralizadas, os provedores de liquidez ajustam os fundos com base nas flutuações de preços, resultando em perdas de capital e retornos perdidos.
Uma vez que atuam tanto como compradores quanto como vendedores, são forçados a aumentar a quantidade de ativos que possuem quando os preços caem e a diminuir a quantidade de ativos que possuem quando os preços sobem, resultando em perdas.
Claro, também pode optar por cobertura e gerir os riscos ao abrir contratos curtos/longos em ETH.
Para motivar os utilizadores a atuar como LPs para fornecer liquidez e incentivá-los a suportar a volatilidade de preços, surgiu o Token LP. Este é uma recompensa para os fornecedores de liquidez, que podem obter uma certa percentagem da taxa de transação para cada transação (UniswapV1, os traders pagam 0,3% na transação, que pertence ao fornecedor de liquidez). Ao mesmo tempo, também serve como um certificado para LP retirar a liquidez adicionada por si próprio.
Outro conceito é o deslizamento de negociação, amigos que frequentemente fazem negociações DEX certamente estarão familiarizados com ele. Como um sistema de negociação impulsionado pela liquidez, a bela equação de produto constante do AMM é uma curva suave, e o preço muda o tempo todo de acordo com a relação entre oferta e demanda.
Se negociar um grande número de Tokens neste momento, ocorrerá deslize e haverá uma diferença entre o preço esperado e o preço que realmente obtém da pool. Em outras palavras, haverá uma diferença entre o preço desejado e o preço da transação.
A Uniswap V1 apenas suporta transações entre pares de negociação ERC-20/ETH. Na essência, utiliza o ETH como uma moeda de transição intermédia para a troca entre Tokens ERC-20. Embora o caminho da transação seja simples, cria exposição ao risco de ETH para os fornecedores de LP. Riscos de exportação, perda impermanente e deslizamento.
No Uniswap V2, ainda é baseado no mecanismo de 'criador de mercado de produto constante', mas a atualização do V2 trouxe melhorias de eficiência, incluindo: suporte para quaisquer dois pares de tokens ERC-20 para negociação, o que significa que qualquer ERC20 pode ser criado - pares ERC20 sem a necessidade de emparelhar através do caminho de transição do ETH.
Não vou entrar em detalhes sobre este ponto. A atualização do V2 inclui muitos aspectos. Existem mais dois pontos importantes: melhorar o price.Oracle, accomplishflash loan.
No processo do Uniswap V1, o preço calculado dividindo os fundos de reserva dos dois ativos na pool não é seguro se usado como previsão de preço on-chain porque pode ser facilmente manipulado.
Um dos objetivos desta atualização V2 é aumentar o custo e a dificuldade da manipulação de preços。
Na V1, supondo que outros contratos usem o preço atual do ETH-DAI para liquidar derivativos, um atacante que manipula o preço medido pode comprar ETH do par ETH-DAI, desencadear a liquidação do contrato derivativo a um preço inflacionado e depois vender o ETH de volta ao par, trazendo sua negociação de volta ao seu verdadeiro preço. Neste caso, as transações podem até ocorrer como transações atômicas, ou com mineradores controlando a ordem das transações dentro de um bloco.
No V2, para determinar o equilíbrio de preços de mercado, o preço é atualizado uma vez por bloco e o preço de troca de tokens é determinado antes do próximo bloco, ou seja, o preço de mercado de tokens é baseado na última transação no bloco anterior.
Nesta atualização, também é fornecido um novo dado de previsão de preço: preço médio ponderado no tempo (TWAP). Acumular os preços relativos de dois ativos no início de cada bloco permite que outros contratos na Ethereum estimem o preço médio ponderado no tempo de dois ativos ao longo de qualquer intervalo de tempo.
Mais especificamente, no Uniswap V2, o preço é acumulado rastreando a soma cumulativa do preço quando alguém interage com o contrato no início de cada bloco. Com base no carimbo de data/hora do bloco, cada preço é ponderado pela quantidade de tempo desde a última atualização do bloco. Isso significa que o valor do acumulador em qualquer momento dado (após ser atualizado) deve ser a soma dos preços a prazo para cada segundo na história do contrato.
Os utilizadores do oráculo podem escolher quando começar e terminar este período, o custo para os atacantes manipularem a TWAP será mais alto e o preço é relativamente difícil de manipular.
O empréstimo relâmpago é uma inovação absoluta em comparação com as finanças tradicionais. Afinal, as transações reais não podem ser revertidas como na blockchain.
As flash swaps foram introduzidas na V2. Os utilizadores podem emprestar ativos à pool e usá-los noutro local na cadeia, devolvendo apenas os ativos e pagando os juros correspondentes no final da transação (pagamento na mesma transação atómica). Se o dinheiro não for devolvido normalmente, a transação será anulada.
Na verdade, permite que qualquer pessoa empreste rapidamente qualquer ativo armazenado na piscina Uniswap. No V1, os utilizadores não podem receber e utilizar o ativo antes de o pagar. Ao utilizar um ativo A para comprar um ativo B, o ativo A precisa de ser enviado para o contrato antes de o ativo B poder ser obtido.
Existem alguns outros pontos atualizados: Incluindo Uniswap V2, que ajustou o novo framework de contrato, usando um formato simples de ponto fixo binário para codificar e processar preços (precisão), atualização de taxas de protocolo e suporte a meta transações para as ações da pool criadas, etc.
Antecedentes: Uniswap V2 tem problemas de liquidez. De acordo com a introdução ao mecanismo AMM acima, podemos ver que em V1 e V2, a liquidez da pool está realmente distribuída na área [0, +∞]. Em outras palavras, qualquer preço é permitido na pool V2. ocorrem transações (consultar a curva suave da função inversa no produto constante AMM).
À primeira vista, isto parece ser algo bom. A gama de negociação é muito ampla, mas na realidade, não há demanda suficiente para pares de negociação com diferentes volatilidades em suas faixas de preço, o que resulta em uma grave falta de liquidez, exceto para algumas faixas de negociação, baixa utilização de ativos.
Como pode imaginar, é inútil e desperdiçador fornecer liquidez a um preço tão distante do intervalo de preços que o preço pode nunca alcançar esse ponto.
Neste caso, para melhorar a liquidez financeira, o Uniswap V3 introduziu o conceito de liquidez concentrada. Ou seja:
Os provedores de liquidez (LPs) são livres para escolher fornecer liquidez numa determinada faixa de preço, o que pode proporcionar uma melhor liquidez e operar dentro de uma gama de eficiência de capital elevada. Ao mesmo tempo, em termos de aplicação, também pode fazer diferentes configurações para pools de ativos com diferentes volatilidades de preço.
Cada pequeno intervalo de preço no V3 pode ser entendido como um V2 em funcionamento. Durante a transação, o preço mover-se-á suavemente ao longo da curva. Quando o preço atinge uma certa secção do V2, atinge o ponto de intervalo do intervalo de preço do V3. Neste momento, o ponto de preço deslizará para o próximo intervalo de preço.
Depois de entender o conceito acima, podemos conhecer os novos substantivos - O núcleo do V3 são os Ticks.
Ticks, ticks, são os menores incrementos pelos quais um título pode ser negociado. No V3, ao dividir o intervalo de preços de [0, +∞] em inúmeros Ticks refinados, são implementadas restrições nos pontos finais superiores e inferiores de cada intervalo.
A liquidez é agregada através do controlo da granularidade. O intervalo de preços inteiro no V3 é calibrado por Ticks discretos e uniformemente distribuídos. Cada Tick tem um índice e preço correspondente, e cada Tick terá a sua própria profundidade de liquidez.
Os princípios matemáticos do Uniswap V3 mudaram, embora seja semelhante à camada subjacente do V2:
L=xy sob o sinal de raiz
L é chamada a quantidade de liquidez, e a liquidez no pool é a combinação das quantidades dos dois ativos Token. Da mesma forma, o produto das quantidades dos dois tokens é K, mas como cada Tick tem diferentes profundidades de liquidez, as fórmulas equivalentes para diferentes profundidades já não são as mesmas.
Não entrarei em detalhes sobre os princípios matemáticos. Abaixo está um artigo de Atis Elsts sobre os princípios matemáticos do V3. Amigos interessados podem lê-lo por si mesmos.
No Uniswap V2, ainda existe uma taxa de transação padrão de 0,3%, enquanto no Uniswap V2V3 são fornecidos 3 níveis de taxa diferentes devido a diferentes granularidades, que são 0,05%, 0,3% e 1%, respetivamente. Neste momento, os LPs podem concentrar a eficiência do seu capital nos intervalos mais frequentemente negociados para obter retornos máximos.
Além disso, o V3 otimizou mais uma vez o oráculo com base no V2. Ele não armazena mais apenas uma variável de acumulação de preço, mas armazena um conjunto de variáveis, o que pode estender a vida útil dos dados, reduzir as taxas de gás e economizar custos.
O Uniswap V4 é baseado no modelo de liquidez centralizada do Uniswap V3, permitindo a qualquer pessoa implementar novas pools de liquidez centralizada no Uniswap com funcionalidades personalizadas, tornando-se assim uma plataforma DEX eficiente e personalizável.
No V4, o ponto central é o contrato Hooks, a visão é permitir que qualquer pessoa tome essas decisões de compensação ao introduzir "hooks".
Para cada pool, o criador pode definir um "contrato Hooks" que executa lógica em pontos-chave no ciclo de chamadas. Esses Hooks também gerenciam as taxas de câmbio da pool e as taxas de saque cobradas aos provedores de liquidez.
Hooks são um conjunto de contratos desenvolvidos por terceiros ou funcionários da Uniswap. Ao criar um pool, o pool pode optar por vincular um hook. Então, em uma etapa específica da transação, o pool automaticamente chamará o contrato hook a ele vinculado. O contrato está em pontos de chamada no ciclo de vida para implementar a lógica.
Em outras palavras, um gancho é um contrato implantado externamente que executa alguma lógica definida pelo desenvolvedor em um ponto especificado na execução do pool. Esses ganchos permitem que os integradores criem pools de liquidez centralizadas com execução flexível e personalizável. Os ganchos podem modificar os parâmetros do pool, ou adicionar novos recursos e funcionalidades.
Cada pool de liquidez Uniswap tem um ciclo de vida: Durante o ciclo de vida de uma pool de liquidez, várias coisas acontecem, incluindo: a pool é criada com uma taxa de comissão padrão, a liquidez é adicionada, removida ou readaptada, e os utilizadores também podem trocar Tokens, etc. No Uniswap v3, estes eventos do ciclo de vida estão intimamente ligados e executados numa ordem muito rigorosa.
Mas para criar espaço para liquidez personalizável no Uniswap V4. O contrato Hooks cria um método de introdução de código para os criadores de pools de mineração realizarem operações especificadas em pontos-chave no ciclo de vida da pool de mineração, como antes e depois de trocas, ou antes e depois de alterações na posição de LP.
Em resumo, Hooks são plugins para personalizar como as pools, swaps, taxas e posições LP interagem, através do contrato de hooks. Os desenvolvedores podem inovar em cima da liquidez e segurança do protocolo Uniswap, criando pools AMM personalizadas através de hooks integrados com contratos inteligentes v4.
Funcionalidades de exemplo que podem ser implementadas através de contratos hook incluem:
A lógica principal do Uniswap V4 é a mesma do V3 e não é atualizável. Uma vez que cada pool de mineração agora é definida por mais do que apenas tokens e níveis de taxa, podem ser construídas várias pools de mineração a partir disto. E embora cada pool possa utilizar seu próprio contrato inteligente de hook, os hooks estão restritos a permissões específicas determinadas quando a pool é criada.
Também existem algumas mudanças arquiteturais no V4, como a Contabilidade Flash (conta instantânea) que pode reduzir significativamente as taxas de gás. Esta funcionalidade está incluída no EIP-1153, que introduz armazenamento “transitório”, e será implementada após a atualização de Cancun (Ethereum Cancun).
Além disso, a versão V4 também utiliza o modo singleton (salva todos os estados da pool em um contrato), contabilidade relâmpago (garante a solvência da pool), restaura o suporte para ETH nativo, suporta tokens ERC-1155 e adiciona mecanismos de governança aguardando melhorias.
UniswapX é um novo protocolo de código aberto (GPL), sem permissão e baseado em leilões para negociação em AMMs e outras fontes de liquidez.
O protocolo irá melhorar a funcionalidade da troca em várias áreas, incluindo:
Antecedentes: As transações on-chain continuam a inovar, levando a uma proliferação de pools de liquidez, e novos níveis de taxas, L2 e mais protocolos on-chain também dispersarão a liquidez.
Solução: UniswapX tem como objetivo resolver este problema através de uma rede aberta que terceiriza a complexidade de roteamento para terceiros que precisam competir para preencher transações utilizando liquidez on-chain, como pools AMM ou seus próprios inventários privados.
Com UniswapX, os traders poderão usar a interface Uniswap sem se preocupar se estão obtendo o melhor preço. As transações dos traders sempre serão registradas e liquidadas de forma transparente na cadeia. Todas as ordens são alimentadas pelo Roteador de Ordens Inteligente da Uniswap, que força terceiros a competir com Uniswap V1, V2, V3 e, após o lançamento, V4.
Essencialmente, UniswapX reforça o mecanismo de competição e otimiza o deslizamento de preço de cada pool de ativos através da seleção de roteamento de terceiros.
Além disso, UniswapX também lançou novas tentativas:
Sem transação de gás, não há cobrança por falha. O trader assina uma ordem única fora da cadeia, que é depois submetida à cadeia por um terceiro que paga o gás em nome do trader. O terceiro inclui a taxa de gás no preço da transação, mas pode competir pelo melhor preço executando múltiplas ordens em lotes e reduzir os custos de transação.
Proteção de MEV, devolvendo o MEV originalmente obtido através de negociação de arbitragem aos traders a um preço melhor. O UniswapX ajuda os utilizadores a evitar formas mais explícitas de retirada de MEV: ordens executadas usando ativos privados de terceiros não podem ser “sandwiched” e terceiros são incentivados a usar relés de transação privados ao encaminhar ordens para pools de liquidez on-chain.
A próxima versão intercadeias da UniswapX combinará a troca e a ponte num único procedimento contínuo. Usando a UniswapX intercadeias, os trocadores poderão trocar entre cadeias em segundos e podem esperar pelo seu progresso.
A lógica interna da iteração do Uniswap da V1 para a V4, bem como o lançamento do protocolo UniswapX, é a inovação funcional do DEX (AMM).
V1 implementou inicialmente AMM no campo da criptografia, V2 reduziu a exposição ao risco do ETH e lançou um oráculo de preços mais difícil de manipular, V3 resolveu o problema da baixa eficiência de capital através da liquidez centralizada, V4 implementou um DEX personalizável e o protocolo UniswapX foi fortalecido através do mecanismo de leilão. A competitividade de agregadores de terceiros permite otimizar o deslizamento de preço.
Podemos ver que a Uniswap está inovando a si mesma a cada passo do caminho - reduzindo os custos de empréstimo, otimizando a experiência do usuário, fortalecendo a consciência da concorrência e abraçando tecnologias emergentes. Esta atualização iterativa é a base para um bom protocolo durar para sempre.