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 자동 번역입니다. 모든 내용은 영문판을 기준으로 합니다.영문판 보기 →
라우터는 수학을 수행하지 않습니다
라우팅 프로그램은 가격 책정 로직을 구현하지 않습니다. 순수한 오케스트레이터로, 경로를 받아들이고 하위 프로그램에 계정을 전달하며 토큰 흐름을 연결합니다. 각 홉은 자신의 풀 프로그램 곡선에서 가격을 책정합니다:- AMM v4 홉: OpenBook 하이브리드 가격 책정과 함께 상수곱 공식(
x · y = k)을 사용합니다.products/amm-v4/math를 참조하세요. - CPMM 홉: 구성 가능한 수수료 계층과 함께 상수곱 공식을 사용합니다.
products/cpmm/math를 참조하세요. - CLMM 홉: 집중 유동성 틱 수학을 사용합니다.
algorithms/clmm-math를 참조하세요. - Stable 홉: 유사 자산을 위한 스테이블 스왑 곡선을 사용합니다.
products/stable/math를 참조하세요.
- CPI를 통해 각 풀의 스왑 명령어를 호출합니다.
- 출력 금액을 수집합니다.
- 다음 홉의 입력 금액으로 전달합니다.
- 최종 출력을 호출자의 슬리피지 한도에 대해 확인합니다.
슬리피지 복합
다중 홉 경로에서 각 홉의 슬리피지는 복합됩니다. 첫 번째 홉의 작은 슬리피지는 두 번째 홉의 더 큰 슬리피지가 되는데, 이는 두 번째 홉으로의 거래량이 이미 감소했기 때문입니다. 예시:minimum_amount_out을 제공하면 라우터는 최종 출력을 이 전역 한도에 대해 확인합니다. 각 홉도 자신의 스왑을 로컬 수수료 구조에 대해 확인하지만, 라우터는 경로 중간에 재견적을 하지 않으므로, 경로를 미리 계산하고 충분한 슬리피지 허용량을 포함해야 합니다.
CLMM 홉과 limit_prices
CLMM 풀로의 각 홉에 대해 라우터는 풀의 현재sqrt_price_x64가 지정된 범위 내에 있는지 확인합니다. 범위는 limit_prices라는 VecDeque<u128>로 전달됩니다:
- 경로의 각 CLMM 홉당 하나의
sqrt_price_x64. sqrt_price_x64는 CLMM에서 사용하는 틱 기반 가격 표현입니다. 정의는algorithms/clmm-math를 참조하세요.- 라우터는 다음을 적용합니다:
명령어 변형과 limit_prices
-
SwapBaseInWithUserAccount,SwapBaseOutWithUserAccount(레거시, 태그 0과 1):limit_pricesVecDeque은 필수입니다. 어떤 홉이 CLMM 풀인 경우 빈 deque는 오류와 함께 거부됩니다. 순서대로 각 CLMM 홉당 하나의 가격을 제공해야 합니다. -
SwapBaseIn,SwapBaseOut(현재, 태그 8과 9):limit_pricesVecDeque은 선택 사항입니다. 빈 deque는 조용히 무시되고, 가격 확인이 수행되지 않습니다. 새 코드는 이것을 사용해야 합니다.
limit_prices 빌드하기
M개의 CLMM 홉이 있는 경로의 경우, deque는 정확히 M개의 항목을 포함해야 합니다. 홉별로 순서를 정합니다:limit_prices를 확인할 때
sqrt_price_x64는 풀의 현재 가격의 스냅샷입니다. 스왑이 실행되면서 계속 변경됩니다. 다음을 수행해야 합니다:
- 온체인에서 풀의 현재 상태를 가져옵니다.
- 허용 가능한 범위를 계산합니다 (예: 현재 가격의 ±0.5%).
- 해당 범위를
limit_prices로 인코딩합니다. - 라우터 명령어에 범위를 포함합니다.
수수료 처리
각 풀은 자신의 구성에 따라 자신의 수수료를 부과합니다:- AMM v4: 0.25% (고정), LP, 프로토콜, 펀드 간에 나뉨.
- CPMM:
AmmConfig당 구성 가능 (기본값 0.25%, 계층별로 분할 다름). - CLMM: 풀당 구성 가능, 입력 금액에서 차감.
- Stable: AMM v4와 같이 0.25% 분할.
products/amm-v4/feesproducts/cpmm/feesproducts/clmm/fees(사용 가능한 경우)products/stable/fees(사용 가능한 경우)
다중 홉 회계 예시
USDC → SOL → STEP을 두 개의 상수곱 풀을 통해 라우팅한다고 가정하면, 각각 0.25% 수수료가 있습니다:정밀도 고려 사항
모든 Solana 프로그램처럼 라우터는 정수 산술을 사용합니다:- 모든 금액은
u64(램포트 또는 토큰 최소 단위). - 곡선 계산은 오버플로우를 피하기 위해 필요한 곳에서
u128중간값을 사용합니다. - 반올림 규칙은 하위 프로그램에 따라 다릅니다. 라우터는 재반올림하지 않습니다.
다음으로 읽을 내용
products/amm-v4/math— 상수곱 수학.products/cpmm/math— Token-2022를 포함한 CPMM 상수곱.algorithms/clmm-math— 집중 유동성 가격 책정.products/stable/math— 스테이블 스왑 곡선.products/routing/code-demos— 라우팅 전 견적의 예시.


