paint-brush
Uma estrutura detalhada para provisionamento inteligente de liquidez no Uniswap V3por@idrees535
2,550 leituras
2,550 leituras

Uma estrutura detalhada para provisionamento inteligente de liquidez no Uniswap V3

por Idrees11m2023/12/21
Read on Terminal Reader

Muito longo; Para ler

Descubra o futuro das finanças descentralizadas (DeFi) com uma estrutura inovadora que aproveita a modelagem baseada em agentes e a aprendizagem por reforço para provisionamento inteligente de liquidez no Uniswap V3. Esta abordagem revolucionária visa otimizar estratégias de provisionamento de liquidez, maximizar funções de utilidade e aumentar a rentabilidade dos fornecedores de liquidez. Explore os três componentes principais da estrutura, as nuances do agente de aprendizagem por reforço e o potencial que ele possui para remodelar o cenário da gestão de liquidez no domínio em constante evolução do DeFi.
featured image - Uma estrutura detalhada para provisionamento inteligente de liquidez no Uniswap V3
Idrees HackerNoon profile picture
0-item


O provisionamento de liquidez no Uniswap V3 apresenta um problema de controle ótimo estocástico com uma função de utilidade bem definida para maximizar. Este artigo apresenta uma estrutura inovadora para provisionamento inteligente de liquidez, utilizando uma combinação de modelagem baseada em agentes e aprendizagem por reforço. Nossa estrutura fornece uma solução robusta e adaptável para otimizar estratégias de provisionamento de liquidez. O modelo Uniswap V3 imita as condições de mercado do mundo real, enquanto o modelo baseado em agente (ABM) cria um ambiente para simular interações de agentes com pools Uniswap V3. O agente de aprendizagem por reforço, treinado usando gradientes de política determinísticos profundos (DDPG), aprende estratégias ideais, mostrando o potencial da aprendizagem de máquina para aumentar a participação no DeFi. Esta abordagem visa melhorar a rentabilidade dos fornecedores de liquidez e a compreensão dos mercados CFMM.


Visão geral do conteúdo

  • Introdução
  • Estrutura inteligente de provisionamento de liquidez
  • Componentes da Estrutura Inteligente de Provisionamento de Liquidez
  • Simulador baseado em agente
  • Modelo de aprendizagem por reforço
  • Limitações
  • Trabalho futuro
  • Conclusão
  • Recursos
  • Referências


Introdução

No meu artigo anterior sobre criação de mercado [Mecânica e Estratégias de Criação de Mercado], exploramos a mecânica e as estratégias de criação de mercado nos mercados financeiros tradicionais. Com base nesses insights, este artigo apresenta uma estrutura inovadora para o provisionamento inteligente de liquidez no contexto do Uniswap V3. Conforme mencionado em nossa pesquisa anterior, nosso objetivo era ampliar nossa compreensão da dinâmica do mercado e da gestão de liquidez em finanças descentralizadas ( DeFi) , especificamente por meio do desenvolvimento da Estrutura Inteligente de Provisionamento de Liquidez.


As finanças descentralizadas (DeFi) registaram um crescimento notável, introduzindo produtos e serviços financeiros inovadores acessíveis a um público global. O Uniswap V3, na vanguarda desta inovação, revolucionou o provisionamento de liquidez com seu recurso de liquidez concentrada. No entanto, este avanço traz desafios complexos de tomada de decisão para os fornecedores de liquidez. Este artigo apresenta uma estrutura abrangente projetada para enfrentar esses desafios, oferecendo um ambiente simulado para estudar e otimizar estratégias de provisionamento de liquidez.


Nossa estrutura compreende três componentes principais: o modelo Uniswap V3, um modelo baseado em agente (ABM) e um agente de aprendizagem por reforço. O modelo Uniswap V3 fornece uma representação do pool, possibilitando a implantação e interação com tokens e pools. O ABM introduz complexidade ao simular as interações dos agentes e a dinâmica do mercado, criando um ambiente rico para avaliação da estratégia. O agente de aprendizagem por reforço, operando neste ambiente, adota uma abordagem de gradiente político determinístico profundo para aprender e adaptar estratégias, visando um desempenho ideal no provisionamento de liquidez.



