Kombinierte automatisierte Market Maker - bAMM

AB Research stellt eine neuartige parametrisierte Funktionsfamilie vor, die Automated Market Makers verallgemeinert und miteinander verbindet.

Motivation

Die erste Arbeit, in der die besten Welten verschiedener Market Maker mit konstanten Funktionen kombiniert wurden, war die von Stableswap [2], in der die Idee des „Verstärkungskoeffizienten“ eingeführt wurde. In gewisser Weise definiert dieser Koeffizient den Grad der Verschmelzung zwischen zwei Arten von Märkten: Marktmachern mit konstanter Summe und konstanter Produktvermarkter. Konkret erzeugt dieser Koeffizient χ eine Invariante, die das konstante Produkt ist, wenn χ = 0 ist, die konstante Summe, wenn χ = ∞ ist, und eine „Dazwischen“ -Formel, wenn 0<χ <∞.

Oben: Plotvergleich der StableSwap-Invariante mit Uniswap (Konstantprodukt) und konstanten Summeninvarianten. Unterseite: Die invariante Formel von Stableswap.

Diese Idee von 1) nichtstatischen und 2) gemischten Märkten mit konstanten Funktionen scheint ein sehr vielversprechender Bereich zu sein, in dem noch viel getan werden muss, um sein volles Potenzial auszuschöpfen.

In diesem Artikel werden wir eine spezielle Mischstrategie untersuchen, die von der „Formel für konstante Leistungssummen“ von Yieldspace inspiriert ist, und ihre Leistung in Bezug auf unbeständigen Verlust und Schlupf bewerten.

Aber lassen Sie uns zunächst einige Hintergrundinformationen zu Constant Function Markets geben!

Hintergrund

Der aufregendste Fortschritt bei DeFi war die Entwicklung von Decentralized Exchanges (DEXs) und insbesondere von Automated Market Makers (AMMs). Das Konzept der AMMs wurde eingehend untersucht, ausgehend von der algorithmischen Spieltheorie und der logarithmischen Marktscoring-Regel LMSR [2] von Hanson. Diese DEXs, wie Bancor [3], Uniswap [4] [5] und StableSwap/Curve [6], sind sehr beliebt geworden, und die Forschungsgemeinschaft scheint sehr daran interessiert zu sein, neue Eigenschaften und Formulierungen von ihnen zu entdecken.

Der bekannteste Fall von AMMs, der in dezentralen Anwendungen — dApps [7] — weit verbreitet ist, ist der der Constant Function Market Makers (CFMMs). CFMMs ermöglichen den dezentralen Austausch digitaler Vermögenswerte auf der Grundlage einer vordefinierten mathematischen Funktion (Kurve), die potenziell eine Vielzahl von Wechselkursen ermöglichen kann. Die Grundidee von CFMMs ist die Liquiditätspool, ein intelligenter Vertrag, der die Token eines Handelspaares in einem bestimmten Verhältnis hält, was einen gaseffizienten On-Chain-Handel ermöglicht. Das Liquiditätspool-Konzept macht auch den Unterschied zwischen AMMs und traditionellen zentralisierten Börsen aus, die darauf angewiesen sind, dass ein Dritter den Überblick über alle Angebote und Anfragen in einem Orderbuch behält.

Das AMM-Spiel

Natürlich können wir uns AMMs als ein „Spiel“ zwischen zwei Spielern vorstellen. Das Händler, die Vermögenswerte im Liquiditätspool austauschen, und die Liquiditätsanbieter (LPs), die bereit sind, Vermögenswerte aus dem Pool bereitzustellen (zu minzen) oder zu extrahieren (zu verbrennen) und Geschäfte gegen eine Gebühr anzunehmen. Es gibt auch einen Sonderfall von Händlern, den Arbitrageure wer nutzen Sie Unterschiede zwischen dem Preis eines Referenzmarktes und dem Poolpreis eines Vermögenswerts aus, um kostenlos Gewinne zu erzielen. Wenn beispielsweise der Poolpreis unter dem Referenzmarktpreis liegt, kaufen Arbitrageure den Vermögenswert im Pool und verkaufen ihn mit Gewinn an einer Orderbuchbörse.

