PicoBlog

Phn tch m hnh hot ng Arrakis Finance

I. Vấn đề là gì ? Pain point là gì ?

Uniswap V3 là phiên bản cải tiến của Uniswap V2 khi cho phép Liquidity Provider cung cấp thanh khoản tập trung ở 1 vùng giá nhất định thay vì cung cấp thanh khoản dàn trải từ 0 → ∞

Tuy nhiên nó cũng phát sinh vấn đề là cung cấp thanh khoản bây giờ trở nên quá phức tạp khi liquidity provider còn phải tính toán mình nên cung cấp thanh khoản ở khoảng giá nào thay vì chỉ nhìn vào APY như trước đây nữa. 

Nếu cung cấp thanh khoản ở vùng giá nhiều người đã cung cấp thì trading fees nhận được sẽ thấp nhưng đổi lại vùng giá đó sẽ có nhiều giao dịch hơn được tiến hành và ngược lại, cung cấp thanh khoản ở vùng giá ít người cung cấp nhưng khả năng giá khó có thể di chuyển vào vùng đó để hưởng lợi thế ít người cung cấp thanh khoản. 

Ngoài ra nếu giá đi ra ngoài khỏi vùng giá bạn cung cấp thanh khoản, bạn sẽ hoàn toàn không nhận được 1 chút trading fees nào cả.

Arrakis Finance sẽ giúp giải quyết vấn đề cung cấp thanh khoản quá khó khăn và phức tạp này.

II. Giới thiệu dự án Arrakis Finance

1. Media dự án

Website:

https://www.arrakis.finance/

| https://beta.arrakis.finance/vaults

Whitepaper:

https://resources.arrakis.fi/

Twitter: https://twitter.com/ArrakisFinance

Discord: https://discord.com/invite/arrakisfinance

Twitter: https://t.me/arrakisfinance

2. Business Model

Arrakis Finance là dự án Structure Finance hỗ trợ liquidity provider trở nên dễ dàng, bớt phức tạp khi cung cấp thanh khoản trên Uniswap V3. Liquidity providers chỉ cần đơn giản cung cấp thanh khoản theo cặp tương tự như mô hình Uniswap V2 (Thanh khoản dàn trải) và Arrakis Vault sẽ tự động triển khai chiến lược, chọn vùng giá (price range) và cung cấp thanh khoản. 

Liquidity providers có 3 loại Vaults khác nhau phù hợp với từng nhu cầu của mỗi người:

- Trustless Vaults: Vaults có smart contracts được setup các chiến lược có sẵn. Chỉ cần user deposits base asset và quote asset, Vaults sẽ tự động làm phần việc còn lại.

- Managed Vaults: Vaults được run bởi các chiến lược được xây dựng bởi market maker chuyên nghiệp.

- Self Managed Vaults: Vaults được quản lý bởi các cá nhân vừa là liquidity provider vừa là vault manager. Vaults này thường sẽ phù hợp hơn với những advanced users (Những người đã có nhiều kinh nghiệm cung cấp thanh khoản).

3. Mechanism

Arrakis phát triển nên Protocol Automated Liquidity Management, gọi tắt là PALM. PALM giúp cho cả user, protocols lẫn DAO xây dựng deep liquidity cho token của họ. 

Ok để cung cấp thanh khoản cho cặp UNI/USDC thì chúng ta cần deposit vào pool token UNI và token USDC.

Thế giả sử chúng ta chỉ deposit UNI:USDC theo tỷ lên 80:20 thì sao ? 1 số dự án Structure Finance cho phép deposit single asset hoặc deposit tỷ lệ tùy thích thì sẽ có 1 chức năng là swap phần token dư thừa sang phần token thiếu để tạo thành tỷ lệ 50:50. Tuy nhiên vấn đề ở đây là nó sẽ tạo ra sell impact và ảnh hưởng tới giá token UNI. 

Giải pháp ở đây là gì ? PALM sẽ hold phần 60 UNI bị dư kia lại vào Inventory Management và chỉ cho phép 20:20 UNI:USDC được dep vào pool thôi. Và phần 60 UNI kia thì sẽ được nằm chờ khi nào mà có thằng nào nó deposit theo tỷ lệ lệch USDC nhiều hơn UNI thì đống UNI trong Inventory Management kia sẽ được lôi ra để bù đắp vào tạo tỷ lệ cân bằng. 

Đó là cơ chế deposit-hold asset vậy còn khi mà cung cấp thanh khoản thì sao ? Uniswap V3 cung cấp theo price range chứ có phải thanh khoản dàn trải đâu ?

…………………………………

Chuyện bên lề:

Giả sử ETH đang giao dịch loanh quanh ở vùng giá $1000-$1200. Bạn phân tích kĩ thuật và view nó sẽ lên $1800-$1900. Bạn có 500u $ETH, 500u $USDT. Vậy bạn sẽ cung cấp thanh khoản cho vùng giá $1000-$1200 và hưởng lợi thế nhiều transaction nhưng transaction fee earn được ít hay sẽ cung cấp thanh khoản ở $1800-$1900 để mặc dù ở thời điểm bây giờ không earn được 1 tý fee nào nhưng khi giá lên vùng đó thì bạn sẽ hưởng được nhiều hơn do phân nhiều thanh khoản buff cho vùng 1k-1k2 rồi ?

Well mình có đi khảo sát mọi người thì ai cũng sẽ chọn add liquitidy ở vùng giá 1k-1k2 vì việc nó lên 1k8-1k9 thì đó là chuyện của tương lai ko phải hiện tại. Nhỡ nó quay ngược về $800-$900 thì chịu luôn à.  

