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.
이 페이지는 AI 자동 번역입니다. 모든 내용은 영문판을 기준으로 합니다.영문판 보기 →
한 문단 요약
CPMM — Constant Product Market Maker는 Raydium UI에서 공식적으로 “Standard AMM”이라고 불리며, 고전적인x · y = k AMM의 네이티브 Solana 구현입니다. OpenBook 오더북도 없고, Serum 레거시도 없으며, SPL Token과 Token-2022 이외의 외부 종속성도 없습니다. 모든 풀은 프로그램이 소유한 권한 PDA로 관리되는 (두 개의 토큰 볼트, 하나의 LP 민트) 트리플로 구성되며, 볼트 잔액의 곱으로 가격이 결정됩니다. CPMM은 모든 새로운 상수곱 풀에 대해 Raydium이 권장하는 AMM이며, /pools/create 엔드포인트와 웹 UI의 “Create pool” 흐름이 기본적으로 사용하는 방식입니다.
CPMM이 제공하는 것
- 검증된 확장 허용 목록을 갖춘 Token-2022. CPMM은 임의의 Token-2022 민트를 수락하지 않습니다. 프로그램은 풀 생성 시 안전한 확장의 화이트리스트를 적용합니다:
TransferFeeConfig,MetadataPointer,TokenMetadata,InterestBearingConfig,ScaledUiAmount. 민트의 다른 확장으로 인해Initialize는NotSupportMint로 거부됩니다 — 프로그램에서 유지하는 작은 하드코딩된 민트 허용 목록에 해당 민트가 있는 경우는 제외입니다 (특정 민트를 사례별로 온보드하는 데 사용됨). 특히 전송 수수료는 스왑 수학에 영향을 미치며 거래의 올바른 측에 적용됩니다 —algorithms/token-2022-transfer-fees를 참조하세요. - 예측 가능한 수수료. 각 풀은 생성 시 선택한
AmmConfig를 참조합니다. 구성에는 거래 수수료 비율 (LP, 프로토콜, 펀드 간 분할) 및 별도의 독립적인 크리에이터 수수료 비율이 포함됩니다. 크리에이터 수수료는 자신의 버킷입니다 — 거래 수수료의 일부가 아닙니다. 풀은 생성 시 청구 여부를 선택합니다. 기본값과 전체 분할 수학은products/cpmm/fees를 참조하세요. - 관찰 링 버퍼를 통한 온체인 TWAP. 모든 스왑은
observation계정을 업데이트합니다. 외부 계약은 누적 가격 관찰을 읽어 커스텀 오라클 없이 TWAP을 계산할 수 있습니다. - 평면 계정 레이아웃. 풀은 6개의 PDA로 완전히 설명됩니다 (권한, 풀 상태, LP 민트, 두 볼트, 관찰). 마켓별 OpenBook 계정도 없고, 이벤트 큐도 없으며, 요청 큐도 없습니다. 거래는 계산 및 계정 수 모두에서 AMM v4보다 저렴합니다.
- 번 앤 언(Burn-and-earn) 호환. LP 토큰은 LP Lock 프로그램 아래에서 잠금되므로 풀 생성자가 유동성을 인출할 권리를 유지하지 않고도 계속 수수료를 청구할 수 있습니다. “영구” 유동성 출시에 사용됩니다.
CPMM이 아닌 것
- 집중되지 않음. 유동성은 Uniswap v2처럼 전체 가격 범위에 걸쳐 균등하게 분산됩니다. 자본 효율적인 시장 조성이 필요한 경우 — 즉, 현재 가격 근처에 유동성을 집중시키려면 CLMM을 사용하세요.
- 하이브리드가 아님. AMM v4와 달리 CPMM 풀은 OpenBook 마켓에 대기 중인 주문을 배치하지 않습니다. CPMM 풀 간의 라우팅은 CLOB를 통하지 않고 AMM Routing 프로그램을 통해 이루어집니다.
- 임의의 곡선으로 시작할 수 없음. 곡선은 상수곱으로 하드코딩됩니다. 토큰 출시를 위한 본딩 곡선이 필요한 경우 LaunchLab을 사용하세요. 그러면 채워질 때 CPMM 풀로 졸업합니다.
CPMM과 AMM v4의 차이점
| 항목 | AMM v4 | CPMM |
|---|---|---|
| 곡선 | 상수곱 | 상수곱 |
| OpenBook 종속성 | 비활성 (원래 OpenBook 마켓에 주문을 배치했으나 통합이 비활성화됨) | 없음 |
| Token-2022 지원 | 없음 (SPL Token만) | 있음 (전송 수수료 포함) |
| V2 스왑당 계정 수 | ~9 | ~11 |
| 스왑당 계산 단위 | ~80k–120k (V2 경로) | ~60k–100k |
| TWAP 오라클 | 네이티브 오라클 계정 없음 | observation 링 버퍼 |
| 현재 새 풀 생성 | 기본값 아님 (프로그램은 여전히 수락함) | 기본값 |
| 상태 | 완전히 작동 중 | 활성, 권장 |
protocol-overview/versions-and-migration에 있습니다.
멘탈 모델
CPMM 풀은 세 가지 잔액을 보유하는 프로그램 소유 객체입니다:vault0 (token0), vault1 (token1), LP 민트의 공급. LP 민트의 공급은 예치자의 풀에 대한 청구권을 추적하고, 토큰 볼트는 실제 자산을 보유합니다. 다른 모든 것 — 권한 PDA, 관찰 계정, 수수료 구성 포인터 — 은 그 세 개의 변수 관계를 거래 가능하고, 수수료 수집이 가능하고, 관찰 가능하게 만들기 위한 부기입니다.
모든 사용자 대면 작업은 잘 정의된 상태 전환으로 축약됩니다:
- 입금: token0과 token1을 입금하고, 사용자에게 LP를 민트하며, 가격은 변하지 않습니다.
- 출금: 사용자로부터 LP를 번하고, 풀의 현재 비율로 token0과 token1을 출금하며, 가격은 변하지 않습니다.
- 스왑: 한 토큰을 입금하고 다른 토큰을 출금합니다. 비율은
x · y = k곡선을 따라 이동합니다 (수수료 제외). 관찰 계정은 새로운 가격을 샘플링합니다.
CollectProtocolFee, CollectFundFee)은 각 권한에 의해 서명된 별도의 거래입니다. 모든 스왑에서 발생하지는 않습니다. 수학은 products/cpmm/math에서 설명하고 지시 집합은 products/cpmm/instructions에서 설명합니다.
CPMM을 선택하는 시기
다음과 같은 경우 CPMM을 선택하세요:- 새 토큰이나 새 쌍을 출시하고 있으며 어느 범위에서 거래가 이루어질지에 대한 강한 의견이 없습니다.
- 한 개 또는 두 개의 토큰이 Token-2022 확장을 사용합니다.
- 동적 틱 기반 모델보다 간단한 거래당 수수료 모델을 원합니다.
- 통합 중이며 CLMM 포지션의 복잡성을 없이 Raydium을 통해 라우팅하려고 합니다.
- 쌍이 안정적이거나 높은 상관관계가 있으며 (스테이블코인-스테이블코인, LST-SOL) 유동성을 동등성 근처에 집중시키고 싶습니다.
- TVL당 더 높은 수수료 APR을 위해 범위를 적극적으로 관리하려는 시장 조성 팀입니다.
- 기존 AMM v4 도구를 마이그레이션 중이며 새 풀을 생성하지 않습니다.
다음 단계
- 계정 — CPMM 풀의 6개 PDA와 파생 방법.
- 수학 —
SwapBaseInputvsSwapBaseOutput, Token-2022 전송 수수료 처리, 관찰 업데이트. - 지시 — 계정 목록이 있는 완전한 지시 표면.
- 수수료 — 4가지 수수료 분할 및 수집 방법.
- 코드 데모 — 생성 / 스왑 / 입금 / 출금을 위한 실행 가능한 TypeScript 스니펫.


