Episoder 3: Hiểu cách một Market Maker kiếm tiền trên thị trường

Chào ace nông dân,

Lại là tôi Hiệp chủ tịch hội đây.

Hôm nay, tôi sẽ trao đổi một chủ đề mà nhiều ace quan tâm, đó là khái niệm Market Maker (nhà tạo lập thị trường), rồi thì AMM - Automated Market Maker (nhà tạo lập thị trường tự động), Liquidity Provider (người cung cấp thanh khoản) trong Defi là gì? Và làm thế nào để ace có thể kiếm được thu nhập bị động bằng việc trở thành một Market Maker (MM) trên một nền tảng nào đó? Trong bài viết này, tôi sẽ đi thẳng vào vấn đề và cắt nghĩa các khái niệm tài chính/thị trường một cách “chân phương” và dễ hiểu nhất cho ace có thể thẩm được để còn thực hành, và sẽ không sử dụng những thuật ngữ quá cao siêu đánh đố mọi người.

Nào, hãy cùng bắt đầu

Hiểu về Market Maker hay Liquidity Provider

Market maker là ai và tại sao họ lại quan trọng?

Nhân tiện đây, tôi xin giới thiệu với ace trong hội bác Việt. Bác Việt này là chủ một cửa hàng buôn gạo lớn nhất trên chợ huyện ta.

Công việc của bác Việt là mua gạo của người cần bán, và bán gạo cho người cần mua, qua đó mà bác Việt kiếm được bộn tiền. Thậm chí bác Việt còn sắm được một dinh tư cho riêng mình ngay trên phố Văn Cao, Hà Nội (do vậy bác còn được bà con gọi bằng một cái tên thân thương là “Việt Văn Cao”).

Công việc của bác Việt được lược giải như sau:

Trong cửa hàng bác Việt luôn lưu giữ 2 loại tài sản, là Gạo và Tiền Mặt

Thường thì bác Việt sẽ nhận mối mua gạo từ các thương lái, bà con nông dân. Như vậy bác sẽ trả Tiền Mặt để thu về Gạo trong cửa hàng. Giả sử bác thu mua với giá 10 đồng/kg Gạo.

Và bác sẽ bán Gạo cho các nhà hàng, người tiêu dùng khác có nhu cầu mua về dùng làm thực phẩm. Như vậy bác sẽ trả Gạo cho người tiêu dùng, để thu về Tiền trong cửa hàng. Và giả sử bác chào giá bán là 10.5 đồng/kg Gạo.

Như vậy, anh chị em đã nhìn ra một cơ hội kiếm tiền của bác Việt ở đây. Cụ thể là bác thu được 0.5 đồng cho mỗi kg Gạo mua được từ người nông dân, và bán lại cho người tiêu dùng.

Và rõ ràng khối lượng giao dịch càng lớn, thì bác sẽ kiếm được gấp hàng vạn, hàng trăm ngàn lần những 0.5 đồng lợi nhuận nho nhỏ như vậy. Và thành quả là căn nhà mặt phố Văn Cao kể ở trên như ace thấy.

Ace có thể đặt một câu hỏi ngược lại rằng:

“Có cảm giác vai trò của bác Việt hơi “phi chức năng”. Sẽ ra sao nếu người nông dân và người tiêu dùng bỏ qua khâu trung gian MM là bác Việt, và đến giao dịch thẳng với nhau? Như vậy thì họ sẽ không cần trả mức phí chênh lệch 0.5 đồng/kg cho bác Việt nữa.”

Quả thực sẽ có những người tiêu dùng làm việc đó. Thay vì tới cửa hàng gạo của bác Việt trên chợ huyện, họ sẽ tìm vào trong tận các bản xa xôi để thu mua gạo với giá gốc từ người nông dân.

Nhưng ở đây sẽ có 1 vấn đề. Nó gọi là “thị trường không đủ thanh khoản”.

Không phải lúc nào tại mọi thời điểm, nhu cầu bán của người nông dân có thể khớp với nhu cầu mua của người tiêu dùng → và giao dịch diễn ra. Tôi lấy ví dụ như sau:

