Tüm Uniswap v3 Likidite Çiftçiliği Hesaplarınız Çok Yanlış! İşte Neden

2 x 2 = 5

Yanlış olduğunu biliyorsun ama ilk gördüğünde kendini ikinci kez tahmin ediyor ve “Belki benim hesabımda bir yanlışlık var” diye düşünüyorsun. Doğru?

İşte, Uniswap V3 kullanıcı arayüzünde görüntülenen likidite ve TVL (Toplam Değer Kilitli) rakamlarının tamamen yanlış olduğunu keşfettiğimde tam olarak böyle hissettim.

Uniswap en büyük merkezi olmayan finanstır (Defi) üzerinde proje Ethereum ve bütün blockchain sanayi. Binlerce likidite sağlayıcısı, yatırım stratejilerini oluşturmak için bu rakamları günlük olarak kullanır. Peki bu rakamlar nasıl yanlış olabilir?

Hesaplarımda bir hata bulmak için saatler harcadım ve tahmin edin ne oldu? Herhangi bir hata yapmadım. Ve durum, yanlış TVL'den bile daha kötü.

Ama adım adım gidelim ve sorunla başlayalım.

Sorun

Öncelikle TVL nedir ve nasıl kullanılır? Kısacası, TVL, kullanıcılar tarafından bir blok zincirine veya protokole şu anda devredilen tüm kripto varlıklarının dolar değeri olarak tanımlanır. Örneğin, bu varlıklar, merkezi olmayan bir borsa, köprü veya borç verme protokolünün toplam likiditesi veya PoS blok zincirinin toplam stake edilmiş varlıkları olabilir.

Kripto piyasası yatırımcıları ve diğer katılımcılar, birden çok durumda TVL kullanır:

  1. Protokol sağlığının değerlendirilmesi. Bu nedenle popüler protokoller ana sayfada TVL'leriyle övünürler. Daha büyük TVL = daha fazla kullanıcı güveni = daha düşük risk = istikrarlı kâr.
  2. Protokoller arasında karşılaştırma. Bir kripto tüccarı olsaydım, merkezi olmayan borsalar veya köprüler gibi daha yüksek TVL'ye sahip DeFi araçlarını kullanmayı tercih ederdim.
  3. Protokol büyümesinin ölçümü. Bir protokolün veya projenin TVL'sinin hızla büyüdüğünü gören yatırımcılar, bunu protokolün token fiyatı hakkında bir yükseliş sinyali olarak görüyorlar.

Bilmek önemli gibi görünüyor doğru TVL numaraları, değil mi?

Peki ya Uniswap v3 TVL ile ilgili en mevcut verilerin yanıltıcı olduğunu söylersem? Yine de benim için en büyük sürpriz, resmi Değiştirilebilir Grafik Uygulaması da sorun! İşte nasıl öğrendim.

Uniswap v3'teki resmi verileri ham blok zinciri verilerini kullanarak yaptığım hesaplamalarla karşılaştıran bir likidite analizi projesi üzerinde çalışıyordum. Bu adım, en yüksek veri kalitesi standartlarına uymak için hayati önem taşır. Doğrulamaya başlamak için popüler bir likidite havuzu seçtim, USDC-WETH (%0,3 ücret seviyesi).

202 resim
MEV Bot, Ether için likidite ekliyor

Uniswap v3'teki 3. havuza bakın—333 milyon dolarlık etkileyici bir TVL'ye (yazım sırasındaki Uniswap resmi çizelgelerine göre) ve 61 milyon dolarlık sağlıklı bir günlük hacme sahip.

Hemen bir sorunla karşılaştım: hesaplanan TVL değerim, Uniswap web sitesinde bildirilen 176 milyon dolar yerine 333 milyon dolardı. Tamam, böylece hatalar olur. Ancak hata ayıklamaya geçmeden önce, en popüler Ethereum blockchain gezgininde TVL'yi doğrulamaya karar verdim. etherscan. Teknik olarak, her Uniswap v3 havuzu akıllı bir sözleşmedir. Böylece, blok zinciri gezgini, havuzun sahip olduğu token bakiyelerini gösterebilir, bu da TVL'nin ne olduğudur.

203 resim
Standart takas işlemi.