Ständige Produktvermarkter

Ein konstanter Product Market Maker, der zuerst von Uniswap implementiert wurde, erfüllt die Gleichung:

woher x > 0 und y > 0 sind Vermögensreserven X und Y jeweils und k ist eine Konstante.

Market Maker mit konstanter Summe

Das einfachste CFMM ist der Constant Sum Market Maker (CSMM). Für Reserven x, y zum X und Y Vermögenswerte Ein CSMM hält die Summe der Reserven konstant:

Konstante durchschnittliche Market Maker

Ein Market Maker mit konstantem Mittelwert ist eine Verallgemeinerung eines Marktmakers mit konstantem Produktwert, der mehr als zwei Vermögenswerte mit gleichem Gewicht berücksichtigt. Märkte mit konstantem Mittelwert, die erstmals in Balancer [8] eingeführt wurden, erfüllen die folgende nD-Gleichung:

woher xi sind die Vermögensreserven x1, x2,..., xnw, ω Rn sind die Gewichte, die jedem Vermögenswert zugeordnet sind und k = R das konstante Produkt.

Die Märkte mit konstantem Mittelwert stellen sicher, dass das gewichtete geometrische Mittel der Reserven xi zum i = 1,..., n, bleibt konstant. In diesem Fall sollten alle Gewichte den Anforderungen entsprechen w ≥ 0 und i =1nwi=1.

In allen oben genannten Fällen beim Handel mit einem Betrag von Δx für einen Betrag Δy die Reserven müssen sich so ändern, dass ihr Produkt gleich der Konstanten bleibt k.

Beispiel: Bei der Formel für ein konstantes Produkt wird der Δχ Betrag eines Vermögenswerts X gegen einen bestimmten Betrag Δy eines Vermögenswerts Y eingetauscht, dann das Folgende

Die Handelsfunktion gilt (bei Vorhandensein von Handelsgebühren α):

Metriken

Im CFMM-Spiel gibt es zwei Metriken, die jedem Spieler wichtig sind: Abrutschen (Händler) und Unbeständiger Verlust (Liquiditätsanbieter). Die Funktion Slippage drückt die Differenz zwischen dem Kassakurs eines Vermögenswerts im Pool und dem effektiven Preis aus, der nach Abschluss des Handels erzielt wird. Nehmen wir insbesondere an, ein Händler möchte Δx Einheiten eines Vermögenswerts X umtauschen, wenn der Poolstatus (x0, y0) ist. Nach Abschluss des Handels wird der neue Poolstatus (xn, yn) sein, wobei xn = x0 + Δx ist, dann ist Slippage wie folgt definiert:

Ein vorübergehender Verlust entsteht dagegen, wenn Liquiditätsanbieter während einer großen Preisschwankung Vermögenswerte aus dem Pool ziehen. In diesem Fall erleiden sie einen Verlust des Gesamtvermögens, verglichen mit dem bloßen Halten der Vermögenswerte. Wie wir bereits gesehen haben, kann sich der Kurs eines Vermögenswerts bei Abschluss eines Handels ändern, wenn wir von p0 im Zustand (x0, y0) zu pn in den neuen Zustand (xn, yn) übergehen. Dieser potenzielle Rückgang des Poolwerts ist ein vorübergehender Verlust und wird durch die folgende Formel berechnet (zum Ableitungsprozess siehe [9]):

Wo pX der ist Preis eines Vermögenswerts X in Bezug auf einen Vermögenswert Y, der durch die folgende Gleichung gegeben ist:

Das gemischte AMM

Wir erinnern uns an die Constant Sum-Power-Formel des YieldSpace-Protokolls [1]. In der Originalarbeit stellen die Autoren eine neue Invariante vor, die für das Market-Making zwischen FY-Token und ihre Ziel-Token, wie folgt definiert:

wobei y für die Reserven der FY-Token (wie FYDAI), x steht für die Reserven des Ziel-Tokens (wie Dai) und t steht für die Zeit bis zur Reife.

Sie geben auch an, dass eine solche Invariante als Preisformel im „Renditebereich“ und nicht im „Preisraum“ behandelt werden sollte und dass sie die einzigartige Eigenschaft hat, dass der Grenzzinssatz von FYDAI das der Pool zu jeder Zeit anbietet, entspricht dem Verhältnis der FYDAI Reserven für die Dai Reserven.

Hier werden wir uns von der Formel Constant Sum Power inspirieren lassen, um die Idee einer generalisierten und parametrisierten Familie von Märkten mit konstanten Funktionen einzuführen: Der kombinierte automatisierte Market Maker - BamM. Darüber hinaus werden wir zeigen, dass man einige der traditionellen Market Maker mit konstanter Funktion als Sonderfälle daraus ableiten kann.

Angenommen, wir haben einen Pool von zwei Vermögenswerten X und Y, dann ist die BamM-Formel wie folgt definiert:

woher x und y sind die jeweiligen Reserven der Vermögenswerte, α und β sind die Gewichte, die jedem Vermögenswert zugeordnet sind, und t= [0,1) ist der Füllparameter.

Die Preisfunktion eines Vermögenswerts X in Form eines Vermögenswerts Y folgt der Preislogik der Formel für konstante Mittelwerte und wird durch die folgende Gleichung gegeben:

Beliebte AMMs als Sonderfälle

Man kann leicht erkennen, dass wir die konstante Summe, den Mittelwert und die Produktinvarianten bei bestimmten Werten von t in der BAMM-Formel abrufen können. Insbesondere

  • Für t=0 erhalten wir die Konstante Summeninvariante.
  • Für t → 1 erhalten wir die Invariante Constant Mean.
  • Für t → 1 und α=β=1/2 erhalten wir die Konstante Produktinvariante.

Obwohl die Ableitung der konstanten Summe einfach ist, scheint die Ableitung des konstanten Mittelwerts auf den ersten Blick nicht wirklich einfach zu sein, sie folgt jedoch derselben Logik wie die in der YieldSpace-Formel. Daher empfehlen wir dem Leser, den Anhang D der Originalarbeit [1] durchzugehen. Was schließlich die Ableitung des konstanten Produkts anbelangt, so ist sie eine unmittelbare Folge des Beweises mit dem konstanten Mittelwert.

Folglich ist t eine natürliche Art, sich t vorzustellen, das Mischungsniveau zwischen CSMM und CMMM. Konkret ist t = 0 oder t → 1 gibt an, dass keine Überblendung erfolgt, da sie die BamM-Formel zu den beiden Extremen konvergieren, wohingegen t = 0,5 ihren maximalen Mischgrad angibt, d. h. Sie haben jeweils 50%.

Liquiditätskurven für Asset-Swaps für mehrere Werte von t nach der BamM-Formel. Für t=0,99 stellt die Kurve die Funktion des konstanten Mittelwerts (gewichtetes Produkt) dar und für t=0 die konstante Summenfunktion. Die Zwischenkurven nehmen mit t→1 ihre Krümmung zu. Hier ist der Wert der Konstanten k fest.

Metriken auf BamM

Kumulative Variation des unbeständigen Verlusts (Y-Achse) für verschiedene t-Werte zwischen einer Teilmenge von Blöcken (X-Achse) während einer Handelsperiode. Oben: Der Fall des USDC-WETH-Pool, der kein Stablecoin ist. Unterseite: Der Stablecoin-Fall von USDC-USDT.

Indem wir über eine Handelsperiode eine Rastersuche nach verschiedenen Werten von t im Bereich [0,1) durchführen, die auf dem Eingabe-/Ausgabevolumen jedes Handels basiert, berechnen wir den neuen Poolstatus und auch den vorübergehenden Verlust auf der Grundlage der oben eingeführten geschlossenen Form. Wir verfolgen seine Variation in einer Abfolge von Handelsblöcken der Kette und stellen fest, dass unterschiedliche Werte von t zu unterschiedlichen Spuren im Diagramm führen, was auf den unterschiedlichen Effekt des Mischungsniveaus für jeden Pool hindeutet.

