Phân tích mô hình hoạt động Uniswap V2 – Tiên phong trong mảnh ghép AMM

375Total views
Phan tich mo hinh hoat dong Uniswap V2 – Tien phong trong manh ghep AMM - anh 1
Phân tích mô hình hoạt động của Uniswap V2. Nguồn: Cointelegraph.

DeFi là một không gian mở, hoàn toàn phi tập trung và mang tính cạnh tranh công bằng. Các dự án trong thị trường DeFi phải tạo ra được giá trị lớn cho cộng đồng mới có thể phát triển bền vững và lâu dài. AMM được xem là một trong những mảnh ghép quan trọng và được đông đảo các nhà phát triển dự án chú ý đến. Vậy có bao giờ bạn tự hỏi mô hình hoạt động của một AMM như thế nào chưa? Để tiếp nối chuỗi bài viết về phân tích mô hình hoạt động của các Protocol/DApp, hôm nay Coinvn sẽ đi phân tích mô hình hoạt động của Uniswap V2 – gã khổng lồ về AMM trong thị trường tài chính phi tập trung.

Một số thông tin cần biết về Uniswap V2

Uniswap là một giao thức tạo lập thị trường tự động (AMM – Automated Market Maker) được xây dựng trên Blockchain Ethereum cho phép người dùng hoán đổi (swap) giữa các token ERC-20 với nhau. 

Các bạn có thể tham khảo thêm thông tin cơ bản về Uniswap trong bài phân tích dữ liệu on-chain của Uniswap tại đây.

Uniswap V2 là một bước tiến so với Uniswap V1, ở V2 bạn có thể hoán đổi (swap)  qua lại giữa các ERC-20 token với nhau. Uniswap sử dụng pool thanh khoản thay vì sổ lệnh (Order book).

Đọc thêm: Hướng dẫn toàn tập về sàn giao dịch Uniswap 2021.

Mô hình hoạt động của Uniswap V2

Thành phần tham gia vào mô hình

Người cung cấp thanh khoản (Liquidity Provider, gọi tắt là LP): đóng vai trò như nguồn cung, cung cấp tài sản để tạo thanh khoản cho thị trường.

Người dùng (User/Trader): đóng vai trò là nguồn cầu, người dùng có thể giao dịch bất kì ERC-20 token nào trên Uniswap và trả 0.3% phí cho mỗi giao dịch.

Quy trình hoạt động của mô hình Uniswap được mô tả theo 3 bước chính:

Bước 1: Nhà cung cấp thanh khoản (LP) sẽ cung cấp 2 loại tài sản (A và B) vào pool thanh khoản tương ứng (A/B) trên Uniswap với tỷ lệ 1:1. Sau đó nhận về LP token, token này đại diện cho quyền sở hữu 1 phần tài sản trong pool đó. 

Bước 2: Người dùng (User/Trader) muốn hoán đổi (swap) token A sang token B thì phải bỏ token A vào pool tương ứng và nhận về token B.

Bước 3: Mỗi giao dịch swap, người dùng phải trả 0.3% phí giao dịch, phí này sẽ được trả cho nhà cung cấp thanh khoản (LP).

Để dễ hình dung, mình sẽ minh họa trong hình bên dưới.

Phan tich mo hinh hoat dong Uniswap V2 - Tien phong trong manh ghep AMM - anh 2
Mô hình hoạt động của Uniswap V2

Qua mô hình, có thể thấy được rằng:

Mô hình không tồn tại bên trung gian nào nhưng vẫn có thể kết nối giữ bên cung (LP) và bên cầu (User/Trader), cả 2 cùng chia sẻ lợi ích cho nhau.

Để kết nối cung và cầu, Uniswap tạo ra những thuật toán, lập trình theo những chương trình đã được định sẵn, giúp cho mọi hoạt động vẫn được diễn trơn tru mà không cần bên thứ 3. Và từ đó tạo ra một sàn giao dịch hoàn toàn phi tập trung.

Đọc thêm: PancakeSwap là gì và những điều cần biết về CAKE token?

Thuật toán Uniswap sử dụng

Thuật toán trên Uniswap dựa trên công thức: x * y = k.

Trong đó: 

  • x là số lượng token A.
  • y là số lượng token B.
  • k là tổng thanh khoản của pool A/B.

Khi đó, tính thanh khoản trong Pool sẽ tạo thành đường cong như hình bên dưới, với trục tung là số lượng Token B và trục hoành là số lượng Token A.