Esta pesquisa tem como objetivo desenvolver um mecanismo inteligente de provisionamento de liquidez (ILP) usando aprendizagem por reforço (RL) para gerenciar e otimizar de forma autônoma a liquidez dentro do ambiente Uniswap V3. O mecanismo procura maximizar a função de utilidade, considerando taxas auferidas, perdas impermanentes e outras métricas baseadas nas preferências dos fornecedores de liquidez, ao mesmo tempo que se adapta à dinâmica complexa do mercado CFMM.







Estrutura Inteligente de Provisão de Liquidez

Na estrutura RL, o problema de provisionamento de liquidez é formulado como um Processo de Decisão Markov (MDP). O MDP consiste em estados, ações e recompensas.



  • Estados: Os estados representam as condições atuais do mercado, incluindo preços de ativos, volumes de negociação e outras variáveis relevantes.


  • Ações: As ações correspondem às decisões tomadas pelo provedor de liquidez, como ajuste de alocações de liquidez, reequilíbrio de carteiras, etc.


  • Recompensas: As recompensas quantificam a conveniência dos resultados com base na função objetivo, nas preferências e nas restrições do provedor de liquidez. As recompensas podem ser positivas para resultados desejáveis (por exemplo, retornos elevados) e negativas para resultados indesejáveis (por exemplo, alto risco ou desempenho inferior).


  • Função Objetivo: A função objetivo representa o resultado desejado do provedor de liquidez, que pode ser uma combinação de fatores como maximizar retornos, minimizar riscos ou alcançar um compromisso específico entre os dois. As restrições podem incluir limitações nas alocações de liquidez, utilização de capital, níveis de tolerância ao risco ou outras restrições definidas pelo provedor de liquidez.


O treinamento RL é um processo iterativo onde o agente atualiza continuamente sua política com base no feedback. O agente aprende com as suas experiências e refina a sua tomada de decisões ao longo do tempo, convergindo gradualmente para estratégias de provisionamento de liquidez mais otimizadas.


Uma vez treinado o agente RL, ele pode ser testado e avaliado usando dados históricos ou ambientes simulados para avaliar seu desempenho em relação à função objetivo e às restrições do provedor de liquidez. O desempenho do agente pode ser medido através de métricas como retornos, medidas de risco ou outros indicadores de desempenho relevantes.


Ao aplicar o algoritmo RL, o mecanismo de provisionamento de liquidez pode aprender e se adaptar às mudanças nas condições do mercado, identificar estratégias ideais de fornecimento de liquidez e equilibrar restrições e preferências especificadas pelo provedor de liquidez. A RL permite ao mecanismo encontrar soluções que maximizem a função objetivo do fornecedor de liquidez, considerando vários trade-offs e restrições de forma autónoma e dinâmica.



Componentes da Estrutura Inteligente de Provisionamento de Liquidez

A estrutura compreende três componentes principais:

Componentes da Estrutura




Modelo UniswapV3

O modelo Uniswap V3 implementado em Python oferece uma simulação detalhada e funcional do protocolo Uniswap V3, capturando sua mecânica diferenciada e fornecendo aos usuários um conjunto abrangente de ferramentas para interagir com o protocolo. A classe UniswapV3_Model lida com a implantação de tokens e pools, inicializa pools e fornece uma interface para ações de pool e recuperação de estado de pool.


Visão geral

O modelo Uniswap serve como base da Estrutura Inteligente de Provisionamento de Liquidez, encapsulando a mecânica central do Uniswap V3. Ele aproveita contratos inteligentes compilados do V3-Core do Uniswap, implantados em um ambiente Ganache local usando brownie, para criar uma simulação realista e interativa.


Compilação e implantação de contrato

A estrutura se integra ao Brownie, uma estrutura de desenvolvimento e teste baseada em Python para contratos inteligentes, para compilar e implantar os contratos inteligentes Uniswap V3. Esses contratos são então implantados em um ambiente local do Ganache, fornecendo uma área restrita para testes e desenvolvimento. Esta configuração garante que os usuários possam interagir com o ambiente Uniswap sem a necessidade de ativos reais ou transações de rede, promovendo um espaço de experimentação seguro e controlado.



Simulador Baseado em Agente

O simulador baseado em agente Tokenspice é usado para simular o ambiente Uniswap V3, as políticas do agente são definidas para incorporar a dinâmica dos participantes do mercado Uniswap. Diferentes tipos de agentes são usados para simular o ambiente dinâmico do Uniswap

Introdução

