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 →
AMM v4 nặng về tài khoản hơn đáng kể so với CPMM hoặc CLMM vì mọi thao tác đều chạm vào trạng thái OpenBook. Trang này sắp xếp các tài khoản thành các phần “do pool sở hữu” và “do OpenBook sở hữu” để bạn có thể nhanh chóng nhìn thấy mỗi bên là gì.
Danh sách tài khoản
Một pool AMM v4 liên kết tới chính xác một thị trường OpenBook tại lúc tạo. Hình ảnh trực tiếp đầy đủ là:| Danh mục | Tài khoản | Chủ sở hữu | Vai trò |
|---|---|---|---|
| Pool | AmmInfo | Chương trình AMM v4 | Trạng thái pool: phí tích luỹ, trạng thái, tham chiếu tới vaults và thị trường OpenBook. |
| Pool | amm_authority | Chương trình AMM v4 | PDA do chương trình sở hữu ký các phép di chuyển vault. Chia sẻ giữa tất cả các pool AMM v4. |
| Pool | amm_open_orders | OpenBook | Tài khoản OpenOrders OpenBook của pool cho thị trường này. |
| Pool | amm_target_orders | Chương trình AMM v4 | Lưới các lệnh giới hạn mục tiêu của pool để đăng lại lên OpenBook. |
| Pool | pool_coin_token_account | SPL Token | Vault phía coin của pool (ATA của amm_authority). |
| Pool | pool_pc_token_account | SPL Token | Vault phía pc của pool. |
| Pool | lp_mint | SPL Token | Mint LP có thể hoán đổi. |
| Pool | pool_withdraw_queue | Chương trình AMM v4 | Hàng đợi cũ cho rút tiền trì hoãn; giữ độ dài bằng không. |
| Pool | pool_temp_lp | Chương trình AMM v4 | Tài khoản LP phụ trợ được sử dụng trong Initialize. |
| Market (OpenBook) | serum_market | OpenBook | Thị trường chính nó (mint cơ sở/trích dẫn, vault signer, v.v.). |
| Market | serum_bids, serum_asks | OpenBook | Các hàng đợi giá mua và giá bán. |
| Market | serum_event_queue | OpenBook | Các sự kiện đang chờ xử lý (lần khớp, hủy). |
| Market | serum_coin_vault, serum_pc_vault | SPL Token | Các vault cấp thị trường của OpenBook. |
| Market | serum_vault_signer | OpenBook | PDA cấp thị trường ký các phép di chuyển serum_*_vault. |
AmmInfo
Tài khoản trạng thái gốc của pool. Kích thước lớn (≈ 752 byte) vì nó mang cả tham chiếu pool và OpenBook nội tuyến.
coin_vault,pc_vault— các vault SPL Token của pool.coinlàtoken_0theo quy ước Serum/OpenBook (cơ sở),pclàtoken_1(trích dẫn).coin_decimals,pc_decimals— khớp với các mint.open_orders,target_orders,market— phải được chuyển tới mọi lệnh swap/deposit/withdraw.fees.swap_fee_numerator / swap_fee_denominator— phí giao dịch kết hợp. Mặc định là25 / 10_000 = 0.25%.status— bitmask kiểm soát các thao tác. Có thể thiết lập bởi quản trị viên thông quaAdminSetStatus.state_data.need_take_pnl_*— dельта giữa phí tích luỹ brutto và những gì đã được xử lý.TakePnllàm cho những cái này bằng không.
Kết nối OpenBook
Không còn hoạt động. Các pool AMM v4 không còn chia sẻ thanh khoản tới OpenBook — lưới lệnh giới hạn đã bị vô hiệu hóa. Các tài khoản OpenBook được mô tả trong phần này vẫn nằm trên
AmmInfo của mỗi pool và vẫn được xác thực bởi các điểm cuối swap V1 (và bởi Initialize, Deposit, Withdraw) để tương thích ngược, nhưng trạng thái sách mà chúng tham chiếu là trống trong thực tế. Sử dụng các điểm cuối swap V2 (SwapBaseInV2 / SwapBaseOutV2) bỏ qua các tài khoản này hoàn toàn và đại diện cho con đường thực thi chính tắc ngày nay.amm_open_orders của AMM là một tài khoản do OpenBook sở hữu giữ trạng thái lệnh giới hạn của pool trên thị trường này: các lệnh hoạt động, số dư đã thanh toán, người giới thiệu, v.v. amm_target_orders là phía AMM: nó giữ lưới dự định của AMM (giá/kích thước cho mỗi khe lệnh) để chương trình có thể so sánh rẻ với những gì hiện đang được đăng và đặt / hủy chênh lệch.
Các PDA Authority
Có chính xác một PDAamm_authority cho toàn bộ chương trình AMM v4. Seed của nó là tầm thường (["amm authority"]) và bump của nó được lưu trữ trên mỗi AmmInfo. Quyền này ký tất cả các phép di chuyển token cho tất cả các pool AMM v4.
amm_authority ở trên thực sự bao gồm cả hai trong thiết kế của chương trình này; các phiên bản khác nhau sử dụng suy dẫn khác nhau, vì vậy hãy kiểm tra AmmInfo.nonce của pool cụ thể trong mã).
Vaults
Các vault SPL Token của pool là những tài khoản token tiêu chuẩn cóowner là amm_authority. Không phải ATA — địa chỉ của chúng là những PDA cụ thể được suy dẫn tại Initialize với các seed ["amm_associated_seed", coin_mint_or_pc_mint, market, amm_id]. Địa chỉ được lưu trữ trên AmmInfo; suy dẫn là một điều tò mò một lần.
Token-2022 không được hỗ trợ. Chương trình hardcode ID chương trình SPL Token cho tất cả các phép di chuyển vault. Cố gắng liên kết một pool AMM v4 tới một mint Token-2022 sẽ thất bại tại Initialize.
LP mint
Một mint SPL Token cổ điển có quyền làamm_authority. Tổng cung cấp theo dõi quyền sở hữu LP của pool; đốt LP trả lại token từ cả hai vault theo tỷ lệ. Vì AMM v4 có từ trước CPMM, không có lp_supply mirror trong trạng thái pool — đọc cung cấp trên chuỗi của mint trực tiếp.
Bitmask trạng thái
AmmInfo.status kiểm soát các thao tác. Các bit (vị trí có thể khác nhau giữa các phiên bản chương trình — xác nhận qua nguồn):
| Bit | Cờ | Hiệu ứng |
|---|---|---|
| 0 | SWAP_DISABLED | Swap* từ chối. |
| 1 | DEPOSIT_DISABLED | Deposit từ chối. |
| 2 | WITHDRAW_DISABLED | Withdraw từ chối. |
| 3 | CLMM_LIKE_MIGRATE | Cờ di chuyển được sử dụng bởi ops. |
AdminCancelOrders, AdminSetParams, v.v.
Quan sát / oracle
AMM v4 không có tài khoản quan sát chuyên dụng. Các giao thức khác cần TWAP trên chuỗi thường tiêu thụ các đường sách OpenBook gián tiếp hoặc đọc ngoài chuỗi. Nếu bạn cần Raydium TWAP với hỗ trợ chương trình, hãy sử dụng CPMM hoặc CLMM.Suy dẫn các tài khoản của một pool từ đầu
Vì AMM v4 không được thiết kế cho các PDA xác định theo cặp (nó trước quy ước Solana đó),amm_id chính tắc là một keypair được seeded được suy dẫn với:
amm_open_orders, amm_target_orders, amm_withdraw_queue, pool_temp_lp, pool_coin_token_account, pool_pc_token_account, và lp_mint. SDK và API tính toán trước những cái này cho bạn; xem raydium-sdk-v2’s Liquidity.getAssociatedPoolKeys.
Thực tế, bạn đọc toàn bộ bộ tài khoản của pool từ GET https://api-v3.raydium.io/pools/info/ids?ids=<POOL_ID> hoặc từ SDK. Suy dẫn tay hiếm khi cần thiết.
Tham khảo nhanh vòng đời
| Sự kiện | Tài khoản được tạo | Tài khoản bị xóa |
|---|---|---|
Initialize2 | amm_info, amm_open_orders, amm_target_orders, vaults, lp_mint, pool_withdraw_queue, pool_temp_lp | — |
Deposit | — (có thể tạo ATA LP của người dùng) | — |
Withdraw | — | — |
SwapBaseIn / SwapBaseOut | — (có thể tạo ATA của người dùng) | — |
TakePnl | — | — |
MonitorStep (crank) | — | — |
AmmInfo vẫn ở lại.
Đọc ở đâu
- Toán học và số học phí:
products/amm-v4/math. - Phân chia phí và cách nó so sánh với CPMM/CLMM:
products/amm-v4/fees. - Danh sách tài khoản lệnh:
products/amm-v4/instructions. - Suy dẫn tài khoản OpenBook: Tài liệu chương trình OpenBook (
github.com/openbook-dex/program).
- Chương trình Raydium AMM —
raydium-io/raydium-amm reference/program-addressescho các ID chương trình chính tắc- OpenBook / Serum protocol cho các tài khoản đối tác


