Chuyển đến nội dung chính

Documentation Index

Fetch the complete documentation index at: https://docs.raydium.io/llms.txt

Use this file to discover all available pages before exploring further.

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óm tắt một đoạn

CPMM — Constant Product Market Maker, chính thức được gọi là “Standard AMM” trong giao diện Raydium — là một bản triển khai AMM kinh điển x · y = k trên Solana. Không OpenBook order book, không dư thừa từ Serum, không phụ thuộc bên ngoài ngoài SPL Token và Token-2022. Mỗi pool là một tập hợp ba thành phần (hai vault token, một LP mint) được quản lý bởi một PDA do chương trình sở hữu, được định giá bằng tích của số dư vault. Đây là AMM mà Raydium khuyên dùng cho tất cả các pool constant-product mới, và nó là mục tiêu mặc định của endpoint /pools/create và luồng “Create pool” trên web UI.

CPMM mang lại gì

  • Token-2022 với danh sách cho phép extension được kiểm chứng. CPMM không chấp nhận các mint Token-2022 tùy ý. Chương trình thực thi danh sách trắng các extension an toàn khi tạo pool: TransferFeeConfig, MetadataPointer, TokenMetadata, InterestBearingConfig, và ScaledUiAmount. Bất kỳ extension nào khác trên mint sẽ khiến Initialize bị từ chối với NotSupportMint — trừ khi bản thân mint nằm trong một danh sách mint cho phép được mã hóa cứng nhỏ được duy trì trong chương trình (được sử dụng để onboard các mint cụ thể theo từng trường hợp). Phí chuyển giao cụ thể ảnh hưởng đến toán học swap và được áp dụng ở bên đúng của giao dịch — xem algorithms/token-2022-transfer-fees.
  • Phí dự đoán được. Mỗi pool tham chiếu một AmmConfig được chọn khi tạo. Config này mang theo tỷ lệ phí giao dịch (chia giữa LP, giao thức và quỹ) và một tỷ lệ phí người tạo riêng biệt, độc lập. Phí người tạo là bucket riêng của nó — không bao giờ là một phần của phí giao dịch. Pool chọn từng phí khi tạo. Các giá trị mặc định và toán học chia tách đầy đủ nằm trong products/cpmm/fees.
  • TWAP trên chuỗi thông qua ring buffer quan sát. Mỗi swap cập nhật một tài khoản observation. Các hợp đồng bên ngoài có thể đọc một quan sát giá tích lũy để tính TWAP mà không cần oracle tùy chỉnh.
  • Bố cục tài khoản phẳng. Một pool được mô tả đầy đủ bởi sáu PDA (authority, pool state, LP mint, hai vault, observation). Không có tài khoản OpenBook cho mỗi thị trường, không có event queue, không có request queue. Giao dịch rẻ hơn cả về compute và số lượng tài khoản so với AMM v4.
  • Tương thích với burn-and-earn. Token LP có thể bị khóa theo chương trình LP Lock để người tạo pool có thể tiếp tục nhận phí mà không giữ lại quyền rút thanh khoản. Được sử dụng cho các bản phát hành thanh khoản “vĩnh viễn”.

CPMM không phải

  • Không tập trung. Thanh khoản được phân tán đều trên toàn bộ phạm vi giá, giống như Uniswap v2. Nếu bạn cần tạo lập thị trường hiệu quả về vốn — tức là tập trung thanh khoản gần giá hiện tại — hãy sử dụng CLMM.
  • Không lai. Không giống như AMM v4, các pool CPMM không đặt các lệnh yên tĩnh trên thị trường OpenBook. Định tuyến qua các pool CPMM xảy ra thông qua chương trình AMM Routing, không phải thông qua CLOB.
  • Không có thể khởi chạy cho các đường cong tùy ý. Đường cong được mã hóa cứng thành constant product. Nếu bạn muốn đường cong bonding cho bản phát hành token, hãy sử dụng LaunchLab, chương trình này nâng cấp lên pool CPMM khi nó được lấp đầy.

Cách CPMM khác biệt với AMM v4