O modelo baseado em agente Tokenspice (ABM) simula as ações e interações de agentes individuais dentro do ecossistema Uniswap V3. Ao modelar os comportamentos complexos de diferentes participantes, o ABM fornece uma interface abrangente do ambiente dinâmico Uniswap V3, permitindo a análise e otimização de estratégias de provisionamento de liquidez.


Tipos e comportamentos de agentes

O ABM inclui vários tipos de agentes, cada um representando uma função específica dentro do ecossistema Uniswap V3. Os dois principais agentes são o Agente Provedor de Liquidez e o Agente Swapper, que interagem com os pools Uniswap para fornecer liquidez e realizar trocas de tokens, respectivamente. O comportamento desses agentes é ditado por políticas definidas no arquivo agents_policies.py , garantindo que suas ações estejam alinhadas com estratégias do mundo real e condições de mercado.


  • Agente Provedor de Liquidez: Este agente adiciona e remove liquidez dos pools Uniswap. Segue um conjunto de políticas que ditam as suas ações com base no estado atual do mercado e nas preferências do agente.


  • Agente Swapper: O Agente Swapper realiza trocas de tokens dentro dos pools Uniswap, aproveitando as discrepâncias de preços e oportunidades de arbitragem. Seu comportamento é orientado por políticas que avaliam a rentabilidade potencial das negociações, considerando taxas de transação e slippage.


Configuração e execução de simulação

O arquivo netlist.py é central para o ABM, configurando como os agentes interagem entre si e com os pools Uniswap. Ele define os relacionamentos entre agentes, políticas e o ambiente de simulação.


Os módulos SimEngine.py , SimStateBase.py e SimStrategyBase.py fornecem os elementos fundamentais para a execução de simulações. O SimEngine orquestra a simulação, gerenciando o fluxo de tempo e a execução das ações dos agentes. O SimStateBase mantém o estado atual da simulação, armazenando dados sobre os acervos dos agentes, estados do pool e outras variáveis relevantes. O SimStrategyBase define as estratégias abrangentes que orientam o comportamento do agente ao longo da simulação.


Modelo de aprendizagem por reforço

Introdução

O Agente de Aprendizagem por Reforço (RL) é um componente essencial da Estrutura de Provisionamento de Liquidez Inteligente, projetado para interagir com o ecossistema Uniswap V3 por meio do Modelo Uniswap, um modelo baseado em agente. Esta seção se aprofunda no Agente RL, seu ambiente e no algoritmo DDPG (Deep Deterministic Policy Gradient) usado para treinamento.


Ambiente do Agente RL

O Agente RL opera em um ambiente customizado, DiscreteSimpleEnv , que faz interface com o modelo Uniswap e o modelo baseado em agente para simular o mercado DeFi. Esse ambiente facilita a interação do agente com os pools Uniswap, permitindo-lhe adicionar e retirar liquidez e observar as consequências de suas ações. O Agente RL interage com o modelo Uniswap e ABM para simular o provisionamento de liquidez do mundo real no Uniswap V3. Opta por ações que resultem na adição ou retirada de liquidez, com políticas e configuração de simulação definidas no ABM, garantindo interações realistas.


  • Espaço de Estado: O espaço de estado do ambiente inclui vários indicadores de mercado, como preço atual, liquidez e crescimento de taxas. Esses parâmetros são normalizados e fornecidos ao agente a cada intervalo de tempo.


  • Espaço de Ação: O espaço de ação do agente consiste em valores contínuos que representam os limites de preço para adicionar liquidez a um pool Uniswap. Estas ações são traduzidas em interações com os pools Uniswap, afetando o estado do ambiente.


  • Função de recompensa: A função de recompensa é crucial para treinar o Agente RL. Ele leva em consideração a receita de taxas, a perda impermanente, o valor do portfólio e possíveis penalidades, fornecendo um sinal de recompensa escalar para orientar o processo de aprendizagem do agente.


Agente DDPG