Phan tich mo hinh hoat dong Uniswap V2 - Tien phong trong manh ghep AMM - anh 3
Thuật toán Uniswap sử dụng

Vậy chuyện gì sẽ xảy ra khi có một giao dịch? Mình sẽ lấy cặp ETH/USDT làm ví dụ cho bạn dễ hình dung:

Lưu ý: giá trong ví dụ mình giả sử là giá lý tưởng, nhưng trên thực tế giá sẽ tùy vào biến động của thị trường, bạn có thể tham khảo giá của các loại tiền mã hóa trên Coingecko hoặc Coinmarketcap.

Giả sử pool được tạo từ cặp ETH/USDT với 10 ETH và 10,000 USDT với giá  1 ETH = 1000 USDT và giá 1 USDT = 0.001 ETH.

Khi đó tổng thanh khoản trong pool: x * y = k ⇔ 10 * 10,000 = 100,000.

  • Trường hợp 1: Swap USDT lấy ETH

Mình sẽ vào pool này swap 5,000 USDT và trả 0.3% phí để đổi lấy ETH.

=> y’ = 5,000 + 10,000 = 15,000 USDT

Với k = 100,000 không đổi.

=> x’ = 6,66 ETH,

Vậy mình sẽ nhận được số lượng ETH = x – x’  = 10 – 6.66 = 3.33, với giá trị tương đương 5,000 USDT => 1 ETH = 1,500 USDT, tăng 50% so với giá trị ban đầu. 

Phan tich mo hinh hoat dong Uniswap V2 - Tien phong trong manh ghep AMM - anh 4
Swap USDT lấy ETH

Tại sao giá ETH lại tăng? 

Có thể hiểu đơn giản là mình đã làm tăng phần USDT và giảm phần ETH của nhóm nên lý do giá ETH tăng là vì số lượng của ETH trong Pool sau khi mình thực hiện Swap đã giảm nhưng tổng thanh khoản (k) luôn là 1 hằng số, vì vậy đã khiến giá của ETH tăng so với ban đầu. 

Lưu ý: 0.3% phí sẽ được thêm lại vào pool sau khi swap làm thay đổi giá trị của k.

  • Trường hợp 2: Swap ETH lấy USDT

Mình sẽ vào pool này swap 6 ETH lấy USDT.

=> x’ = 10 + 6 = 16 ETH,

Với k = 100,000 không đổi.

=> y’ = 6250 USDT

Vậy mình sẽ nhận được số lượng USDT = y – y’  = 10,000 – 6,250 = 3,750 với giá trị tương đương 6 ETH => 1 ETH = 625 USDT, giảm 37.5% so với giá trị ban đầu.

Phan tich mo hinh hoat dong Uniswap V2 - Tien phong trong manh ghep AMM - anh 5
Swap ETH lấy USDT

Đến đây, bạn có thể lý giải tại sao giá ETH giảm rồi đúng không?

Lưu ý: trên thực tế khi khối lượng giao dịch càng lớn thì tỷ lệ cân bằng giữa x và y càng chênh lệch, tức là không thể thay đổi theo tỷ lệ tuyến tính. Khi khối lượng giao dịch lớn sẽ khiến giá của tiền mã hóa trong pool đắt hơn theo cấp số nhân so với giao dịch với khối lượng nhỏ nếu thanh khoản trong pool không đủ (đây gọi là sự trượt giá). Vậy để giảm sự trượt giá và góp phần xử lý giao dịch khối lượng lớn nhanh hơn đòi hỏi thanh khoản trong pool phải lớn. Vì thế, bạn cần xem xét tính thanh khoản trong pool trước khi thực hiện giao dịch.

Đọc thêm: Ethereum 2.0 là gì và vì sao Ethereum 2.0 lại quan trọng?

Mô hình Pool trên Uniswap

Uniswap sử dụng mô hình pool với tỷ lệ  50:50, phần lớn các pool trong Uniswap sẽ tạo thành từ 50% ETH và 50% token ERC-20. 

ETH được sử dụng như đồng tiền chung trên Uniswap và giúp kết nối các Pool lại với nhau. Ví dụ: bạn đang sở hữu token A và muốn swap với bất kì token khác trên Uniswap (ví dụ như token B), thì quá trình swap của bạn sẽ diễn ra như sau: Token A => ETH => Token B. 