…………………………………

Ok chúng ta sẽ nhìn vào ảnh này:

Ok price range là vùng giá mà chúng ta cung cấp thanh khoản. Còn 2 thanh đỏ full và xanh full là tài sản trong Inventory Management. 

Nếu giá di chuyển vượt quá vùng price range và chạm vào triggered price.

Lúc này PALM sẽ kích hoạt để rút thanh khoản khỏi vùng giá cũ và tiến tới cung cấp thanh khoản vùng giá mới.

Như ảnh trên chúng ta sẽ thấy được thanh khoản được di rời để cung cấp cho vị trí mới ( M → M1).

Về bản chất việc này chúng ta làm thủ công hoàn toàn được chứ không nhất thiết phải sử dụng Arrakis Finance.

Nhưng có 2 vấn đề 

Thứ nhất nó tốn thời gian của bản thân khi cứ triggered ta lại phải thao tác thủ công lại từng bước (Rút LP → Tranfer thành 2 assets → add thanh khoản vị trí mới).

Thứ 2 là tốn fee giao dịch mạng lưới. Bạn nào tiền ít đã vậy còn thích thủ công trên ETH thì gas fee nó trừ cho cứ phải gọi là khóc ra tiếng mán luôn. 

Và Arrakis Finance đã giải quyết

Với vấn đề thứ nhất thì có hệ thống tự động tính toán triggered price range, tự động làm những bước thủ công kia luôn. 

Thứ 2 là họ add liquidity một lần cực kì nhiều. Nên số tiền earn được nó nhiều hơn gas fee nên sẽ tránh được trường hợp “Phí giao dịch còn nhiều hơn giá trị giao dịch”

4. Tổng kết lại

Với một người không có kinh nghiệm về đầu tư, crypto thì cách tiếp cận dễ nhất là cung cấp thanh khoản vì nó là real yield (Fee giao dịch) chứ không như staking là dự án in token từ không khí ra để trả cho user. Nhu cầu gửi tiết kiệm trong tài chính truyền thống luôn luôn lớn. Nếu crypto đón được một lượng tiền tiết kiệm từ tài chính truyền thống sang thì very good luôn.

Với những token nhỏ lẻ và chỉ có liquidity pool giá trị khoảng under $10tr thì thanh khoản tập trung là phương pháp hiệu quả để giảm thiểu vấn đề trượt giá.

Hiện tại các dự án làm về Liquidity Protocol vẫn duy trì hình thức thanh khoản dàn trải theo mình cho là vì mô hình thanh khoản tập trung vẫn còn mới mẻ và dễ là thay đổi sang mô hình mới thì user sẽ bị bỡ ngỡ và nhảy sang protocol khác. Cách tiếp cận của Arrakis sẽ là 1 hướng mà các dự án này có thể học theo. User vốn chỉ muốn cái gì dễ sử dụng, ra tiền đều đặn và an toàn thôi mà.

Dự án này cũng được Polygon và Uniswap Foundation đầu tư vào nữa. Có lẽ là chính Uniswap cũng nhận ra được sự phức tạp khi cung cấp thanh khoản trên nền tảng của mình mà. User cần thứ gì đơn giản, dễ hiểu mà thôi.

……………………………………………..

Update 13/12/2022: Có một vấn đề với mô hình dự án này là cơ chế di dời liquidity provide zone có điểm tương đồng với JIT- Just in time liquidity.

Arrakis Finance sử dụng các điểm triggered price để di dời khu vực cung cấp thanh khoản sang vùng transaction booming

JIT mechanism thì đọc mempool để add liquidity vào vùng đó trước khi transaction được deliver đến.

Sự khác biệt ở đây là Arrakis kích hoạt khi giá triggered sau khi transaction booming rồi thì thanh khoản mới được dịch chuyển. trong khi JIT thì quan sát các giao dịch trong mempool và tiến hành cung cấp thanh khoản trước khi transaction booming.

Điều này đồng nghĩa với việc Arrakis sẽ rất dễ bị các front-run bot tấn công.

Mình sẽ ví dụ như thế này: Mình sẽ triển khai bot front-run follow liquidity position của Arrakis. Mỗi khi vị thế này được rút và cung cấp thanh khoản vào price zone mới. Thì bot sẽ tự động copy-paste theo và tranh giành lượng transaction fee ở khu vực này của Arrakis.

Mà thực ra cũng chả cần thế để làm gì cả. Arrakis public source code trên github rồi. Công thức tính triggered price thì cũng có luôn. Đồng nghĩa với việc mình sẽ tính toán được ở ở liquidity provide zone này triggered price là bao nhiêu luôn. Và vì quan sát được mempool mình sẽ biết luôn được những giao dịch này đang có gây ra triggered price hay không ? Và thế là mình đi trước được cả transaction booming lẫn Arrakis mechanism.

Vậy giải pháp ở đây cho Arrakis Finance là gì ?

Mình đề xuất dự án cần phải triển khai MEV để đọc được các transaction tiềm năng triggered ở trong sẵn mempool thay vì mô hình hiện tại.

ncG1vNJzZmilmaOxo7jOsKypZqOqr7TAwJyiZ5ufonyxe8%2BhmKdlpJ6wqXnMqGShoZ6deqm7wK1kqKaXYq6zvsCkoKw%3D

Almeda Bohannan

Update: 2024-12-02