Insbesondere können wir bei stabilen Pools (USDC/USDT, DAI/USDT) feststellen, dass der vorübergehende Verlust entsprechend folgt, wenn der Wert von t steigt. Bei den instabilen Pools (USDC/WETH, USDT/WETH) stellen wir jedoch fest, dass das Gegenteil der Fall ist.

Durchschnittlicher Slippage für 1000 t-Werte im Bereich [0,1) für den instabilen USDC/WETH-Pool.

Ein weiteres interessantes Diagramm zeigt, dass in Bezug auf den Slippage für den USDC/WETH-Pool die Werte von t, die im Bereich (0,4, 0,6) liegen, den minimalen durchschnittlichen Schlupf während der gesamten Handelsperiode zurückgeben. Somit ist es offensichtlich, dass es Fälle gibt, in denen die traditionellen Einstellungen für Konstante Summe und Konstanter Mittelwert/Produkt in Bezug auf bestimmte Kennzahlen suboptimal sind. Praktischer ausgedrückt könnte im obigen Beispiel eine höhere Mischungsstufe (nahe 0,5) von CSMM und CMMM zu einem günstigeren Handelserlebnis für die Nutzer führen.

Und was jetzt?

Es liegt auf der Hand, dass eine so allgemeine Funktionsfamilie wie die von BamM potenziell zu gegenseitigen Gewinnen sowohl für die Händler als auch für die Liquiditätsanbieter führen könnte, indem ihre Formel an bestimmte Merkmale angepasst wird.

Das dynamische Design von AMM-Funktionen ist eine Idee, die in den letzten zwei Jahren in aller Munde war, aber es wurde noch kein endgültiges DEX als Produkt herausgebracht. Es wäre interessant, AMMs als BAMM anzusehen, die aufgrund bestimmter Merkmale in der Lage sind, ihre Parameter selbst anzupassen und gleichzeitig mehreren Spielern des AMM-Spiels zu helfen, wenn bestimmte Kennzahlen wie Slippage, Portfoliowert, vorübergehender Verlust usw. gegeben sind.

Referenzen

[1] Allan Niemerg, Dan Robinson und Lev Livnev, Yieldspace: Ein automatisierter Liquiditätsanbieter für Fixed-Yield-Token, (2020).

[2] R. Hanson, „Bewertungsregeln für logarithmische Märkte für modulare kombinatorische Informationsaggregation“, The Journal of Prediction Markets, Band 1, Nr. 1, S. 3—15, 2007.

[3] E. Hertzog, G. Benartzi und G. Benartzi, „Bancor-Protokoll: Kontinuierliche Liquidität für kryptografische Token durch ihre intelligenten Verträge“, Tech. Rep., 2018.

[4] H. Adams, N. Zinsmeister und D. Robinson, „Uniswap v2 core“, Technischer Vertreter, 2020.

[5] Hayden Adams, Noah Zinsmeister, Moody Salem, River Keefer und Dan Robinson. Uniswap v3-Kern. Technischer Bericht, 2021.

[6] Michael Egorow. StableSwap - effizienter Mechanismus für die Liquidität von Stablecoins (2019).

[7] W. Cai, Z. Wang, J. B. Ernst, Z. Hong, C. Feng und V. C. M. Leung, „Dezentrale Anwendungen: Das Blockchain-gestützte Softwaresystem“, in IEEE Access, Band 6, S. 53019-53033, 2018.

[8] F. Martinelli und N. Mushegian, „Balancer: Ein Portfoliomanager ohne Verwahrung, Liquiditätsanbieter und Preissensor“, 2019.

[9] Das XYK-Modell der gepoolten Liquidität verstehen: https://medium.com/phoenix-finance/understanding-the-xyk-model-of-pooled-liquidity-7340fdc20d9c