이 페이지는 AI 자동 번역입니다. 모든 내용은 영문판을 기준으로 합니다.영문판 보기 →
버전 배너. 모든 데모는 Solana mainnet-beta에 대해
@raydium-io/raydium-sdk-v2@0.2.64-alpha를 대상으로 하며, 2026-09-09 검증됨 — 아래의 모든 빌더 이름, 매개변수 이름 및 매개변수 타입은 해당 릴리스의 소스 및 raydium-sdk-V2-demo/src/amm에 대해 확인되었습니다. 프로그램 ID: 675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8 (reference/program-addresses 참조).대부분의 첫 통합을 괴롭히는 두 가지 함정: computeAmountOut의 slippage는 Percent가 아닌 순수 숫자입니다 (0.005 = 0.5%); 그리고 liquidity.swap은 inputMint를 base58 문자열로 필수로 요구합니다.새 풀 생성은 여기에 표시되지 않습니다. Raydium UI는 더 이상 AMM v4 풀 생성을 제공하지 않으며, 새 쌍은 기본적으로 CPMM으로 설정됩니다. AMM v4 프로그램 자체는 여전히 온체인에서
Initialize2를 수락합니다. 단지 권장되는 경로가 아닐 뿐입니다. 아래의 데모는 모든 통합자가 여전히 필요로 하는 라이브 풀 작업을 다룹니다: 스왑, 입금, 출금.설정
ID로 풀 가져오기
poolKeys는 명령어 빌더가 사용하는 구조체입니다. 프로그램이 예상하는 순서대로 모든 AMM v4 계정을 포함하며, 현재 프로그램이 위치적으로 수락하지만 더 이상 읽지 않는 레거시 마켓 필드도 포함합니다.
스왑 (기본 입력)
스왑 (기본 출력)
유동성 추가
fixedSide: "a"는 SDK에 정확한 amountInA를 제공했으며 amountInB는 최대 maxAnotherAmount여야 함을 알립니다. 비례 수학은 누적된 PnL을 뺀 금고 잔액에서 실행됩니다 — 더 이상 먼저 정산할 온책 구성 요소가 없습니다.
유동성 제거
계산 단위 / 우선 수수료 조정
OpenBook 제거 이후 AMM v4 스왑은 더 이상 마켓 상태를 검증하지 않으므로, V1SwapBaseIn은 이전보다 훨씬 저렴합니다 — 그리고 SwapBaseInV2 (8개 계정, 마켓 플레이스홀더 없음)는 더욱 저렴합니다. 역사적 수치에서 예산을 책정하기보다는 자신의 경로를 측정하고 항상 명시적 계산 단위 제한을 전달하세요:
computeBudgetConfig를 생략하면 SDK가 여전히 자체 기본값을 사용할 수 있습니다. 반환된 transaction을 검사하여 확인하세요. integration-guides/priority-fee-tuning을 참조하세요.
직접 Rust CPI
자신의 Anchor 프로그램에서 AMM v4로 CPI해야 하는 경우,SwapBaseIn의 계정 목록을 그대로 모델링해야 합니다. 최소 스케치:
Instruction을 사용합니다.
위의 CPI 스케치는 기존 트랜잭션을 읽기/재현하기 위해 레거시 v1
SwapBaseIn 레이아웃 (태그 9, 17개 계정)을 사용합니다. 2026-07 업그레이드 이후 마켓 계정은 수락되지만 무시됩니다. 새 코드의 경우 SwapBaseInV2 / SwapBaseOutV2 (태그 16 / 17)를 선호하세요. 이는 마켓 계정 (및 amm_open_orders)을 완전히 제거합니다 — 8개 계정만 전달하세요: token_program, amm, amm_authority, 두 개의 풀 금고, 두 개의 사용자 토큰 계정, 및 user_owner.함정
- v1 스왑의 잘못된 계정 수. 레거시
SwapBaseIn/SwapBaseOut은 여전히 전체 17개 계정 (또는 18개 계정) 목록을 필요로 합니다 — 불일치하는 수는WrongAccountsNumber로 되돌립니다. 마켓 계정의 내용은 더 이상 검증되지 않지만 여전히 해당 슬롯을 차지해야 합니다. V2 진입점을 선호하여 이를 피하세요. - 원본 금고 잔액 읽기. 예약금은 이제 금고 전용입니다; 누적된 PnL을 뺍니다 (
need_take_pnl_*). SDK 견적 또는api-v3.raydium.io/pools/info/ids가 이를 처리합니다. - 제거된 명령어 호출.
MonitorStep,MigrateToOpenBook,WithdrawSrm,SimulateInfo,AdminCancelOrders, 및 레거시Initialize/PreInitialize는 이제 되돌립니다. 풀 생성을 위해Initialize2를 사용하세요; 호출할 크랭크가 없습니다. - Token-2022 민트. 지원되지 않습니다. AMM v4 풀은 Token-2022 민트에 대해 생성될 수 없습니다; 모든 Token-2022 쌍은 CPMM 또는 CLMM에 있어야 합니다.
다음 단계
products/amm-v4/instructions— 이 데모 뒤의 명령어 수준 표면.user-flows/migrate-amm-v4-to-cpmm— 마이그레이션을 고려 중인 LP의 경우.integration-guides/priority-fee-tuning— 무거운 AMM v4 스왑을 위한 우선 수수료 크기 조정.