Khía cạnhAMM v4CPMM
Đường congConstant productConstant product
Phụ thuộc OpenBookKhông hoạt động (ban đầu đặt lệnh trên thị trường OpenBook; tích hợp bị vô hiệu hóa)Không
Hỗ trợ Token-2022Không (chỉ SPL Token) (bao gồm phí chuyển giao)
Số lượng tài khoản mỗi swap V2~9~11
Đơn vị tính toán mỗi swap~80k–120k (đường dẫn V2)~60k–100k
Oracle TWAPKhông có tài khoản oracle gốcRing buffer observation
Tạo pool mới ngày hôm nayKhông phải mặc định (chương trình vẫn chấp nhận)Mặc định
Trạng tháiHoạt động đầy đủHoạt động, được khuyến nghị
Một xử lý sâu hơn về câu chuyện di chuyển nằm trong protocol-overview/versions-and-migration.

Mô hình tư duy

Một pool CPMM là một đối tượng do chương trình sở hữu giữ ba số dư: vault0 (token0), vault1 (token1), và cung cấp của LP mint. Cung cấp LP mint theo dõi yêu cầu của người gửi tiền trên pool; các vault token giữ tài sản thực tế. Mọi thứ khác — PDA authority, tài khoản observation, con trỏ fee-config — là công việc kế toán để làm cho mối quan hệ ba biến này có thể giao dịch, thu thập phí và có thể quan sát. Mỗi hoạt động hướng đến người dùng sụp đổ thành một chuyển đổi trạng thái được xác định rõ:
  • Gửi tiền: chuyển token0 và token1 vào, mint LP cho người dùng, không thay đổi giá.
  • Rút tiền: đốt LP từ người dùng, chuyển token0 và token1 ra theo tỷ lệ hiện tại của pool, không thay đổi giá.
  • Swap: chuyển một token vào, chuyển cái khác ra; tỷ lệ di chuyển dọc theo đường cong x · y = k (trừ phí); tài khoản observation lấy mẫu giá mới.
Thu thập phí (CollectProtocolFee, CollectFundFee) là một giao dịch riêng biệt được ký bởi authority tương ứng; nó không xảy ra ở mỗi swap. Toán học được giải thích trong products/cpmm/math và tập hợp hướng dẫn trong products/cpmm/instructions.

Khi nào nên chọn CPMM

Chọn CPMM khi:
  • Bạn đang phát hành token mới hoặc cặp mới và không có quan điểm mạnh về phạm vi nào sẽ thấy giao dịch.
  • Một hoặc cả hai token sử dụng extension Token-2022.
  • Bạn muốn một mô hình phí đơn giản cho mỗi giao dịch hơn một mô hình động dựa trên tick.
  • Bạn đang tích hợp và muốn định tuyến qua Raydium mà không phải chịu sự phức tạp của các vị trí CLMM.
Ưu tiên CLMM khi:
  • Cặp ổn định hoặc tương quan cao (stablecoin-stablecoin, LST-SOL) và bạn muốn tập trung thanh khoản xung quanh parity.
  • Bạn là một đội tạo lập thị trường sẵn sàng quản lý các phạm vi một cách tích cực để có APR phí cao hơn trên mỗi đô la TVL.
Ưu tiên AMM v4 khi:
  • Bạn đang di chuyển công cụ AMM v4 hiện có và không tạo pool mới.
(Lưu ý: Chế độ hybrid OpenBook của AMM v4 không còn hoạt động nữa — đó không phải là lý do để chọn AMM v4 nữa.)

Bước tiếp theo

  • Accounts — sáu PDA của pool CPMM và cách rút ra chúng.
  • MathSwapBaseInput vs SwapBaseOutput, xử lý phí chuyển Token-2022, cập nhật observation.
  • Instructions — bề mặt hướng dẫn hoàn chỉnh với danh sách tài khoản.
  • Fees — chia tách phí bốn chiều và cách thu thập.
  • Code demos — đoạn mã TypeScript có thể chạy được cho create / swap / deposit / withdraw.
Nguồn: