Skip to main content
Trang này được dịch tự động bằng AI. Phiên bản tiếng Anh là bản chính thức.Xem bản tiếng Anh →

Tầng phí duy nhất được công bố

Khác với CPMM và CLMM, AMM v4 không có tài khoản AmmConfig. Phí được lưu trữ trực tiếp trên struct AmmInfo.fees của mỗi pool và được cố định tại thời điểm tạo pool. Các giá trị mặc định áp dụng cho hầu hết các pool AMM v4 đang hoạt động: Lưu ý rằng pnl_numerator / pnl_denominator là một phân số của phí swap, không phải của khối lượng giao dịch — đây là một sai hiểu phổ biến. Phần của LP là phần bù (88% của phí = 0,22% khối lượng) và được tính ngầm; không có tử số “phần LP” riêng biệt. Một số pool sớm được tạo với các tử số khác nhau; luôn đọc AmmInfo.fees trước khi trích dẫn. Không có phí quỹkhông có phí tạo pool: đây là những phát minh của CPMM/CLMM không tồn tại trong mô hình phí gốc của AMM v4.

Cách tính chia phí

Trên mỗi swap, pool tính phí giao dịch brutto từ số tiền đầu vào, sau đó phân bổ:
  • lp_portion được giữ lại trong vault và góp phần vào k tiếp theo. LP thu được nó bằng cách đốt token LP sau này.
  • pnl_portion tăng AmmInfo.state_data.need_take_pnl_coin hoặc need_take_pnl_pc tùy thuộc vào phía nào là đầu vào của swap.
Cùng một thủ thuật bảo toàn bất biến như CPMM: số tiền PnL vật lý nằm trong vault nhưng bị trừ khỏi dự trữ dùng trong đường cong, vì vậy TakePnl di chuyển token mà không thay đổi giá.

PnL từ OpenBook (lịch sử)

Đã loại bỏ. Tích hợp OpenBook đã bị loại bỏ khỏi chương trình, vì vậy luồng PnL thứ hai được mô tả trong phần này không còn được tạo ra. Các bộ đếm total_pnl_{coin,pc} hiện là các trường không dùng nữa — chúng mang các giá trị lịch sử đã đóng băng và không bao giờ được cập nhật. Đường dẫn phí giao thức 0,03% (ở trên) không bị ảnh hưởng và vẫn hoạt động.
Trước đây, AMM v4 có một luồng doanh thu giống phí thứ hai: khi các lệnh hạn chế của nó trên OpenBook được thực hiện, pool có thể ở phía taker của lệnh và kiếm hoặc trả spread maker/taker của thị trường. Các sự kiện PnL này được giải quyết vào vault pool trong MonitorStep và chương trình ghi chúng vào state_data.total_pnl_{coin,pc} dưới dạng các bộ đếm thông tin.
  • Khi lưới được đăng ký của pool được hiệu chỉnh chính xác xung quanh giá đường cong, các lệnh OpenBook có xu hướng tích cực về phí cho pool — AMM đang tạo thị trường hiệu quả trên OpenBook và kiếm được chiết khấu maker.
  • Khi OpenBook tạm dừng hoặc hàng đợi sự kiện đầy, pool có thể nằm trên các lệnh cũ được thực hiện với giá không thuận lợi, tạo ra PnL âm. Sự liên kết hoạt động này là một trong những động lực để chuyển đi khỏi thiết kế lai.
PnL OpenBook này không phải giống với phí giao thức 0,03%. PnL OpenBook làm tăng dự trữ pool trực tiếp (có lợi cho LP + giao thức tỷ lệ với chia phí), trong khi phí giao thức 0,03% được gắn thẻ cụ thể để admin thu thập. Với phía OpenBook tắt, lần duy nhất tích lũy phí ngày nay là 0,25% trên swap AMM và chia 22/3 của nó.

Thu thập

Admin (multisig Raydium) gọi WithdrawPnl để quét need_take_pnl_* vào các tài khoản “chủ sở hữu PnL” cấp pool được cấu hình trên AmmConfig của chương trình (một config khác, có phạm vi chương trình — không phải AmmConfig kiểu CPMM cho mỗi pool). Quét:
  1. Chuyển need_take_pnl_coin / need_take_pnl_pc từ vault pool đến đích PnL.
  2. Đặt lại các bộ đếm về không.
Không còn bước giải quyết OpenBook. Nếu số dư vault không đủ để bao gồm PnL tích lũy, lệnh sẽ trả về TakePnlError trực tiếp. Hoạt động không di chuyển đường cong — LP không nên thấy bất kỳ thay đổi giá nào trên lệnh gọi WithdrawPnl. Lưu ý bố cục tài khoản WithdrawPnl đã thay đổi trong bản nâng cấp 2026-07 (xem instructions).

Hoàn lại phí LP

Không có lệnh “thu thập phí LP” chuyên dụng. Phí LP tích lũy trong vault và làm tăng k theo thời gian; LP nhận được chúng bằng cách đốt token LP qua Withdraw. Giá trị của token LP tăng đơn điệu khi (coin_reserve_effective, pc_reserve_effective) tăng.

Hình ảnh: 1.000 USDC khối lượng đi đâu

Trên swap nặng USDC là $1.000 so với pool có tham số mặc định:
So sánh với CPMM AmmConfig[0] (tầng 0,25%, không có phí tạo): LP nhận $2,10, giao thức $0,30, quỹ $0,10. CPMM giới thiệu dòng quỹ bằng cách cắt nó từ những gì sẽ là phần của LP trong tầng tương đương của AMM v4.

Bảng so sánh

Ma trận đầy đủ trong reference/fee-comparison.

Ghi chú cho người tích hợp

  • Báo giá. Lấy AmmInfo qua SDK hoặc api-v3.raydium.io/pools/info/ids. Dự trữ hiện chỉ là vault, vì vậy bạn có thể báo giá trực tiếp so với số dư vault — chỉ cần nhớ trừ need_take_pnl_* (PnL tích lũy được giữ trong vault nhưng loại trừ khỏi đường cong).
  • Tham số phí cũ. Về nguyên tắc SetParams có thể thay đổi swap_fee_numerator, nhưng trên thực tế multisig Raydium chưa thay đổi mặc định cho bất kỳ pool nào đang hoạt động. Tuy nhiên, luôn đọc từ trạng thái on-chain thay vì hardcode.
  • Không có phần thưởng. AMM v4 không hỗ trợ phát hành phần thưởng trên pool. Các farm hệ sinh thái cũ (Farm v3 / v5 / v6) là tương đương của lớp staking — xem products/farm-staking.

Tiếp theo

Nguồn: