In meinem vorherigen Artikel über Market Making haben wir die Mechanismen und Strategien des Market Makings auf traditionellen Finanzmärkten untersucht. Aufbauend auf diesen Erkenntnissen stellt dieser Artikel ein innovatives Framework für die intelligente Liquiditätsbereitstellung im Kontext von Uniswap V3 vor. Wie in unserer früheren Forschung erwähnt, bestand unser Ziel darin, unser Verständnis der Marktdynamik und des Liquiditätsmanagements im dezentralen Finanzwesen ( DeFi) zu erweitern, insbesondere durch die Entwicklung des Intelligent Liquidity Provisioning Framework.
Staaten: Staaten repräsentieren die aktuellen Marktbedingungen, einschließlich Vermögenspreisen, Handelsvolumina und anderen relevanten Variablen.
Aktionen: Aktionen entsprechen den Entscheidungen des Liquiditätsanbieters, wie z. B. Anpassung der Liquiditätszuteilung, Neuausrichtung von Portfolios usw.
Belohnungen: Belohnungen quantifizieren die Wünschbarkeit der Ergebnisse auf der Grundlage der Zielfunktion, Präferenzen und Einschränkungen des Liquiditätsanbieters. Die Belohnungen können positiv für wünschenswerte Ergebnisse (z. B. hohe Renditen) und negativ für unerwünschte Ergebnisse (z. B. hohes Risiko oder schlechte Leistung) sein.
Zielfunktion: Die Zielfunktion stellt das gewünschte Ergebnis des Liquiditätsanbieters dar, das eine Kombination von Faktoren wie Renditemaximierung, Risikominimierung oder das Erreichen eines bestimmten Kompromisses zwischen beiden sein kann. Zu den Einschränkungen können Beschränkungen der Liquiditätszuteilung, der Kapitalverwendung, der Risikotoleranzniveaus oder andere vom Liquiditätsanbieter festgelegte Beschränkungen gehören.
Das ABM umfasst verschiedene Agententypen, die jeweils eine bestimmte Rolle innerhalb des Uniswap V3-Ökosystems darstellen. Die beiden Hauptagenten sind der Liquidity Provider Agent und der Swapper Agent, die mit den Uniswap-Pools interagieren, um Liquidität bereitzustellen bzw. Token-Swaps durchzuführen. Das Verhalten dieser Agenten wird durch Richtlinien bestimmt, die in der Datei agents_policies.py
definiert sind. Dadurch wird sichergestellt, dass ihre Aktionen mit realen Strategien und Marktbedingungen in Einklang stehen.
Liquiditätsanbieter-Agent: Dieser Agent fügt Liquidität zu den Uniswap-Pools hinzu und entfernt sie daraus. Es folgt einer Reihe von Richtlinien, die seine Aktionen auf der Grundlage der aktuellen Marktlage und der Präferenzen des Agenten vorschreiben.
Swapper Agent: Der Swapper Agent führt Token-Swaps innerhalb der Uniswap-Pools durch und nutzt dabei Preisunterschiede und Arbitragemöglichkeiten. Sein Verhalten wird von Richtlinien geleitet, die die potenzielle Rentabilität von Geschäften unter Berücksichtigung von Transaktionsgebühren und Slippage bewerten.
Die Datei netlist.py
ist für das ABM von zentraler Bedeutung und konfiguriert, wie Agenten untereinander und mit den Uniswap-Pools interagieren. Es definiert die Beziehungen zwischen Agenten, Richtlinien und der Simulationsumgebung.
Die Module SimEngine.py
, SimStateBase.py
und SimStrategyBase.py
stellen die Grundelemente für die Ausführung von Simulationen bereit. Die SimEngine orchestriert die Simulation und verwaltet den Zeitablauf und die Ausführung von Agentenaktionen. Die SimStateBase verwaltet den aktuellen Status der Simulation und speichert Daten zu Agentenbeständen, Poolzuständen und anderen relevanten Variablen. Die SimStrategyBase definiert die übergreifenden Strategien, die das Agentenverhalten während der gesamten Simulation steuern.
Der RL-Agent arbeitet in einer benutzerdefinierten Umgebung, DiscreteSimpleEnv
, die mit dem Uniswap-Modell und dem agentenbasierten Modell interagiert, um den DeFi-Markt zu simulieren. Diese Umgebung erleichtert die Interaktion des Agenten mit Uniswap-Pools, sodass er Liquidität hinzufügen und entfernen und die Konsequenzen seiner Aktionen beobachten kann. Der RL-Agent interagiert mit dem Uniswap-Modell und ABM, um die Liquiditätsbereitstellung in der realen Welt in Uniswap V3 zu simulieren. Es wählt Aktionen aus, die zu einer Erhöhung oder Entfernung von Liquidität führen, wobei im ABM Richtlinien und Simulationskonfigurationen definiert werden, um realistische Interaktionen sicherzustellen.
Zustandsraum: Der Zustandsraum der Umgebung umfasst verschiedene Marktindikatoren wie den aktuellen Preis, die Liquidität und das Gebührenwachstum. Diese Parameter werden normalisiert und dem Agenten in jedem Zeitschritt bereitgestellt.
Aktionsraum: Der Aktionsraum des Agenten besteht aus kontinuierlichen Werten, die die Preisgrenzen für das Hinzufügen von Liquidität zu einem Uniswap-Pool darstellen. Diese Aktionen werden in Interaktionen mit den Uniswap-Pools umgesetzt und wirken sich auf den Zustand der Umgebung aus.
Belohnungsfunktion: Die Belohnungsfunktion ist entscheidend für die Ausbildung des RL-Agenten. Es berücksichtigt die Gebühreneinnahmen, den vorübergehenden Verlust, den Portfoliowert und potenzielle Strafen und liefert ein skalares Belohnungssignal, das den Lernprozess des Agenten steuert.
Der RL-Agent nutzt das Uniswap-Modell und das agentenbasierte Modell, um die Liquiditätsbereitstellung in der realen Welt in Uniswap V3 zu simulieren. Es interagiert mit den Uniswap-Pools über DiscreteSimpleEnv
und führt Aktionen aus, die zum Hinzufügen oder Entfernen von Liquidität führen. Die Richtlinien des Agenten und die Simulationskonfiguration werden in der ABM-Komponente definiert und sorgen so für eine realistische und kohärente dynamische Umgebung.
Trainieren und bewerten Sie den Agenten: Der Agent wird über eine Reihe von Episoden geschult, die jeweils ein anderes Marktszenario (einen anderen Pool) repräsentieren. Die Leistung des Agenten wird anhand seiner Fähigkeit bewertet, die Rendite zu maximieren und gleichzeitig die mit der Liquiditätsbereitstellung verbundenen Risiken zu minimieren. Die Wirksamkeit des Intelligent Liquidity Provisioning Framework wird durch die Bewertung der Leistung des Reinforcement Learning (RL)-Agenten beurteilt.
Umgebungseinrichtung: Um den RL-Agenten zu evaluieren, richten wir eine spezielle Evaluierungsumgebung ein, DiscreteSimpleEnvEval
, die die Basisumgebung DiscreteSimpleEnv
erweitert. Diese Umgebung ist auf die Auswertung von Agentenrichtlinien zugeschnitten.
Baseline-Agent: In unserem Bewertungsaufbau vergleichen wir die Leistung des RL-Agenten mit der eines Baseline-Agenten. Die Aktionen des Baseline-Agenten werden durch eine Baseline-Richtlinie bestimmt, die auf dem aktuellen Zustand des Liquiditätspools basiert. Dieser Agent soll einen Referenzpunkt für die Bewertung der Leistung des RL-Agenten bieten.
Ausbildung
Auswertung
Pool-Synchronisierung: Derzeit erfasst das Framework die Echtzeit-Synchronisierung von Pools nicht vollständig, was zu Diskrepanzen bei der Modellierung der realen Uniswap V3-Dynamik führen kann. Zukünftige Arbeiten sollten sich auf die Integration von Mechanismen für eine bessere Pool-Synchronisierung konzentrieren und möglicherweise Tick-/Positionsdaten oder Ereignisse nutzen, um den Realismus zu verbessern.
Naive Agentenrichtlinien: Die im aktuellen Framework verwendeten Agentenrichtlinien sind relativ einfach und naiv. Um genauere Simulationen zu erreichen, sollten zukünftige Iterationen darauf abzielen, umfassendere Agentenrichtlinien zu definieren. Diese Richtlinien könnten verschiedene Arten von Uniswap-Agenten modellieren, wie z. B. Lärmhändler, informierte Händler, Liquiditätsanbieter für Privatkunden und institutionelle Liquiditätsanbieter. Alternativ können statistische Modelle, die auf historischen Pooldaten trainiert wurden, Agentenrichtlinien für ein realistischeres Verhalten informieren.
Spärlicher Beobachtungsraum: Dem den Agenten zur Verfügung gestellten Beobachtungsraum fehlen umfassende Informationen über den Zustand des Pools. Um die Entscheidungsfähigkeit zu verbessern, sollten zukünftige Erweiterungen Tick- und Positionsdaten sowie technische Funktionen umfassen, die den Agenten ein umfassenderes Verständnis des Poolstatus bieten.
Begrenzter Handlungsspielraum: Der Handlungsspielraum für Agenten ist derzeit begrenzt, mit festen Liquiditätsbeträgen und eingeschränkten Preisspannengrenzen. Die Erweiterung des Aktionsraums, um mehr Flexibilität bei der Liquiditätsbereitstellung zu ermöglichen, sowie die Berücksichtigung mehrerer Positionen pro Schritt können die Genauigkeit der Simulationen verbessern.
Synchronisierte Pools: Implementieren Sie Mechanismen zur Synchronisierung von Pools, möglicherweise unter Verwendung von Tick-/Positionsdaten oder Ereignissen, um realistischere Dynamiken in der Uniswap V3-Umgebung zu schaffen.
Hyperparameter-Tuning: Akteur-/Kritiker-Netzwerkarchitektur, Alpha, Beta, Tau, Batch-Größe, Schritte, Episoden, Skalierungsparameter (Belohnungen, Aktionen, Beobachtungsraum)
Umfassende Agentenrichtlinien: Definieren Sie ausgefeiltere Analyserichtlinien, die verschiedene Uniswap-Agenten genau modellieren, oder nutzen Sie statistische Modelle, die auf historischen Pooldaten trainiert wurden, um das Agentenverhalten zu informieren.
Informativer Beobachtungsbereich: Erweitern Sie den Beobachtungsbereich durch die Einbindung von Tick- und Positionsdaten sowie Ingenieurfunktionen, die den Agenten einen umfassenden Überblick über den Zustand des Pools bieten.
Verbesserte Belohnungsfunktion: Entwickeln Sie eine verbesserte Belohnungsfunktion, die ein breiteres Spektrum an Faktoren berücksichtigt und zu einer effektiveren Agentenschulung führt.
Mehrere Positionen: Implementieren Sie anstelle einer Position mit einem festen Budget in jedem Zeitschritt einen umfassenderen Mechanismus, bei dem dem Agenten zu Beginn der Simulation einmalig ein Budget zugewiesen wird und er dann lernt, dieses Budget in nachfolgenden Schritten optimal zu nutzen.
Basisrichtlinien: Definieren Sie umfassendere Basisrichtlinien, um die Leistung des RL-Agenten zu bewerten
Hyperparameter-Tuning: Verfeinern und optimieren Sie die Hyperparameter des Reinforcement-Learning-Agenten weiter, um eine bessere Trainingsleistung zu erzielen.
Experimentieren mit anderen RL-Agenten: Erkunden Sie alternative RL-Agentenmodelle wie Proximal Policy Optimization (PPO) oder Soft Actor-Critic (SAC), um festzustellen, ob sie in bestimmten Szenarien Vorteile bieten.
Multi-Agent RL (MARL): Untersuchen Sie die Anwendung von Multi-Agent-Verstärkungslerntechniken, die für die Modellierung von Interaktionen zwischen mehreren Liquiditätsanbietern und Swappern von Vorteil sein können.
Online-Lernen: Implementieren Sie Online-Lernstrategien, die es Agenten ermöglichen, sich in Echtzeit an sich ändernde Marktbedingungen anzupassen und so eine dynamischere und anpassungsfähigere Lösung für die Liquiditätsbereitstellung bereitzustellen.