Havuzun jeton bakiyesinin Uniswap tarafından bildirilen TVL'den biraz daha büyük olmasını bekliyordum. Çünkü havuz, tahakkuk etmiş ancak henüz talep edilmemiş ücretlerin yanı sıra likiditeye de sahiptir. Ancak bu bakiye, Uniswap'ın bildirdiği miktarın neredeyse yarısı kadardı ve şaşırtıcı bir şekilde, benim hesaplamalarımla aynı rakamdı!

Likidite, varlık varlık karşılaştırıldığında da büyük bir fark görüldü. Bu noktada, hatanın matematik becerilerimle hiçbir ilgisi olmadığını fark ettim.

205 resim
Ve buna “likidite keskin nişancı” diyoruz.

Ama bu nasıl olabilir? Araştırdıktan sonra, Uniswap'ın merkezi olmayan blok zinciri indeksleme hizmetine güvendiğini gördüm. Grafik. Bu hizmetle, herhangi bir geliştirici, belirli blok zinciri veri kullanım durumları için kişisel bir analitik kodu (alt grafik olarak adlandırılır) ekleyebilir ve analitiği API aracılığıyla kullanılabilir hale getirebilir.

Uniswap Labs, Uniswap protokol analitiği için kendi alt grafiklerini oluşturmuş ve bunları Grafik Barındırılan Hizmet. İyi olan şey, kodunun halka açık. Kötü olan şey, TVL hesaplama hatalarıdır.

Kodun kısa bir analizi, tüm takasları ve likidite olaylarını hesaba kattığını ancak ücretleri hesaba katmadığını gösterir. Uniswap havuzlarının her takasta %0.01 ila %1 arasında bir ücreti vardır. Bu ücret, işlem gören varlıklardan düşülür ve likidite sağlayıcılarına tahakkuk ettirilir. Buna karşılık, likidite sağlayıcıları herhangi bir zamanda tahakkuk eden ücretleri tahsil edebilir.

Mevcut Uniswap v3 alt grafiği, rakamları sanki hiç ücret tahakkuk ettirilmemiş ve tahsil edilmemiş gibi gösteriyor. Bu nedenle, Uniswap v3 TVL rakamları her takasta gerçeklikten saptı.

Merak edebilirsiniz: “Bu makaleyi yazmadan önce GitHub'da bir sorun bileti gönderdiniz mi?” Evet, hatayı keşfettikten sonraki ilk niyetim bu. Ve biliyor musun? o konu zaten giriş yaptı, bir çekirdek geliştirici tarafından Kasım 2021'de oluşturuldu!

Peki bu sorun neden çözülmedi? Hiç bir fikrim yok. Belki de bu hata keşfedildiğinde hata ihmal edilebilir düzeydeydi. Ancak bu, her takasla birlikte büyüyen kümülatif bir hatadır. Dolayısıyla, havuzdaki ücret ve işlem hacmi büyüdükçe, hatadan kaynaklanan TVL tutarsızlığı gerçeklikten daha büyük bir farkla sonuçlanacaktır. Ve USDC-ETH gibi büyük bir havuzda %0.3 daha yüksek bir ücretle bunun kontrolden çıktığını görebiliriz! Şu anda gerçek rakamların neredeyse iki katı.

Toplam TVL'yi Doğrulayalım

Tamam, artık bireysel havuzlardaki TVL numaralarının bozuk olduğunu biliyoruz. Bunun yatırım kararlarını nasıl etkileyebileceğini aşağıda keşfedeceğiz. Ama buna gelmeden önce, bu hataların Uniswap v3 protokolünün toplam TVL'sini nasıl etkilediğini görelim. Bu TVL'nin yazı yazılırken yaklaşık 12 milyar dolar olduğu bildirildi.

Burada bir şeylerin yanlış olduğunu görmek için veri bilimcisi olmanıza gerek yok.

207 resim

Yukarıda TVL'nin 500 Mart 4.5'de 6 milyon dolardan 2022 milyar dolara yavaş ama istikrarlı bir şekilde büyüdüğü rapor edildiğini görebiliriz. Sonra çılgınca bir şey oldu ve TVL 254 Mart 7'de 2022 milyar dolar olarak rapor edildi. Tüm Ethereum ağının şimdiye kadarki en yüksek TVL'si — BİR günde! Açıkçası, verilerde bir hata. Sonraki haftalarda, TVL'nin 2,5-10 milyar dolar olduğu bildirildi.

Bu noktada Uniswap analitik verilerine olan tüm güvenimi kaybettim. Ama gerçek TVL'yi nasıl bilebiliriz? 2 seçeneğim vardı.