Một hộ nhà nông năm nay được mùa, cho ra sản lượng 20 tấn gạo. Và hộ này muốn bán sạch 10 tấn gạo này trong 1 giao dịch duy nhất để thu về tiền nhanh còn mua xế hộp. Nếu ace chạy sang hộ này để mua… 7kg gạo để dùng dần trong tháng sau. Ace nghĩ liệu bác nông dân này sẽ chấp nhận “khớp lệnh cho ace”?

Lại nữa, một chuỗi nhà hàng cơm niêu có nhu cầu thu mua 500 tấn gạo vùng này, để dùng trong tháng tới. Ace nghĩ liệu chuỗi nhà hàng này sẽ dong xe đi khắp cả huyện này để thu mua gạo từ hơn 50 hộ nhà nông sản xuất được 10 tấn ở trên? Trong trường hợp này, chuỗi nhà hàng cũng không thể chấp nhận “khớp lệnh” với các hộ nhà nông nhỏ lẻ thật.

Và giải pháp đơn giản nhất chính là tất cả cùng đến 1 địa điểm trung gian như cửa hàng gạo của bác Việt Văn Cao:

  • Hộ nhà nông kia muốn nhận tiền tươi? → Bác Việt xòe tệp 100,000 đồng ra trả cho hộ nhà nông kia → Done

  • Ace muốn mua 7kg gạo? → Bác Việt đong cho ace 7kg vào 1 bao tải dứa, và thu về 7 * 11 = 77 đồng (giá bán lẻ 11 đồng/kg) → Done

  • Chuỗi cửa hàng cơm niêu muốn chở đoàn xe đến huyện, và chất 500 tấn gạo về luôn trong buổi chiều? → Sau hơn 3 tiếng đồng hồ cùng hàng chục phụ hồ chất gạo lên xe, bác Việt thu về 5,150,000 đồng (giá bán sỉ 10.5 đồng/kg) → Done

Hay nói cách khác, nhờ bác Việt đóng vai MM nên thị trường mua bán gạo đã trở nên có tính thanh khoản rất cao, và việc mua bán khớp lệnh diễn ra dễ dàng, gọn nhẹ, nhanh chóng chỉ trong vòng 1 cái búng tay.

Order book - Sổ khớp lệnh của MM

Trong thị trường tài chính mà khối lượng giao dịch có thể lên tới hàng ngàn tỷ usd/ngày, thì vấn đề lớn nhất cần giải quyết là Tính Thanh Khoản. Do đó, vai trò MM (hay Liquidity Provider - người cùng cấp thanh khoản) là rất quan trọng.

Và MM trong thị trường này, sẽ là các banker, các tổ chức, các quỹ phòng hộ, các tổ chức môi giới, các bên MM chuyên nghiệp, các “cá voi”. Và họ thường thực hiện nghiệp vụ MM của mình thông qua các sàn giao dịch tập trung (Centralized Exchange hay còn gọi là CEX).

Hãy thử xét đến 1 đồng crypto mà chắc ace “đu coin” ở VN này ai cũng biết, là đồng C98 Của Coin98. Theo dữ liệu của Coingecko, thì tại thời điểm viết bài này, khối lượng giao dịch của C98 trên sàn Binance là lớn nhất lên tới $3,290,000 trong vòng 24h qua.

Do đó, đây cũng là nơi tập trung thanh khoản lớn nhất của C98, và cũng là nơi MM đang thực hiện nghiệp vụ của mình, đặt lệnh mua/bán và giữ cho C98 thanh khoản cao trên sàn Binance, thông qua Order Book (sổ khớp lệnh).

Order book của cặp C98/USDT trên sàn Binance
Order book của cặp C98/USDT trên sàn Binance

Như ace thấy, trên Order book có 3 khu vực quan trọng:

  • Khu vực dưới cùng màu xanh, thể hiện các lệnh chào mua (hay còn gọi là Bid)

  • Khu vực trên cùng màu đỏ, thể hiện các lệnh chào bán (hay còn gọi là Ask)

  • Và ở giữa, 0.1689 là giá thị trường của đồng C98 này (hay còn gọi là market price)