Phan tich mo hinh hoat dong Uniswap V2 - Tien phong trong manh ghep AMM - anh 6
Mô hình Pool trên Uniswap
Phan tich mo hinh hoat dong Uniswap V2 - Tien phong trong manh ghep AMM - anh 7
Mô hình Pool trên Uniswap

Mô hình hoạt động của Uniswap V2 có hiệu quả?

Uniswap tại ra một sàn giao dịch phi tập trung vô cùng tuyệt vời và hoàn toàn phi lợi nhuận khi 100% chi phí giao dịch trên sàn sẽ trả cho nhà cung cấp thanh khoản cho pool. Tuy nhiên đối với Uniswap V2 gặp phải 2 vấn đề chính:

Thứ nhất, phí giao dịch trên ETH khá cao, điều này gây cản trở việc Uniswap tiếp cận với các nhà đầu tư nhỏ khác. Với vấn đề này, mình kì vọng sẽ được giải quyết trong phiên bản Uniswap V3. Coinvn sẽ sớm có bài viết về mô hình hoạt động của Uniswap V3. Cùng đón chờ nhé!

Đọc thêm: Uniswap v3 ra mắt giúp DeFi khởi sắc trong đợt suy thoái tuần qua.

Thứ hai, nhà cung cấp thanh khoản phải đối mặt với tổn thất tạm thời (Impermanent loss). 

Giả sử: mình gửi 1 ETH và 1000 USDT (tỷ lệ 1:1, với giá 1 ETH = 1000 USDT) vào một pool tương ứng trên Uniswap. Trên pool có 10 ETH, 10,000 USDT và tổng thanh khoản (k) trong trường hợp này là 100,000. Như vậy mình đã có 10% cổ phần trong trường hợp này. Vậy mình phải đối mặt với tổn thất tạm thời nếu ETH tăng lên 4000 USDT điều này làm thay đổi tỷ lệ giá ETH và USDT trong pool. Kết quả là người dùng sẽ bổ sung thêm USDT vào pool và rút ETH ra khỏi đó cho đến khi tỷ lệ này phản ánh giá chính xác (tổng thanh khoản k không đổi), chính vì thế lúc này trong pool sẽ có 5 ETH và 20,000 USDT. Vậy mình rút tiền và sẽ nhận 10% tổng số tiền là 0.5 ETH và 2,000 USDT có giá trị là 4000 USDT. Mình đã có lợi nhuận là 2,000 USDT nhưng nếu mình không gửi vào pool thì lợi nhuận của mình là 3,000 USDT (1 ETH và 1,000 USDT, giá 1 ETH = 4,000 USDT). 

Lưu ý rằng, hiệu ứng này xảy ra cả khi giá giảm so với thời điểm gửi vào pool. Đối với việc bạn giữ ETH trong ví, nếu giá ETH giảm thì khoản lỗ có thể rất lớn so với việc gửi ETH vào pool, vì khi bạn gửi ETH vào pool sẽ nhận được khoản phí giao dịch của người dùng khi thực hiện giao dịch trên Uniswap.

Vấn đề này là khoản rủi ro không thể tránh khỏi vì thế nhà cung cấp thanh khoản phải cân nhắc khi quyết định gửi tiền mã hóa vào pool.

Đọc thêm: Phân tích dữ liệu On-chain của Ampleforth (AMPL) – Nhu cầu Stablecoin thuật toán ra sao?

Lời kết

Trên đây là những thông tin hữu ích về mô hình hoạt động của Uniswap V2 từ nhiều nguồn mà Coinvn tổng hợp và nghiên cứu mang đến cho bạn đọc. Hy vọng sẽ giúp bạn hiểu rõ hơn về dự án và mô hình hoạt động của một AMM, hiện đang dẫn đầu trong thị trường DeFi.

Theo bạn đọc mô hình hoạt động của Uniswap V2 có thực sự hiệu quả? Cùng thảo luận với chúng tôi tại Telegram Group Coinvn. Và đừng quên ghé thăm website của Coinvn để cập nhật nhanh nhất những sự kiện sắp tới của dự án. Hẹn gặp lại bạn ở những số “Phân tích mô tích mô hình hoạt động” lần sau của Coinvn.

Lưu ý: Tất cả những thông tin trong bài nhằm cung cấp cho người đọc những thông tin mới nhất trong thị trường và không được coi là lời khuyên đầu tư. Hy vọng bạn đọc đánh giá lại các thông tin trên một các kỹ lưỡng trước khi đưa ra quyết định đầu tư.