Seçenek 1—Uniswap v3 alt grafiğini çatallayın ve düzeltin. Bu seçeneğin kötü yanı, alt grafiğin yeniden indekslenmesinin günler sürmesidir. Ve Graph'ın kullandığı GraphQL dilinin hayranı değilim.

Şans eseri, 2. seçeneğim vardı— - veri nanesiTüm Uniswap v3 ve Ethereum verileri için yüksek performanslı analitik veritabanları, karmaşık çevrimiçi sorgular için hazır.

Bazı deneylerden sonra, doğru TVL hesaplaması için aşağıdaki algoritmayı oluşturdum. Aşağıdaki adım adım süreci kontrol edin.

  1. Bu iki adımı kullanarak mevcut tüm Uniswap v3 havuzları için TVL'yi hesaplayın.
    1. Havuz sözleşmesine ve sözleşmeden tüm ERC-20 jeton transferlerini ekleyin (bu, talep edilmeyen tüm ücretleri içerir) ve token bakiyeleriyle eşleştirin. etherscan
    2. Gelen ve giden tüm likidite olaylarını ekleyin, ardından tüm takas olaylarını ücretler için hesap
  2. İki yöntemi karşılaştırın ve açıklanamayan hiçbir tutarsızlık kalmadığından emin olun
  3. 50'den az takas veya 0.00000000000001 jeton miktarına sahip terk edilmiş ve boş havuzları kaldırın (7,863 havuz tespit edildi (ahırlı 2,083 çift dahil), algoritmam 112 havuzu boş/terk edilmiş olarak kaldırdı)
  4. Havuz TVL'sini USD değerine dönüştürmek için her jeton için sabit paralara giden bir yol bulun
  5. Bazı havuzlar likiditeyi tamamen kaldırdıktan sonra yetersiz değerler gösterebileceğinden, bozuk USD değerlerine sahip düşük likidite havuzlarını kaldırın (örnek olarak aşağıdaki tabloya bakın)
208 resim
  1. Kalan tüm çiftlerin TVL'sini USD değerine dönüştürün ve ekleyin

Birden fazla çapraz kontrolden sonra bir TVL hesaplaması buldum. Başlattım ve hesap yapılırken kahve içmek istedim ama daha ayağa kalkmadan bitti. Yüksek performanslı bir analitik veritabanı kullanmanın tek dezavantajı budur.

Sonucu görmeye hazır mısınız?

210 resim

Neredeyse 4 kat daha az bildirilen $ 'dan daha fazla11,8b… Bir sonuca varmak size kalmış.

Feragatname: Hesaplamam hatalar içerebilir. Kurumsal müşteriler için veri projelerinde, en yüksek veri kalitesini elde etmek için belgelenmiş metodoloji, otomatik testler ve diğer birçok aracı kullanıyoruz. Bu araçlar, bunun gibi kişisel bir araştırma projesi için aşırıya kaçabilir. Bu araştırma, nihai bir çözüm sunmaktan ziyade mevcut verilerdeki bariz sorunları vurgulamaktadır.

Tamam, TVL Hesaplamalarını Düzelteceğiz—Yardım Edecek mi?

Sorun yanlış sayılar değil, bu sayılara göre verdiğimiz kararlardır. Örneğin, likidite sağlayıcıları için çoğu kâr hesaplayıcısı, tahminler için bu sayıları kullanır.

Ancak, TVL hesaplamasını düzeltmek o kadar da zor değil. Ya Uniswap Labs bunu alt grafik kodlarında düzeltir ya da hesap makinesi geliştiricileri diğer veri kaynaklarını kullanmaya başlar. Temel soru, hesap makinesi tahminlerinin doğru olduğundan emin olup olmayacağımızdır.

Bazı hesaplamalar yaptım ve kısa cevap...yakınında bile değil.

Cesur bir iddia, biliyorum. Birçok likidite sağlayıcısı mevcut hesaplayıcıları kullanır ve on milyonlarca dolara mal olan kararları etkiler. Ancak kendi kararınızı verebilmeniz için hesaplama adımlarını gözden geçirelim.

İlk olarak, Uniswap v3 protokolünün bazı temel kavramlarını gözden geçirelim.