Các bác có thể tinh ý nhận thấy rằng, giá Bid và Ask không bao giờ trùng khớp nhau. Bởi người mua thì luôn muốn mua giá thấp, còn người bán thì luôn muốn bán giá cao. Do đó, giá Bid cao nhất ở bảng trên là 0.1688, giá Ask thấp nhất ở bảng trên là 0.1690. Và giá khớp lệnh luôn trên thị trường (market price) là 0.1689.

Để biểu thị trực quan hơn, các lệnh bid/ask ở bảng trên được hình ảnh hóa thành một biểu đồ như dưới đây:

Cái “khe nhỏ thần thánh” ở giữa vùng giá Bid và Ask, chính là khoảng chênh về kỳ vọng giữa 2 phe mua và bán hay còn gọi là Spread.

Ở đây tôi không muốn nói quá nhiều về nghiệp vụ của MM, vì một là có thể khiến ace nông dân “xoắn não” thêm mà sẽ bỏ dở bài đọc này, và hai là nghiệp vụ MM thuộc hàng “Mật tông” (các MM chuyên nghiệp chỉ truyền dạy nội bộ cho chính “đệ tử con nhang” của họ) mà chính tôi lẫn nhiều người tham gia thị trường tài chính này cũng không thấu hiểu để mà giải thích kỹ càng cho ace. Nhưng đại khái tôi muốn nói rằng nhờ có MM mà thanh khoản của C98 được làm mịn và có khoảng Spread nhỏ như ở trên. Chứ nếu không thì ông đặt giá mua cao nhất là 0.1, và ông đặt giá bán thấp nhất là 0.2 thì cả đời không khớp được lệnh với nhau.

Rồi, hiểu qua về MM vậy thôi. Giờ ace chúng ta sẽ đến với khái niệm sát sườn với quyền lợi và túi tiền chúng ta nhất, đó là AMM - Automated Market Maker, hay còn gọi là Nhà tạo lập thị trường tự động.

AMM và cách thức hoạt động trên blockchain

Chúng ta có thể trở thành MM trên blockchain thông qua AMM

Như đã nói ở trên, MM trên các sàn CEX như Binance đòi hỏi rất nhiều yếu tố, liên quan tới vốn, kỹ thuật (API, các chiến lược đặt lệnh/trading, quản trị rủi ro v.v…). Điều đó rất khó cho những người nông dân chất phác chân lấm tay bùn như chúng ta có thể trở thành MM (hay nói 1 cách ví von là trở thành bác Việt Văn Cao thứ 2 trên thị trường tài chính).

May mà nhờ có AMM - một dạng protocol ra đời trên blockchain đã giúp cho chúng ta lần đầu tiên trong lịch sử có thể đứng vai một MM để cung cấp thanh khoản cho một cặp giao dịch nào đó.

Chúng ta có thể làm được điều đó, vì các protocol như Uniswap, KyberSwap, 1inch Exchange, Curve Finance, Balancer Finance, PancakeSwap, Camelot Exchange, FlowX Finance v.v… đã thiết lập hết các phương thức giao dịch một cách tự động, giờ chúng ta chỉ việc bỏ tiền vào trong pool là xong, tự pool đó khớp lệnh với trader cho chúng ta (và nhờ đó ta thu được trading fee).

Tôi không rõ bên nào đã sáng chế ra AMM protocol đầu tiên, nhưng theo cái hiểu của tôi thì hình như đó là UniSwap với công thức nổi tiếng hay còn gọi là Constant Product:

xy=kx * y = k

Trong đó:

  • x là số lượng token A

  • y là số lượng token B

  • k là hằng một hằng số

Nếu biểu hiện về mặt đồ thị, ta sẽ có một đường cong thế này

product constant: x
product constant: x

Ngoài ra, AMM pool này sẽ thu một mức phí giao dịch (ký hiệu là r) về cho chính liquidity provider trong pool.

Khi user mua/bán token A và B vào trong pool này, số lượng token A và B (và do đó tỷ giá của 2 token này) sẽ thay đổi, nhưng hằng số k đó không được đổi.

