이 페이지는 AI 자동 번역입니다. 모든 내용은 영문판을 기준으로 합니다.영문판 보기 →
버전 정보
- SDK:
@raydium-io/raydium-sdk-v2@0.2.42-alpha - 클러스터: Solana
mainnet-beta - Stable AMM 프로그램 ID:
5quBtoiQqxF9Jv6KYKctB59NT3gtJD2Y65kdnB1Uev3h(reference/program-addresses참조) - 마지막 검증: 2026-04
liquidity 모듈은 Stable AMM 풀을 기본적으로 지원합니다. Stable 풀은 ApiV3PoolInfoStandardItem에서 version: 5 (또는 pooltype: "StablePool")로 표시되며, AMM v4 (version: 4) 상수곱 풀과 동일한 addLiquidity / removeLiquidity / 스왑 헬퍼를 사용합니다. SDK가 변형을 감지하고 올바른 명령어를 자동으로 생성합니다. 오프체인 stable-curve 수학은 src/raydium/liquidity/stable.ts에 있습니다.설정
Stable 풀 식별하기
ApiV3PoolInfoStandardItem의 두 가지 동등한 신호:
version: 4, 상수곱)와 Stable AMM (version: 5) 모두 SDK의 동일한 LiquidityModule API를 통해 흐릅니다. 내부적으로 모듈은 다음으로 디스패치합니다:
- v4 풀의 경우
InstructionType.AmmV4AddLiquidity/AmmV4RemoveLiquidity - v5 (Stable) 풀의 경우
InstructionType.AmmV5AddLiquidity/AmmV5RemoveLiquidity
programId (풀 키와 함께 반환됨)는 SDK에 어느 프로그램으로 CPI할지 알려줍니다. 하드코딩할 필요가 없습니다.
민트 쌍으로 풀 찾기
Stable 풀을 통한 스왑
LiquidityModule.swap 흐름은 v4 풀과 동일한 형태입니다. v5 풀 객체를 전달하기만 하면 됩니다:
programId를 읽고 Stable AMM 프로그램으로 디스패치합니다. 특별한 programId 인수가 필요하지 않습니다.
유동성 추가 및 제거
addLiquidity와 removeLiquidity는 v4 및 v5 풀에서 동일하게 작동합니다:
pooltype.includes("StablePool")이 참이므로 InstructionType.AmmV5AddLiquidity를 생성합니다. 해당하는 removeLiquidity 흐름은 대칭입니다. lpAmount와 각 측면에서 수락할 최소 금액을 입력합니다.
오프체인 견적 헬퍼 (stable.ts)
서버 측 견적 또는 백테스팅의 경우 SDK는 기본 stable-curve 수학을 노출합니다:ModelDataInfo는 initLayout()에 의해 한 번 가져와지고 raydium.liquidity.stableLayout에 캐시됩니다. 현재 준비금 (x, y)을 전달하면 헬퍼는 조회 테이블을 이진 검색하고 두 개의 인접한 DataElement 행 사이를 선형 보간하여 계산합니다. 기본 알고리즘은 products/stable/math를 참조하세요.
AMM Routing을 통한 라우팅 (멀티홉 / 최적 가격)
직접 거래소를 선택하지 않으려면 AMM Routing 프로그램이 모든 Raydium AMM (v4 / CPMM / CLMM / Stable)을 고려하고 최적의 조합을 통해 라우팅합니다:권장사항
- 최종 사용자 스왑의 경우
tradeV2라우팅 흐름을 선호합니다. Stable을 포함한 모든 Raydium 풀 유형을 처리합니다. - 풀별 작업의 경우 (알려진 Stable 풀에서 LP 추가 / 제거),
LiquidityModule을 직접 사용합니다. v5 풀을 자동으로 감지합니다. - 오프체인 견적 / 분석의 경우
initLayout()후getStablePrice/getDyByDxBaseIn/getDxByDyBaseIn을 호출합니다. 모델 데이터가 캐시된 후 견적당 RPC 트래픽이 없습니다. - 원시
SwapBaseIn명령어를 직접 인코딩하지 마세요. 2026-06-22 업그레이드는 죽은 OpenBook 계정을 제거했으므로 새로운 스왑 레이아웃은 9개 계정을 사용합니다 (이전 18개 계정 레이아웃은 하위 호환성을 위해 여전히 파싱됨).Deposit은 이제 12개 계정입니다 (이전 14개 호환),Withdraw12개 (이전 21/22개 호환),WithdrawPnl10개이며 호환성 경로가 없습니다. SDK의 사전 구성된 헬퍼는 올바른 레이아웃과 순서를 선택합니다. 직접 구현하는 것은 오류가 발생하기 쉽습니다. 전체 계정 테이블은products/stable/instructions를 참조하세요.
다음 단계
- Math — 조회 테이블 보간이 어떻게 작동하는지.
- Instructions — 전체 명령어 참조.
- AMM Routing — AMM v4, CPMM, CLMM, Stable 전체의 멀티풀 라우팅.
raydium-sdk-V2/src/raydium/liquidity/liquidity.ts— 모듈 진입점; v4 / v5 디스패치.raydium-sdk-V2/src/raydium/liquidity/stable.ts—StableLayout,getStablePrice,getDxByDyBaseIn,getDyByDxBaseIn.