Başlıca yeniliklerinden biri konsantre likiditedir. Özünde, Uniswap v3 ile paranızın bir likidite sağlayıcısı olarak çalışmasını istediğiniz fiyat aralığını seçebilirsiniz. Bu, protokol kullanıcılarına büyük değer katabilecek harika bir kavramdır. Likidite sağlayıcıları, kalıcı kayıplara maruz kalmalarını sınırlar ve tüccarlar, oynaklık düşük olduğunda daha küçük fiyat kaymalarının keyfini çıkarabilir. Ama bütün bunlar potansiyel faydalar bir maliyetle gelir-karmaşıklık.

211 resim

Bu nedenle, Uniswap v3 likidite sağlayıcısının kazançlarının nasıl hesaplandığını anlamak istiyoruz.

Uniswap v3'te likidite sağlayıcı, likidite sağlayacağı fiyat aralığını seçer. Fiyat bu aralığın içine girdiğinde takas ücretlerinden payını alacaktır. İlk bakışta, bir likidite sağlayıcısı, likidite pozisyonunun fiyat aralığını olabildiğince geniş tutmak ister. Ancak, likidite bu aralıkta orantılı olarak dağılmıştır. Bu nedenle, aralık ne kadar geniş olursa, her bir anlaşma için takas ücreti o kadar düşük olur.

211 resim

Bu örnekte, A seçeneği likidite sağlayıcısının daha geniş bir fiyat aralığı seçtiğini ve 2. seçenek aynı tutarda daha dar bir fiyat aralığı seçtiğini göstermektedir. Her iki durumda da fiyatın seçilen fiyat aralığında olması koşuluyla, likidite sağlayıcısı B seçeneğinde 3 kat daha fazla ücret alır. Ancak fiyat daha oynaksa, likidite sağlayıcı A seçeneğinde daha yüksek kâr elde edebilir.

Bu nedenle, gerçekte, doğru fiyat aralığını seçmek, fiyatı kaçırma ve her anlaşmadan daha düşük getiri elde etme riski arasındaki en iyi dengeyi bulmaya dayanır.

Bir parametre daha, likidite sağlayıcısının kârını etkiler ve genellikle gözden kaçırılır. Bunu dikkate alan herhangi bir LP kar hesaplayıcısının farkında değilim ve bu parametre her şeyi değiştirebilir. Şimdi bunun ne olduğunu merak ediyorsunuz. LP'lerin dağıtımıdır. Aşağıdaki örneği göz önünde bulundurun:

212 resim

Bu örnekte, iki likidite sağlayıcısının (LP1 ve LP2) pozisyonları vardır. LP1'in 3 dolarlık dar bir pozisyonu var. LP2'nin 5 dolarlık geniş bir pozisyonu var. Bu durumda, fiyat LP1'in pozisyon aralığını terk etmezse, LP3'den 2 kat daha fazla ücret alacaktır. Bunun nedeni, LP2'nin bu aralıkta yalnızca 1$'a sahip olmasıdır. Ve bu 1$, LP3'in 1$'ı ile rekabet ediyor.

Herhangi bir Uniswap v3 havuzunun likidite dağılımına bakarsanız, bunun tek tip olmadığını görürsünüz.

213 resim

Çıta ne kadar yüksek olursa, rekabet o kadar yüksek olur. Likidite sağlayıcılarının, rekabetçi aralıklar ile daha düşük bir fiyat isabeti olasılığı olan aralık arasındaki dengeyi bulması gerekir. Bu nedenle bu dağıtım, LP kar tahmini ve strateji oluşturmada büyük rol oynar. Tek sorun... Bu dağılımın doğru hesaplandığından emin değilim.

Bu Yetmezmiş gibi—Likidite Keskin Nişancıları

Likidite sağlayıcı olmak, fiyatı, rekabet durumunu ve ticaret hacmini tahmin etmekle ilgilidir. Bir LP'nin bir dileği olsaydı, likidite pozisyonlarını önceden ayarlamak için işlemlerin geleceğini bilmek olurdu.

Ama ya sana bunun mümkün olduğunu söylersem?

Araştırma yaparken bazı olağandışı likidite sağlayıcıları dikkatimi çekti. Günde birçok kez önemli likidite pozisyonları (10 milyon doların üzerinde) ekleyip çıkardılar. Daha da şaşırtıcı olanı, her zaman aynı bloğa likidite ekleyip çıkardılar.

Bir örneğe bakalım:

214 resim