Nếu user Tí bán token A vào pool:

  • Token A trong pool sẽ tăng lên một mức là dx

  • Token B trong pool giảm đi một mức là dy

  • Mức phí (r*dx) thu được từ Tí, cũng sẽ được bỏ ra khỏi pool để liquidity tự claim về.

  • Quan hệ của token A và B trong pool lúc này sẽ là:

    k=(x+dxrdx)(ydy)k=(x+ dx - rdx) (y-dy)

Ngược lại, nếu user Tèo bán token B vào pool → ta cũng sẽ ra quan hệ của token A và B trong pool lúc này là:

k=(xdx)(y+dyrdy)k = (x-dx)(y+dy -rdy)

Như vậy, ace có thể để ý ở 2 trường hợp mua token A bán token B và ngược lại ở trên, rốt cuộc tổng phí giao dịch mà ace thu được trong pool sẽ là:

Σfee=Σ(rdx)+Σ(rdy)\Sigma fee = \Sigma (rdx) + \Sigma (rdy)

Hay nói cách khác, Tổng hợp các mức phí giao dịch chính là nguồn thu nhập bị động của các liquidity provider khi họ đóng góp thanh khoản là các cặp token A và B vào trong AMM pool.

Ví dụ trực quan về cách hoạt động của AMM

Ấy ấy ace cứ bình tĩnh, như tôi đã hứa ở phần đầu bài viết là tôi sẽ giải thích về AMM và Liquidity Provider một cách “chân phương” nhất, đủ để ace hiểu bản chất của nó và xắn tay áo lên cày cấy thu hoạch ra tiền được luôn. Vì vậy bài viết này sẽ không quá đi sâu vào mấy vấn đề toán học phức tạp, chỉ xíu xiu thôi. Và dù gì thì gì ace phải bước qua được bước này để hiểu về Risk/Reward của cuộc chơi mà ta đang tham gia, bởi nếu không thì ace sẽ chỉ bị mất tiền mà thôi.

Tôi sẽ lý giải về cách hoạt động của công thức x*y=k bằng một thí dụ dễ hiểu nhất dưới đây:

Giả sử rằng trong 1 pool AMM có 2 dạng token là Apple (Táo) và Pear (Lê). Và mức phí giao dịch được thiết lập cho pool này là 0.3%.

Tại thời điểm ban đầu là A:

  • x là số lượng Táo trong pool (x = 100)

  • y là số lượng Lê trong pool (y = 200)

  • r là phí giao dịch (r = 0.3%)

  • Như vậy ta, tính được hằng số k:

    k=xy=100200=20,000k = x * y = 100 * 200 = 20,000
  • Tỷ giá hiện tại của Táo/Lê tại thời điểm A là:

    ApplePearRate(A)=y/x=200/100=2ApplePearRate(A) = y/x = 200 / 100 = 2

    Hay nói cách khác, trong pool này đang chấp nhận mệnh giá 1 Táo có thể đổi được 2 Lê.

Vào thời điểm A’, có một user bán 3 Táo vào trong pool để lấy Lê. Câu hỏi đặt ra là anh ta sẽ lấy ra được bao nhiêu token Lê trong giao dịch này, và tỷ giá Táo/Lê sau lệnh này sẽ ra sao:

  • x’ là số lượng Táo trong pool là:

    x=x+dxrdx=100+30.0033=102.99x' = x+dx-rdx = 100 + 3 - 0.003*3 = 102.99
  • Do hằng số k = 20,000 không đổi. Vậy số lượng y’ Lê trong pool sau giao dịch ở trên sẽ là:

    y=k/x=20,000/102.99=194.19y' = k / x' = 20,000 / 102.99 = 194.19
  • Như vậy user đó đã lấy ra được số lượng Lê là:

    dy=yy=200194.19=5.81dy=y-y'=200-194.19=5.81
  • Tỷ giá hiện tại của Táo/Lê tại thời điểm A’ là:

    ApplePearRate(A)=y/x=194.19/102.99=1.88ApplePearRate(A')=y'/x'=194.19/102.99=1.88

    Hay nói cách khác, trong pool này tại thời điểm A’, 1 Táo giờ chỉ còn có thể đổi được 1.88 Lê. Và liquidity provider thì thu được mức phí giao dịch là 0.009 Táo.

  • Ngoài ra, ace có thể để ý một điều là tỷ giá Táo/Lê thực sự mà user đó đã giao dịch là:

    RealApplePearRate(User)=dy/dx=5.81/3=1.936RealApplePearRate(User)=dy/dx=5.81/3=1.936

    Hay nói cách khác, giá thực tes mà user trên giao dịch là 1 Táo đổi lấy 1.936 Lê, chứ không còn là 1 Táo đổi lấy 2 Lê (sai lệch -3.16%). Độ sai lệch này có thuật ngữ gọi là Price Impact, đo lường về mối tương quan giữa độ lớn lệnh giao dịch của user với thanh khoản thực sự có trong pool. Thanh khoản mỏng mà độ lớn giao dịch lớn thì Price Impact lớn.

Như vậy, các giao dịch mua bán Táo/Lê sẽ đẩy điểm A giao động qua lại trên đường cong ở trên, và cứ mỗi lần A dịch chuyển sẽ đều mang lại cho liquidity provider của AMM pool đó một mức phí giao dịch.

Ngoài phần phí giao dịch đó ra, nếu protocol nào trả thêm các phần thưởng khác nữa (thường bằng chính token của protocol đó), thì ace làm liquidity provider của các AMM này còn hưởng double lợi nhuận nữa.

Ví dụ, nếu ace đóng góp thanh khoản cho pool SUI/USDC trên Cetus , khi di chuột vào con số APR (mức trả lợi tức) của pool, sẽ thấy mức lợi tức 103.04% được break down ra cụ thể thế này:

Break down lợi tức của pool SUI/USDC đến từ nguồn nào
Break down lợi tức của pool SUI/USDC đến từ nguồn nào

Và đây là thông số cụ thể của tôi khi “làm chuột bạch” đút $2,144 liquidity vào trong pool SUI/USDC của Cetus trong khoảng vài ngày gì đó tôi không nhớ rõ.

Nhưng các bạn có thể để ý kỹ các thông số sau:

  • Box vàng 1 mô tả rằng: tôi set cho khoảng giá của SUI/USDC chỉ được phép chạy từ 0.344436 tới 1.164268. Và trong khi mức giá market price của SUI đang là 0.552494

  • Box vàng 2 mô tả rằng: tôi đưa vào tổng thanh khoản là $2,144. Trong đó có 2,315.84 SUI và 865.37 USDC

  • Box vàng 3 hiển thị các mức fee (bằng SUI và USDC) kèm theo 2 đồng reward (CETUS và SUI) mà tôi nhận được tại thời điểm hiện tại.

Lời kết Episode 3

Đến đây, tôi xin kết thúc episode 3 này để ace nông dân về nghiền ngẫm thêm, hiểu về bản chất cuộc chơi và vị thế của mình ở đâu trong cuộc chơi này. Trong episode 4 tiếp theo, tôi sẽ hướng dẫn ace “thực chiến”, cụ thể từng bước một setup farm trên các AMM protocol này thế nào.

Nếu có gì thắc mắc hoặc cần bổ sung, góp ý, trao đổi về các kiến thức trong bài này, ace có thể truy cập vào các kênh sau:

  • Trang blog:
  • Nhóm Telegram:
  • Facebook Fanpage:
  • Twitter Hội trưởng:

* Tuyên bố miễn trừ trách nhiệm:* bài viết chỉ nhằm mục đích chia sẻ thông tin, kiến thức cá nhân từ người viết, không bao giờ được xem là lời khuyên đầu tư. Ace nên tham khảo ý kiến từ cố vấn tài chính của mình, và chỉ nên đầu tư với số tiền ace sẵn sàng mất.*

Subscribe to Hội Khuyến Nông 4.0
Receive the latest updates directly to your inbox.
Mint this entry as an NFT to add it to your collection.
Verification
This entry has been permanently stored onchain and signed by its creator.