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 →
LaunchLab cung cấp một bộ lệnh chặt chẽ: sáu lệnh dành cho người dùng cộng với một số lệnh quản trị. SDK bao bọc tất cả chúng; trang này ghi lại bề mặt thô cho các aggregator, công cụ giám sát và các chương trình cần CPI.

Danh sách lệnh

Sự phân chia “ExactIn/ExactOut” phản ánh SwapBaseInput / SwapBaseOutput của CPMM — trên chuỗi chúng là các bộ phân biệt lệnh riêng biệt với làm tròn hơi khác nhau. Lựa chọn đường dẫn tốt nghiệp. Mọi lệnh Initialize, InitializeV2InitializeWithToken2022 mới phải đặt migrate_type = 1 (CPSWAP). Bất kỳ nỗ lực nào để khởi tạo một pool mới bị ràng buộc AMM v4 sẽ trả về MigrateTypeNotMatch. amm_creator_fee_on chỉ chọn xem phí người tạo CPMM kết quả có áp dụng cho token trích dẫn hay cả hai token; nó không chọn chương trình đích. MigrateToAmm vẫn có thể gọi được cho một PoolState hiện có được khởi tạo với migrate_type = 0 trước khi áp dụng hạn chế này. Bản phát hành không viết lại trạng thái pool hiện có hoặc xóa lệnh kế thừa.

Initialize

Tạo một khởi chạy mới. Đối số
Tài khoản (tóm tắt) Điều kiện trước
  • quote_mint ∈ launch_config.allowed_quote_mints.
  • base_supply_graduation ≤ base_supply_max.
  • Các tham số phí vượt qua kiểm tra launch_config.max_*_fee_rate.
  • open_time ≥ now − slop (SDK áp dụng ≥ now; chương trình chấp nhận backdating nhẹ).
  • curve_type được công nhận.
Điều kiện sau
  • base_mintsupply = base_supply_max, tất cả trong base_vault.
  • base_mint.mint_authority = launch_authority, freeze_authority = None.
  • LaunchState được khởi tạo với status = Active, base_sold = 0, quote_reserve_real = 0.
  • quote_reserve_target được tính từ các tham số đường cong + base_supply_graduation + buy_numerator (xấp xỉ).
Lỗi phổ biếnInvalidQuoteMint, FeeRateTooHigh, InvalidCurveParams, MathOverflow.

Buy (biến chính tắc: BuyExactIn)

Người dùng cung cấp một quote_in cố định; đường cong tính toán base_out. Đối số
Tài khoản Điều kiện trước
  • launch_state.status == Active.
  • now ≥ open_time.
  • user_quote_ata.balance ≥ quote_in.
  • quote_in > 0.
Hiệu ứng
  1. Chia quote_in thành quote_in_after_fee và các phần phí.
  2. Newton-giải đường cong cho base_out được cung cấp bởi post-fee quote.
  3. require(base_out ≥ minimum_base_out) nếu không hoàn nguyên ExceededSlippage.
  4. Di chuyển quote_in người dùng → vault. Di chuyển base_out vault → người dùng.
  5. Cập nhật base_sold += base_out, quote_reserve_real += quote_in_after_fee × (lp_share / total_share).
  6. Cập nhật bộ đếm phí (protocol_fees_quote, creator_fees_quote).
  7. state_data.num_buys += 1.
  8. Nếu quote_reserve_real ≥ quote_reserve_target sau khi cập nhật, SDK thường xuyên chuỗi một lệnh Graduate trong cùng một giao dịch. Chương trình không tự động tốt nghiệp bên trong Buy — một Graduate tiếp theo là bắt buộc.

BuyExactOut

Người dùng chỉ định base_out chính xác; chương trình tính toán quote_in. Đối số
Các tài khoản giống như BuyExactIn. Sử dụng tích phân bậc hai dạng đóng (hoặc CPMM nghịch đảo, cho curve_type 1) thay vì lặp lại Newton.

Sell / SellExactIn / SellExactOut

Gương của Buy. Người dùng trả lại base_in cho đường cong và nhận quote_out. Phí được khấu trừ từ quote_out, vì vậy người dùng nhận được ít hơn các khoản thu nhập tích hợp thô. Điều kiện trước
  • user_base_ata.balance ≥ base_in.
  • Bán không thể đẩy base_sold dưới 0 (dư thừa với điều trên vì kế toán nhất quán).
  • Khởi chạy là Active.
Hiệu ứng — đối xứng với Buy. base_sold giảm, quote_reserve_real giảm. Phí vẫn tích lũy.

MigrateToAmm / MigrateToCpswap

Tốt nghiệp một khởi chạy thành một pool có thể giao dịch được khi đường cong đã đạt total_quote_fund_raising. Các khởi chạy mới chỉ dành cho CPMM. MigrateToAmm được giữ lại cho các pool hiện có có migrate_type được lưu trữ là 0. Ai ký
  • MigrateToAmmmigrate_to_amm_wallet được ghi lại trên GlobalConfig liên kết.
  • MigrateToCpswapmigrate_to_cpswap_wallet được ghi lại trên GlobalConfig liên kết.