Hepsi 15413416 bloğunda, 3-5 pozisyonlarında, aşağıdan yukarıya sırayla yürütülen üç işlemimiz var. Execute yöntemiyle yapılan ilk işlem, USDC-WETH havuzuna 22 milyon dolarlık likidite ekleyen “MEV Bot” adlı bir sözleşmedir.

215 resim

İkinci işlem, WETH aracılığıyla USDC'den DogeChain'e bir takastır. Bu, yaklaşık 16,500 $ değerinde sıradan bir takastır.

216 resim

Üçüncü işlem, USDC-WETH havuzundan 22 milyon dolarlık likiditeyi kaldıran yine “MEV Bot”.

217 resim

Örnekte yaşananlara “likidite keskin nişancı” denir. Bunun nasıl çalıştığını açıklayayım:

  1. Biri USDC'yi DogeChain'e takas etmek için bir işlem gönderdi
  2. MEV Bot, mempool'da bu işlemi tespit etti ve Flashbots teknolojisi veya benzeri bir şey kullanarak bir madencilik havuzuyla özel bir bağlantıyı etkinleştirdi.
  3. MEV Bot, madencilere bir takas işlemi ve değer çıkarmaya izin veren belirli bir sırayla iki işlem eklemeleri için ödeme yaptı.
  4. MEV Bot, çok dar bir fiyat aralığına çok fazla likidite (22 milyon $) ekledi, o kadar etkili bir şekilde, o belirli USDC-DogeChain ticaretinden elde edilen tüm ücret kazançları kendisine tahakkuk etti.
  5. MEV Bot daha sonra likiditeyi ve kazanılan ücretleri kaldırdı (yaklaşık 35 $)

Yani, gaz ücretlerinden sonraki brüt karı 30 dolar civarındaydı. Çok değil? Evet, ama bu stratejiyi dakikada birden çok kez uyguluyor ve bu da toplamda artıyor. Yapabilirsiniz kendin kontrol et.

Bir likidite sağlayıcısı olarak bu sizin için ne anlama geliyor? Bu, likidite keskin nişancılarının ücret kârlarınızdan önemli bir kesinti alabileceği anlamına gelir.

Sonuç

Araştırma bulgularımı toparlayayım:

  1. Uniswap v3 Grafiklerindeki TVL rakamları büyük ölçüde yanlıştır. Resmi Uniswap v3 alt grafiğine dayanan tüm analitik araçlarda aynı hatalar mevcuttur.
  2. Toplam Uniswap v3 TVL, resmi web sitesi tarafından (yazım sırasında) bildirilen 3,14 milyar $'a kıyasla 11,8 milyar $'dır.
  3. Uniswap v3 likidite sağlayıcıları için hesap makineleri, rekabeti ve likidite keskin nişancılarını hesaba katmadıkları için gerçek yaşam stratejileri için çok az değere sahiptir.
218 resim

Neyse ki artık Uniswap v3 likidite havuzlarının gerçek hayatta nasıl çalıştığını daha iyi anlayabilir ve araştırmanızı buna göre ayarlayabilirsiniz.

Finansal tavsiye verecek durumda değilim, ancak belirgin bir likidite sağlama stratejisi oluşturmak için yalnızca 2 seçenek görüyorum:

  1. BASİT. Geçmiş performans verilerini kullanın. Küçük bahislerle bazı likidite pozisyonlarını deneyin ve hangi seçeneklerin daha iyi çalıştığını görün. Açıkçası, bu sadece piyasanın istikrarlı olduğu varsayımı altında çalışır.
  2. İLERİ. Araştırma yapın ve LP stratejisini buna göre optimize edin. Yukarıda bahsettiğimiz gibi, bu, Uniswap v3 protokolünün derinlemesine anlaşılmasını, matematik ve oyun teorisi yeterliliklerini ve büyük miktarda veriyi gerçek zamanlı olarak işlemek için güçlü bir veri analizi aracını gerektirir.

Her iki seçeneğin de ortak bir yanı var: kararlarınızı içgüdüsel bir his veya rastgele araçlar yerine verilere dayandırıyorsunuz. Bazen verilerle çalışmak zordur, ancak karşılığını verir.

Datamint'te, özel veri projelerinizde size yardımcı olmak için her zaman buradayız.

Veriler sizinle olsun!

Kaynak: https://www.cryptopolitan.com/uniswap-v3-liquidity-farming-calculations/