O Agente DDPG é um algoritmo ator-crítico, livre de modelo e fora da política, que usa aproximadores de função profunda. Ele pode lidar com espaços de estado de alta dimensão e espaços de ação contínua, tornando-o adequado para nosso ambiente Uniswap V3.


  • Rede de Atores: Esta rede é responsável por fornecer a ação mais confiável em um determinado estado. Ele possui uma camada de saída sigmóide, gerando valores relativos para price_lower e price_upper que são então dimensionados para o intervalo desejado no ambiente do agente, representando os limites de preço para adicionar liquidez.
  • Rede Crítica: Esta rede avalia a função valor da ação, estimando o retorno esperado da realização de uma ação em um determinado estado.
  • Redes Alvo: O DDPG emprega redes alvo tanto para o ator quanto para o crítico, que são lentamente atualizadas para estabilizar o treinamento.
  • Repetição de Experiência: Esta técnica é usada para armazenar um buffer de repetição de experiências passadas, permitindo que o agente aprenda com um conjunto diversificado de amostras, quebrando correlações em observações e suavizando o aprendizado.


Interação com modelo Uniswap e ABM

O Agente RL aproveita o modelo Uniswap e o modelo baseado em agente para simular o provisionamento de liquidez do mundo real no Uniswap V3. Ele interage com os pools Uniswap por meio do DiscreteSimpleEnv , realizando ações que resultam na adição ou remoção de liquidez. As políticas do agente e a configuração da simulação são definidas no componente ABM, garantindo um ambiente dinâmico realista e coerente.


  • Treinar e avaliar o agente: O agente é treinado em uma série de episódios, cada um representando um cenário de mercado diferente (pool diferente). O desempenho do agente é avaliado com base na sua capacidade de maximizar retornos e minimizar riscos associados ao provisionamento de liquidez. A eficácia do Quadro Inteligente de Provisionamento de Liquidez é avaliada através da avaliação do desempenho do agente de aprendizagem por reforço (RL).


  • Configuração do ambiente: Para avaliar o agente RL, configuramos um ambiente de avaliação especializado, DiscreteSimpleEnvEval , que estende o ambiente base, DiscreteSimpleEnv . Este ambiente é adaptado para a avaliação de políticas de agentes.


  • Agente de linha de base: em nossa configuração de avaliação, comparamos o desempenho do agente RL com o de um agente de linha de base. As ações do agente de referência são determinadas por uma política de referência que se baseia no estado atual do pool de liquidez. Este agente tem como objetivo fornecer um ponto de referência para avaliar o desempenho do agente RL.


Resultados

Treinamento






Avaliação



Limitações

  • Sincronização de pools: Atualmente, a estrutura não captura totalmente a sincronização em tempo real de pools, o que pode levar a discrepâncias na modelagem da dinâmica real do Uniswap V3. O trabalho futuro deve concentrar-se na incorporação de mecanismos para uma melhor sincronização do pool, potencialmente utilizando dados ou eventos de tick/posição para aumentar o realismo.


  • Políticas de Agentes Ingênuas: As políticas de agentes empregadas na estrutura atual são relativamente simples e ingênuas. Para obter simulações mais precisas, as iterações futuras devem ter como objetivo definir políticas de agentes mais abrangentes. Estas políticas poderiam modelar vários tipos de agentes Uniswap, tais como comerciantes ruidosos, comerciantes informados, fornecedores de liquidez de retalho e fornecedores de liquidez institucional. Alternativamente, modelos estatísticos treinados em dados históricos do conjunto podem informar as políticas dos agentes para um comportamento mais realista.


  • Espaço de Observação Esparso: O espaço de observação fornecido aos agentes carece de informações abrangentes sobre o estado do pool. Para melhorar as capacidades de tomada de decisão, melhorias futuras devem incluir dados de ticks e posições, juntamente com recursos projetados que ofereçam aos agentes uma compreensão mais abrangente do status do pool.


  • Espaço de Ação Limitado: O espaço de ação para os agentes é atualmente limitado, com montantes de liquidez fixos e limites de faixa de preços restritos. Expandir o espaço de ação para permitir maior flexibilidade na provisão de liquidez, bem como considerar múltiplas posições por etapa, pode aumentar a fidelidade das simulações.



Trabalho futuro