Những ví này thường được giữ bởi crank tốt nghiệp do Raydium vận hành; trong thực tế tốt nghiệp diễn ra vài giây sau khi ngưỡng bị vượt qua, bất kể ai kích hoạt lần mua cuối cùng. Đối số MigrateToAmm lấy ba (chủ yếu là các tham số thị trường OpenBook mà chương trình chuyển tiếp tới AMM v4):
MigrateToCpswap không lấy gì. Hiệu ứng (chung cho cả hai)
  1. Xác minh pool_state.status == Migrate (tức là quote_reserve_target đã được đạt). Nếu không hoàn nguyên với PoolMigrated (trạng thái đã là Migrated) hoặc PoolFunding (vẫn đang tài trợ).
  2. Xác minh pool_state.migrate_type khớp với lệnh (0 cho AMM, 1 cho CPMM). Nếu không hoàn nguyên với MigrateTypeNotMatch.
  3. Tính toán các dự trữ sau tốt nghiệp:
    • base_amount_out = base_vault.amount − vesting_schedule.total_locked_amount
    • quote_amount_out = quote_vault.amount − quote_protocol_fee − migrate_fee − platform_fee
  4. CPI vào chương trình đích (AMM v4 Initialize2 hoặc CPMM InitializeWithPermission) với các dự trữ đó để tạo pool sau tốt nghiệp.
  5. Đối với các di chuyển CPMM được thực hiện sau nâng cấp 2026-08-17, kết hợp platform_scale + creator_scale thành một cổ phần LP bị khóa do nền tảng sở hữu và tạo ra nhiều nhất một NFT Fee Key cho platform_nft_wallet. Đốt phần còn lại burn_scale. Trước nâng cấp, creator_scale bị khóa riêng biệt và Fee Key của nó đã được gửi tới người tạo token. Các di chuyển lịch sử đã hoàn thành không được sửa đổi. Đối với tốt nghiệp AMM v4 kế thừa, việc xử lý LP tuân theo luồng hiện có của lệnh đó.
  6. Thu hồi base_mint.mint_authority (đặt thành None).
  7. Lật pool_state.status = Migrated, đặt vesting_schedule.start_time = block_time + cliff_period.
Điều kiện sauBuyExactIn, BuyExactOut, SellExactIn, SellExactOut sẽ từ chối từ thời điểm này trở đi với PoolMigrated. Pool AMM kết quả là chính tắc và giao dịch như bất kỳ pool AMM v4 / CPMM nào khác. Lỗi phổ biếnPoolFunding, PoolMigrated, MigrateTypeNotMatch, InvalidCpSwapConfig, MathOverflow.

Các tài khoản còn lại của di chuyển CPMM

Các máy khách xây dựng MigrateToCpswap phải sử dụng các chỉ số remaining_accounts cố định này: Lệnh yêu cầu ít nhất mười tài khoản còn lại trên đường dẫn được nâng cấp. Các tài khoản support-mint là đầu vào CPI chỉ đọc. Lấy cả hai địa chỉ ngay cả khi mint không có bản ghi hỗ trợ được khởi tạo. Các trình xây dựng cũ vẫn nối các tài khoản khóa người tạo hoặc bỏ qua chỉ số 8–9 phải được cập nhật.

Danh sách cho phép GlobalConfig nền tảng

PlatformConfig.restrict_global_config kiểm soát kiểm tra:
  • 0: nền tảng chấp nhận bất kỳ GlobalConfig nào hợp lệ; không cần tài khoản cho phép.
  • 1: Initialize, InitializeV2InitializeWithToken2022 phải bao gồm PlatformAllowConfig phù hợp ở bất kỳ đâu trong remaining_accounts.
Quản trị viên nền tảng tạo hoặc đóng PDA bằng CreatePlatformAllowConfigClosePlatformAllowConfig. Các hạt giống của nó là [b"platform_allow_config", platform_config, global_config]. Các lệnh PlatformGlobalAccess do quản trị viên quản lý trước đây và PDA đã bị loại bỏ.

CollectFee

Quét quản trị viên của phí giao dịch tích lũy của giao thức trên một khởi chạy duy nhất. Đối số — không có. Tài khoản Hiệu ứng — chuyển pool_state.quote_protocol_fee từ quote_vault tới recipient_token_account, sau đó không bộ đếm. Có thể gọi bất kỳ lúc nào sau lần mua đầu tiên.

CollectMigrateFee

Quét quản trị viên của phí di chuyển tích lũy tại tốt nghiệp. Hình dạng tài khoản giống như CollectFee với migrate_fee_owner là người ký (thay vì protocol_fee_owner) và pool_state.migrate_fee là bộ đếm được thoát ra.

ClaimCreatorFee

Quét mỗi người tạo của phí người tạo tích lũy trên mọi khởi chạy mà người tạo sở hữu sử dụng cùng một quote mint. Thoát ra khỏi vault phí mỗi người tạo, không phải vault mỗi pool. Đối số — không có. Tài khoản Hiệu ứng — chuyển toàn bộ số dư của creator_fee_vault tới recipient_token_account. Hoàn nguyên với kiểm tra yêu cầu lớn hơn không nếu vault trống.

ClaimPlatformFee

Quét mỗi nền tảng thoát ra khỏi vault trích dẫn của khởi chạy trực tiếp. Sử dụng cái này khi một nền tảng muốn yêu cầu phần của nó cho một khởi chạy cụ thể mà không cần đi qua vault nền tảng tổng hợp. Đối số — không có. Tài khoản Hiệu ứng — chuyển pool_state.platform_fee từ quote_vault tới recipient_token_account, không bộ đếm.

ClaimPlatformFeeFromVault

Quét tổng hợp mỗi nền tảng. Thoát ra khỏi vault phí mỗi quote-mint của nền tảng tích lũy phí từ mọi khởi chạy được định tuyến qua nền tảng. Đối số — không có. Tài khoản Hiệu ứng — chuyển toàn bộ số dư của platform_fee_vault tới recipient_token_account. Hoàn nguyên nếu vault trống.

Các lệnh vesting và cấu hình nền tảng

Những cái này được ghi lại trên các trang chuyên dụng vì mỗi cái có mô hình trạng thái riêng:

Ma trận thay đổi trạng thái

Tiếp theo đi đâu

Nguồn: