En mi artículo anterior sobre creación de mercado exploramos la mecánica y las estrategias de creación de mercado en los mercados financieros tradicionales. Sobre la base de esos conocimientos, este artículo presenta un marco innovador para el aprovisionamiento inteligente de liquidez en el contexto de Uniswap V3. Como mencionamos en nuestra investigación anterior, nuestro objetivo era ampliar nuestra comprensión de la dinámica del mercado y la gestión de la liquidez en las finanzas descentralizadas ( DeFi) , específicamente mediante el desarrollo del Marco Inteligente de Aprovisionamiento de Liquidez.
Estados: los estados representan las condiciones actuales del mercado, incluidos los precios de los activos, los volúmenes de negociación y otras variables relevantes.
Acciones: Las acciones corresponden a las decisiones tomadas por el proveedor de liquidez, como ajustar las asignaciones de liquidez, reequilibrar carteras, etc.
Recompensas: Las recompensas cuantifican la conveniencia de los resultados en función de la función objetivo, las preferencias y las limitaciones del proveedor de liquidez. Las recompensas pueden ser positivas para resultados deseables (por ejemplo, altos rendimientos) y negativas para resultados indeseables (por ejemplo, alto riesgo o bajo rendimiento).
Función objetivo: la función objetivo representa el resultado deseado del proveedor de liquidez, que puede ser una combinación de factores como maximizar la rentabilidad, minimizar los riesgos o lograr una compensación específica entre los dos. Las restricciones pueden incluir limitaciones a las asignaciones de liquidez, utilización de capital, niveles de tolerancia al riesgo u otras restricciones definidas por el proveedor de liquidez.
El ABM incluye varios tipos de agentes, cada uno de los cuales representa una función específica dentro del ecosistema Uniswap V3. Los dos agentes principales son el Agente Proveedor de Liquidez y el Agente Swapper, que interactúan con los grupos de Uniswap para proporcionar liquidez y realizar intercambios de tokens, respectivamente. El comportamiento de estos agentes está dictado por políticas definidas en el archivo agents_policies.py
, lo que garantiza que sus acciones estén alineadas con las estrategias y las condiciones del mercado del mundo real.
Agente proveedor de liquidez: este agente agrega y elimina liquidez de los grupos de Uniswap. Sigue un conjunto de políticas que dictan sus acciones en función del estado actual del mercado y las preferencias del agente.
Agente Swapper: El Agente Swapper realiza intercambios de tokens dentro de los grupos de Uniswap, aprovechando las discrepancias de precios y las oportunidades de arbitraje. Su comportamiento está guiado por políticas que evalúan la rentabilidad potencial de las operaciones, considerando las tarifas de transacción y el deslizamiento.
El archivo netlist.py
es fundamental para ABM y configura cómo los agentes interactúan entre sí y con los grupos de Uniswap. Define las relaciones entre los agentes, las políticas y el entorno de simulación.
Los módulos SimEngine.py
, SimStateBase.py
y SimStrategyBase.py
proporcionan los elementos fundamentales para ejecutar simulaciones. SimEngine organiza la simulación, gestionando el flujo de tiempo y la ejecución de las acciones de los agentes. SimStateBase mantiene el estado actual de la simulación, almacenando datos sobre las tenencias de agentes, los estados del grupo y otras variables relevantes. SimStrategyBase define las estrategias generales que guían el comportamiento del agente a lo largo de la simulación.
El RL Agent opera en un entorno personalizado, DiscreteSimpleEnv
, que interactúa con el modelo Uniswap y el modelo basado en agentes para simular el mercado DeFi. Este entorno facilita la interacción del agente con los pools de Uniswap, permitiéndole agregar y quitar liquidez y observar las consecuencias de sus acciones. El Agente RL interactúa con el modelo Uniswap y ABM para simular el aprovisionamiento de liquidez del mundo real en Uniswap V3. Elige acciones que resulten en agregar o eliminar liquidez, con políticas y configuración de simulación definidas en el ABM, asegurando interacciones realistas.
Espacio de estado: el espacio de estado del entorno incluye varios indicadores de mercado, como el precio actual, la liquidez y el crecimiento de las tarifas. Estos parámetros se normalizan y se proporcionan al agente en cada paso de tiempo.
Espacio de acción: el espacio de acción del agente consta de valores continuos que representan los límites de precios para agregar liquidez a un grupo de Uniswap. Estas acciones se traducen en interacciones con los pools de Uniswap, afectando el estado del medio ambiente.
Función de recompensa: la función de recompensa es crucial para capacitar al Agente RL. Tiene en cuenta los ingresos por comisiones, las pérdidas no permanentes, el valor de la cartera y las posibles sanciones, proporcionando una señal de recompensa escalar para guiar el proceso de aprendizaje del agente.
El Agente RL aprovecha el modelo Uniswap y el modelo basado en agentes para simular el aprovisionamiento de liquidez del mundo real en Uniswap V3. Interactúa con los grupos de Uniswap a través de DiscreteSimpleEnv
, realizando acciones que resultan en agregar o eliminar liquidez. Las políticas del agente y la configuración de la simulación se definen en el componente ABM, asegurando un entorno dinámico realista y coherente.
Capacitar y evaluar al agente: el agente se capacita a lo largo de una serie de episodios, cada uno de los cuales representa un escenario de mercado diferente (grupo diferente). El desempeño del agente se evalúa en función de su capacidad para maximizar los rendimientos y al mismo tiempo minimizar los riesgos asociados con el aprovisionamiento de liquidez. La eficacia del Marco Inteligente de Provisión de Liquidez se evalúa mediante la evaluación del desempeño del agente de aprendizaje por refuerzo (RL).
Configuración del entorno: para evaluar el agente RL, configuramos un entorno de evaluación especializado, DiscreteSimpleEnvEval
, que amplía el entorno base, DiscreteSimpleEnv
. Este entorno está diseñado para la evaluación de políticas de agentes.
Agente de referencia: en nuestra configuración de evaluación, comparamos el desempeño del agente de RL con el de un agente de referencia. Las acciones del agente de referencia están determinadas por una política de referencia que se basa en el estado actual del fondo de liquidez. Este agente tiene como objetivo proporcionar un punto de referencia para evaluar el desempeño del agente RL.
Capacitación
Evaluación
Sincronización de grupos: actualmente, el marco no captura completamente la sincronización en tiempo real de los grupos, lo que puede generar discrepancias en el modelado de la dinámica real de Uniswap V3. El trabajo futuro debería centrarse en incorporar mecanismos para una mejor sincronización del grupo, utilizando potencialmente datos o eventos de tick/posición para mejorar el realismo.
Políticas de agentes ingenuos: Las políticas de agentes empleadas en el marco actual son relativamente simples e ingenuas. Para lograr simulaciones más precisas, las iteraciones futuras deberían tener como objetivo definir políticas de agentes más completas. Estas políticas podrían modelar varios tipos de agentes de Uniswap, como comerciantes ruidosos, comerciantes informados, proveedores de liquidez minoristas y proveedores de liquidez institucionales. Alternativamente, los modelos estadísticos entrenados en datos históricos del grupo pueden informar las políticas de los agentes para un comportamiento más realista.
Espacio de observación escaso: el espacio de observación proporcionado a los agentes carece de información completa sobre el estado de la piscina. Para mejorar las capacidades de toma de decisiones, las mejoras futuras deberían incluir datos de posición y ticks, junto con características diseñadas que ofrezcan a los agentes una comprensión más completa del estado del grupo.
Espacio de acción limitado: el espacio de acción para los agentes está actualmente limitado, con montos de liquidez fijos y límites de rango de precios restringidos. Ampliar el espacio de acción para permitir una mayor flexibilidad en la provisión de liquidez, así como considerar múltiples posiciones por paso, puede mejorar la fidelidad de las simulaciones.
Grupos sincronizados: implemente mecanismos para sincronizar grupos, posiblemente utilizando datos o eventos de tick/posición, para crear dinámicas más realistas en el entorno Uniswap V3.
Ajuste de hiperparámetros: arquitectura de red de actores/críticos, alfa, beta, tau, tamaño de lote, pasos, episodios, parámetros de escala (recompensas, acciones, espacio de observación)
Políticas integrales de agentes: defina políticas analíticas más sofisticadas que modelen con precisión varios agentes de Uniswap o utilicen modelos estadísticos entrenados en datos históricos del grupo para informar el comportamiento de los agentes.
Espacio de observación informativo: mejore el espacio de observación al incluir datos de posición y ticks, y diseñe funciones que brinden a los agentes una vista integral del estado del grupo.
Función de recompensa mejorada: desarrolle una función de recompensa mejorada que tenga en cuenta una gama más amplia de factores, lo que conducirá a una capacitación de agentes más eficaz.
Múltiples posiciones: en lugar de una posición con un presupuesto fijo en cada paso de tiempo, implemente un mecanismo más completo en el que al agente se le asigna un presupuesto una vez al inicio de la simulación y luego aprende a utilizar este presupuesto de manera óptima en los pasos posteriores.
Políticas de referencia: definir políticas de referencia más completas para evaluar el desempeño del agente de RL
Ajuste de hiperparámetros: perfeccione y optimice aún más los hiperparámetros del agente de aprendizaje por refuerzo para un mejor rendimiento del entrenamiento.
Experimentación con otros agentes de RL: explore modelos de agentes de RL alternativos, como la optimización de políticas próximas (PPO) o el actor crítico suave (SAC), para determinar si ofrecen ventajas en escenarios específicos.
RL de agentes múltiples (MARL): investigue la aplicación de técnicas de aprendizaje de refuerzo de agentes múltiples, que pueden ser beneficiosas para modelar interacciones entre múltiples proveedores e intercambiadores de liquidez.
Aprendizaje en línea: Implementar estrategias de aprendizaje en línea que permitan a los agentes adaptarse a las condiciones cambiantes del mercado en tiempo real, brindando una solución de aprovisionamiento de liquidez más dinámica y adaptable.