Ambiente do Agente:

  1. Pools Sincronizados: Implemente mecanismos para sincronizar pools, possivelmente usando dados ou eventos de tick/posição, para criar dinâmicas mais realistas no ambiente Uniswap V3.


  2. Ajuste de hiperparâmetros: arquitetura de rede ator/crítico, alfa, beta, tau, tamanho do lote, etapas, episódios, parâmetros de escala (recompensas, ações, espaço de observação)


  3. Políticas abrangentes de agentes: defina políticas analíticas mais sofisticadas que modelem com precisão vários agentes Uniswap ou utilizem modelos estatísticos treinados em dados históricos de pool para informar o comportamento do agente.


  4. Espaço de observação informativo: aprimore o espaço de observação incluindo dados de tick e posição, além de recursos de engenharia que fornecem aos agentes uma visão abrangente do estado do pool.


  5. Função de recompensa aprimorada: Desenvolva uma função de recompensa aprimorada que leve em conta uma gama mais ampla de fatores, levando a um treinamento mais eficaz dos agentes.


  6. Múltiplas Posições: Em vez de uma posição com um orçamento fixo em cada etapa de tempo, implemente um mecanismo mais abrangente no qual o agente recebe um orçamento uma vez no início da simulação e depois aprende a usar esse orçamento de forma otimizada nas etapas subsequentes.


  7. Políticas de linha de base: Defina políticas de linha de base mais abrangentes para avaliar o desempenho do agente RL


Algoritmo de Agente

  • Ajuste de hiperparâmetros: refine e otimize ainda mais os hiperparâmetros do agente de aprendizagem por reforço para melhor desempenho de treinamento.


  • Experimentação com outros agentes RL: Explore modelos alternativos de agentes RL, como Proximal Policy Optimization (PPO) ou Soft Actor-Critic (SAC), para determinar se eles oferecem vantagens em cenários específicos.


  • RL Multiagente (MARL): Investiga a aplicação de técnicas de aprendizagem por reforço multiagente, que podem ser benéficas para modelar interações entre vários provedores de liquidez e swappers.


  • Aprendizagem Online: Implementar estratégias de aprendizagem online que permitem aos agentes adaptar-se às mudanças nas condições do mercado em tempo real, proporcionando uma solução de provisionamento de liquidez mais dinâmica e adaptativa.


Conclusão

No cenário em rápida evolução das finanças descentralizadas (DeFi), o provisionamento de liquidez desempenha um papel fundamental ao permitir negociações eficientes e seguras. O Uniswap V3, com seu recurso inovador de liquidez concentrada, ultrapassou os limites do que é possível no gerenciamento de liquidez DeFi. No entanto, as complexidades da otimização das estratégias de provisionamento de liquidez neste ecossistema dinâmico exigem soluções inovadoras.


O nosso Quadro Inteligente de Provisionamento de Liquidez representa um avanço significativo na abordagem destes desafios. Ao combinar modelagem baseada em agentes e aprendizado por reforço, criamos um poderoso kit de ferramentas para provedores de liquidez e participantes do mercado. Esta estrutura oferece uma solução robusta e adaptável para otimizar estratégias de provisionamento de liquidez, com foco na maximização de funções de utilidade que abrangem taxas auferidas, mitigação de perdas impermanentes e outras métricas adaptadas às preferências individuais.



Recursos


Referências

  1. https://kth.diva-portal.org/smash/get/diva2:1695877/FULLTEXT01.pdf
  2. https://arxiv.org/pdf/2305.15821.pdf
  3. https://github.com/KodAgge/Reinforcement-Learning-for-Market-Making/tree/main
  4. https://arxiv.org/ftp/arxiv/papers/2211/2211.01346.pdf
  5. https://arxiv.org/pdf/2004.06985.pdf
  6. https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=9682687
  7. https://journals.plos.org/plosone/article?id=10.1371/journal.pone.0277042
  8. https://deliverypdf.ssrn.com/delivery.php?ID=1041190981020260141200720840141070070420680690030490201260880250871211151030070840280420130550350090000 54122074096068089064070102052026003014069082076098016080066026088066039027093020006122067093104092065070020126069068106118079 127088008098077106031120&EXT=pdf&INDEX=TRUE
  9. https://medium.com/blockapex/market-making-mechanics-and-strategies-4daf2122121c
  10. https://www.gauntlet.xyz/resources/uniswap-user-cohort-análise
  11. https://gov.uniswap.org/t/uniswap-incentive-design-análise/21662
  12. https://arxiv.org/pdf/2108.07806.pdf
  13. https://www.researchgate.net/publication/341848292_Market_makers_activity_behavioural_and_agent_based_approach
  14. https://fruct.org/publications/volume-29/fruct29/files/Struc.pdf
  15. https://www.arxiv-vanity.com/papers/1911.03380/
  16. https://insights.glassnode.com/the-week-onchain-week-31-2023/


Também publicado aqui .