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 자동 번역입니다. 모든 내용은 영문판을 기준으로 합니다.영문판 보기 →
LaunchLab은
Initialize에서 선택 가능한 세 가지 곡선 형태를 지원합니다: 상수곱 (가장 일반적이며, 표준 x · y = k 곡선의 가상 자산 형태), 선형 가격, 고정 가격. 졸업 임계값 공식은 세 형태 모두에서 동일합니다. 이 페이지에서는 상수곱 수학을 자세히 설명하고, 선형 및 고정 형태는 마지막에 요약합니다.LaunchState에 저장된 매개변수
| 필드 | 의미 |
|---|---|
curve_type | 0 = 상수곱 (가상 자산), 1 = 고정 가격, 2 = 선형 가격. |
base_supply_max | 곡선이 발행할 수 있는 총 베이스 토큰 개수. |
base_supply_graduation | 졸업에 도달하기 위해 판매해야 하는 베이스 토큰 개수. 보통 0.8 × base_supply_max이며, 남은 20%는 졸업 후 풀의 초기 LP가 됩니다. |
quote_reserve_target | 졸업을 촉발하는 인용 자산 개수. Initialize에서 곡선 매개변수 + base_supply_graduation으로부터 도출됩니다. |
virtual_base / virtual_quote | 상수곱 곡선의 가상 자산 시드값. |
migrate_type | 졸업 대상 선택: AMM v4 vs CPMM. instructions를 참조하세요. |
fees.buy_numerator / buy_denominator | 매수 수수료, 예: 100 / 10_000 = 1.00%. |
fees.sell_numerator / sell_denominator | 매도 수수료. 보통 매수와 같습니다. |
fees.protocol_share, fees.creator_share, fees.lp_share | 위 수수료의 분배로, 분모를 합산합니다. |
accounts에서 설명하는 PoolState 필드와 일치합니다. 위의 단위는 개념적입니다.
가상 자산을 포함한 상수곱 곡선 (curve_type = 0)
기본 및 가장 많이 사용되는 곡선입니다. Pump 스타일의 발행은 모두 이 형태를 사용합니다. 곡선은 처음부터 가상 인용 자산 보유금 V_q와 가상 베이스 보유금 V_b가 있다고 가정하므로 (PoolState에 virtual_quote와 virtual_base로 저장됨), 효과적인 풀은 이러한 보유금을 가진 CPMM처럼 작동합니다. 매수는 x · y = k 수학을 따릅니다:
base_out에 대해 정렬:
s에서의 유효 가격:
x · y = k 불변식은 졸업 후 (CPMM 또는 AMM v4) 곡선과 정확히 일치하므로, 졸업 이전은 기계적으로 원활합니다. base_sold = base_supply_graduation에서의 한계 가격은 졸업 후 풀이 (quote_vault, base_vault_remaining)을 보유금으로 하여 열리는 가격과 같습니다.
고정 가격 곡선 (curve_type = 1)
평탄한 가격 곡선입니다. 모든 매수/매도는 Initialize에서 구성 가능한 상수 가격에서 발생합니다:
base_supply_graduation이 판매되면 졸업이 촉발됩니다 (선형 비용 관계는 quote_reserve_target을 간단히 도출할 수 있습니다).
선형 가격 곡선 (curve_type = 2)
가격이 base_sold에 따라 선형으로 증가합니다:
base_sold에 대해 이차 함수입니다. 초기 매수자는 거의 0에 가까운 가격을 지불하고, 후기 매수자는 훨씬 더 많은 가격을 지불하며, 한계 가격은 항상 고정된 기울기로 상승합니다. 온체인 구현은 curve/linear_price.rs에 있습니다.
곡선 형태 비교
졸업 임계값
quote_reserve_target은 Initialize에서 base_sold를 0에서 base_supply_graduation으로 변경하는 데 필요한 인용 자산으로 계산됩니다:
quote_vault.balance ≥ quote_reserve_target이 되는 순간 졸업합니다. 매수가 개별 크기로 발생하므로, 졸업 시 실제 잔액은 목표를 약간 초과할 수 있습니다. 잉여금은 결과 CPMM 풀의 추가 인용 측 유동성이 됩니다.
실제 예시 — 이차 발행
매개변수:base_supply_max = 1_000_000_000(10억 베이스 토큰, 6 소수자리)base_supply_graduation = 800_000_000(80% 판매 시 졸업 촉발)k = 40(가격 스케일)- 수수료: 매수 1%, 매도 1%, 분배
lp:creator:protocol = 60:20:20.
s = 0): 0 (순수 이차 함수는 0에서 시작).
50% 판매 시 가격 (s = 500_000_000):
s = 800_000_000):
- 가상 상태:
s = 0,quote_vault = 0. - 수수료 차감:
quote_after_fee = 10 × 0.99 = 9.9. (40 / (3e18)) × s³ = 9.9풀기 ⇒s ≈ 6.22e6베이스 토큰 매수.- 1% 수수료 (
0.1 USDC) 분배: lp0.06, creator0.02, protocol0.02. lp 몫은quote_vault에 남고, 나머지 두 개는 각각의 적립 카운터로 라우팅됩니다.
s₀ = 750e6에서 Newton 풀기, quote_in_after_fee = 9.9는 대략 ∆s ≈ 0.4e6을 제공합니다. 첫 매수 대비 USDC당 베이스가 약 15배 감소합니다.
곡선 단계 중 수수료 메커니즘
모든Buy에서:
lp_share는quote_vault에 남습니다. 이는 유효 곡선을 더 타이트하게 만듭니다 (동일한 베이스 공급에 대해 더 많은 인용 자산 보유금).protocol_share는LaunchState.state_data.protocol_fees_quote를 증가시킵니다.creator_share는LaunchState.state_data.creator_fees_quote를 증가시킵니다.
Sell에서는 동일한 분배가 적용되지만 수수료는 아웃바운드 quote_out에서 차감됩니다.
두 카운터는 CollectFees를 통해 청소됩니다 (관리자 또는 생성자, 각각 자신의 카운터로).
정밀도
- 베이스 측 금액:
u64. - 인용 측 금액:
u64. - 중간 큐브 / 곱:
u128. - “정확한 인용 매수” 및 “정확한 인용 매도”를 위한 Newton 풀기는 구성 가능한 최대 반복 횟수 (기본값 10)로
u128고정소수점으로 반복됩니다. 실패 모드는NotConverged입니다. 졸업 근처 엣지 케이스 외에는 드뭅니다.
CPMM으로의 이전
Graduate가 실행될 때:
cpmm_initial_price는 기계적으로 price(base_sold)입니다 (이것은 이전 순간의 한계 곡선 가격입니다). CPMM 풀은 정확히 그 가격에서 열리므로, 곡선 UI에서 CPMM UI로 전환하는 관찰자는 점프를 보지 않습니다.
다음 단계
products/launchlab/accounts— 이러한 매개변수를 저장하는LaunchState필드.products/launchlab/instructions—Buy,Sell,Graduate계정 목록.algorithms/constant-product— 졸업 후 풀이 사용하는 CPMM 수학.
- Raydium SDK v2
LaunchLab모듈 - Raydium LaunchLab 프로그램 소스


