Wie kann ich die Gasgebühr eines Swaps auf Uniswap berechnen?

Laut Gas Tracker auf Etherscan beträgt der durchschnittliche Gaspreis 212 gwei und die durchschnittliche Uniswap-Swap-Schätzung 70,26 $, was bedeutet, dass die Gasgebühr etwa 201101 beträgt.
Meines Wissens beträgt die Swap-Gasgebühr etwa 21000. Welche anderen Operationen sind mit einem Uniswap-Swap verbunden, die das zusätzliche Gas verbrennen?

Antworten (2)

Meines Wissens beträgt die Swap-Gasgebühr etwa 21000

Eine Übertragung zwischen zwei EOAs (dh normalen Wallet-Konten) kostet 21.000 Gas.

Sobald Sie Smart Contracts in die Gleichung einbeziehen, steigen die Gaskosten: Jeder Opcode, der mit jedem Schritt bei der Ausführung eines Smart Contract verbunden ist, verursacht Kosten. (Wie in Anhang G des Yellow Paper beschrieben .)

Ohne sich wirklich mit den Opcodes zu befassen, die mit einer Uniswap (v2)-Swap-Operation verbunden sind, vermittelt ein Blick auf eine Beispieltransaktion eine Vorstellung davon, dass beim Austausch von Token A -> Token B viel passiert.

Im Allgemeinen ist es ein 3-teiliger Prozess (dies ist für den swapExactTokensForTokens()Pfad):

  1. Benutzer überträgt Token A an Uniswap, wo es in Wrapped ETH (WETH) umgewandelt wird
  2. Der WETH wird gegen Token B getauscht
  3. Token B wird an den Benutzer übertragen

Wenn Sie sich das obige Beispiel jedoch etwas genauer ansehen, umfasst dieser dreiteilige Prozess tatsächlich 13 interne Transaktionen (dh Nachrichten zwischen Verträgen) - da passiert eine Menge.

(Wenn Sie tiefer graben möchten, finden Sie die v2-Verträge hier: https://github.com/Uniswap/uniswap-v2-core )

Die Gasgebühr ist das Produkt aus:

  • Anzahl der benötigten Gaseinheiten
  • Preis pro Gaseinheit in gwei
  • Preis von gwei in ETH (immer ein Milliardstel eines Ethers = 10e-9 ETH)
  • Preis der ETH in, sagen wir, USD

Nehmen wir ein Beispiel. Wir verschieben ETH standardmäßig zwischen zwei Wallets. Wie Sie betonen, sind dies (immer) 21.000 Gas. Angenommen, die Gasgebühr (Anzahl Gwei zum Kauf einer Gaseinheit) beträgt 100 und der Preis für ETH beträgt 4000.

USD price = 21,000 * 100 * 10e-9 * 4000 = $8.4

Sehen wir uns nun ein realistischeres Beispiel an. Aus dem DeFi-Dashboard sehe ich, dass der durchschnittliche Gaspreis für UniSwap v2 159.709 beträgt. Aus den Ethereum Gas Charts geht hervor, dass der Durchschnittspreis zu dieser Tageszeit für diesen Wochentag 134 Gwei beträgt. Der Preis von Ether beträgt 4701.

USD price = 159,709 * 134 * 10e-9 * 4701 = $100