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 자동 번역입니다. 모든 내용은 영문판을 기준으로 합니다.영문판 보기 →
이 문서는 프로젝트 출시 이후 페이지 업데이트의 기록입니다. 프로토콜 자체의 역사적 타임라인은
introduction/history-and-milestones을 참조하세요. 여기의 모든 항목에는 날짜, 영향을 받은 장의 목록, 트리거 및 온체인 상태와 프로그램 소스를 마지막으로 검증한 날짜가 있습니다.2026-05-18 — CLMM: 리밋 오더, 단방향 수수료, 동적 수수료
다음 CLMM 릴리스는 3가지 풀 레벨 기능을 추가합니다. 이들은 풀 생성 시 선택적이며 기존 풀 및 포지션과 역호환됩니다.통합자를 위한 요약
- 리밋 오더는 이제 CLMM의 1급 프리미티브입니다. LP는 지원하는 풀에서 단일 틱 오더를 열 수 있으며, 스왑이 틱을 넘을 때 FIFO로 채워지고, 오프체인 키퍼(
limit_order_admin)가 소유자가 온라인 상태가 아닌 경우에도 채워진 출력을 결제할 수 있습니다. 7개의 새로운 SDK 메서드(openLimitOrder,increaseLimitOrder,decreaseLimitOrder,settleLimitOrder,closeLimitOrder,closeAllLimitOrder,settleAllLimitOrder)와/limit-order/아래의 3개의 새로운 Temp API 엔드포인트(활성 오더, 사용자별 기록, PDA별 이벤트 로그)가 전체 플로우를 지원합니다. - **단방향 수수료(
CollectFeeOn)**를 사용하면 풀이 입력 측면에서 스왑 수수료를 징수하거나(레거시, 모드0), 항상token_0에서(모드1), 또는 항상token_1에서(모드2) 징수할 수 있습니다. 페어의 한쪽이 정규 회계 토큰인 경우 유용합니다. - 동적 수수료를 사용하면 풀이 빠른 틱 이동으로 상승하고 시간이 지남에 따라 감소하는 변동성 추적 할증료를 선택할 수 있으며, 계층별
DynamicFeeConfig및 풀별DynamicFeeInfo로 보정됩니다. 새로운/main/clmm-dynamic-config엔드포인트는 계층 목록을 표시합니다. - 새로운 명령어인
CreateCustomizablePool은 풀 생성 시 3가지 설정을 모두 노출합니다. 클래식CreatePool은 기본 수수료, 리밋 오더 없음 풀에 계속 작동합니다. - 인덱서 주요 변경:
PoolState의 방향별 거래량 카운터(swap_in_amount_token_{0,1},swap_out_amount_token_{0,1})와 생애 주기 수수료 카운터(total_fees_token_{0,1},total_fees_claimed_token_{0,1})는fee_on과dynamic_fee_info를 위한 공간을 확보하기 위해 패딩으로 폐기되었습니다. 이 필드를 직접 읽는 인덱서는 온체인Observation링 또는 API로 마이그레이션해야 합니다.
이것이 중요한 이유 (거래자, LP, 통합자의 경우)
- 거래자는 롱테일 및 이벤트 구동 페어에서 더 좋은 견적을 얻습니다: 동적 수수료를 사용하면 풀이 LP가 범위를 능동적으로 확대할 필요 없이 테이커의 변동성 할증료를 흡수할 수 있으며, 리밋 오더 래더는 범위 전체 자본을 약정하지 않고 특정 가격에서 온체인 유동성을 심화시킵니다.
- LP는 집중 범위 및 전체 범위 포지션과 함께 세 번째 전략을 얻습니다: 정확한 가격 오더를 주차하고, 가격이 방문할 때 채워지고, 견적 토큰으로 결제합니다. 채워진 부분에 대해 능동적 리밸런싱이 필요하지 않습니다.
- 통합자는 동적 수수료 풀을 결정적으로 모델링할 수 있습니다 — 알고리즘과 매개변수는 완전히 온체인이고, 보정 계층은 쿼리 가능하며, 스왑 경로는 형태가 변하지 않습니다(각 단계당 수수료만 변함).
프로그램의 변경 사항
새로운 계정
DynamicFeeConfig— 계층별 보정 레코드(필터 기간, 감소 기간, 감소 계수, 동적 수수료 제어, 최대 변동성 누적기).CreateDynamicFeeConfig(관리자)로 생성되며, 동적 수수료가 활성화된 경우CreateCustomizablePool에서 참조됩니다.LimitOrderState— 풀, 틱, 측면, 입력 금액, 미채우기 비율, FIFO 코호트 위상, 장부 기록 스냅샷을 보유하는 오더별 계정(PDA 시드:[owner, limit_order_nonce, order_nonce]). 생애 주기는 암시적입니다(filled_amountvstotal_amount, 그리고 계정 존재):Open → Filled → Settled → Closed.LimitOrderNonce— (소유자, nonce_index) 단조 증가 카운터(리밋 오더 PDA 시드를 가져옴).nonce_index: u8을 사용하면 동일한 소유자가 오더를 최대 256개의 독립적인 nonce 스트림으로 분할할 수 있습니다.
PoolState 재구성
| 필드 그룹 | 이전 레이아웃 | 새 레이아웃 |
|---|---|---|
| 방향별 거래량 카운터 | swap_in_amount_token_0, swap_out_amount_token_0, swap_in_amount_token_1, swap_out_amount_token_1 | padding5: [u128; 4]로 폴딩됨 |
| 생애 주기 수수료 카운터 | total_fees_token_0, total_fees_claimed_token_0, total_fees_token_1, total_fees_claimed_token_1 | padding6: [u64; 4]로 폴딩됨 |
| 단방향 수수료 | — | fee_on: u8 (0 = FromInput, 1 = Token0Only, 2 = Token1Only) |
| 동적 수수료 | — | dynamic_fee_info: DynamicFeeInfo (내장) |
PoolState에서 Observation 링 또는 API로 전환하세요. 폐기된 카운터는 기존 풀에서 0으로 설정되지 않으므로(마지막으로 가져간 모든 것을 보유), 업그레이드 후 재읽으면 오래된 데이터가 반환됩니다.
TickState 추가 (주요 변경 사항 없음)
4개의 새 필드가 TickState의 끝에 추가되어 일부 끝 패딩을 대체합니다:
order_phase: u64— 이 틱에서 리밋 오더 코호트를 구분하는 카운터.orders_amount: u64— 이 틱에서 모든 개방 오더에 의해 약정된 총 입력(모두 완전히 미채워진 것은 아님).part_filled_orders_remaining: u64— 현재 스왑으로 소비 중인 코호트에서 여전히 미채워진 입력.unfilled_ratio_x64: u128— 각 오더의 채우기 공유를 계산하는 데 사용되는 Q64.64 비율.
새로운 명령어
CreateDynamicFeeConfig(관리자) — 보정된DynamicFeeConfig계층을 생성합니다. 권한:CreateAmmConfig와 동일한 재무부 멀티시그.UpdateDynamicFeeConfig(관리자) — 기존 계층의 매개변수를 업데이트합니다.CreateCustomizablePool—collect_fee_on,enable_dynamic_fee,dynamic_fee_config를 노출하는 풀 생성 진입점.CreatePool과 공존합니다; 새로운 기능이 필요한 모든 새 풀에 대해CreateCustomizablePool을 권장합니다.OpenLimitOrder— 단일 틱 리밋 오더를 엽니다.LimitOrderNonce를 범프하고,LimitOrderState를 할당하고, 오더를 틱의 FIFO 코호트에 슬롯합니다.IncreaseLimitOrder/DecreaseLimitOrder— 오더의 미채우기 부분을 조정합니다.InvalidOrderPhase로 완전히 채워진 오더에서 되돌립니다.SettleLimitOrder— 채워진 출력을 소유자의 ATA로 스윕합니다. 호출자는 소유자 또는 풀의limit_order_admin키퍼일 수 있습니다.CloseLimitOrder— 완전히 결제된 오더를 닫아 렌트를 회수합니다.
SwapV2 동작 변경
스왑 경로 자체는 형태가 변하지 않지만 3가지가 이제 과정에서 발생합니다:
- 동적 수수료(활성화된 경우): 풀의
DynamicFeeInfo는 각 단계에서 업데이트되고(감소 → 누적 → 상한), 결과 할증료가 해당 단계의 기본 수수료 위에 추가됩니다. - 리밋 오더 매칭(단계가 개방 오더가 있는 초기화된 틱을 넘을 때): 스왑 입력의 일부는 FIFO로 소비되어 해당 틱의 코호트를 채우고,
unfilled_ratio_x64는 원자적으로 업데이트됩니다. - 단방향 수수료 라우팅(
fee_on != 0인 경우): 수수료는 항상 입력 측면에서 가져오는 대신 스왑 방향에 관계없이token_0또는token_1에서 가져옵니다.
새로운 오류 코드
ErrorCode 열거형은 이 릴리스에서 다시 번호가 매겨졌습니다: 5개의 레거시 변형(LOK, ZeroMintAmount, InvalidLiquidity, TransactionTooOld, InvalidRewardDesiredAmount)이 제거되었고 11개의 새로운 변형이 추가되었습니다. Anchor가 6000부터 열거형 순서로 오류를 번호 매기기 때문에 제거된 위치에서 이후의 모든 오류 코드가 이동했습니다 — 숫자 코드를 하드코딩한 클라이언트는 재매핑해야 합니다.
새로운 코드는 다음과 같습니다:
6040OrderAlreadyFilled6041InvalidOrderPhase6042InvalidLimitOrderAmount6043OrderPhaseSaturated6044InvalidDynamicFeeConfigParams6045InvalidFeeOn6046ZeroSqrtPrice6047ZeroLiquidity6048MissingBaseFlag6049MissingMintAccount6050MissingTokenProgram2022
SDK의 변경 사항 (@raydium-io/raydium-sdk-v2)
raydium.clmm의 새로운 메서드:createCustomizablePool,openLimitOrder,increaseLimitOrder,decreaseLimitOrder,settleLimitOrder,settleAllLimitOrder,closeLimitOrder,closeAllLimitOrder.raydium.api의 새로운 REST 헬퍼:getClmmDynamicConfigs,getClmmLimitOrderConfigs.- 새로운 타입:
CollectFeeOn열거형,DynamicFeeConfig,DynamicFeeInfo,LimitOrderState,LimitOrderConfig. - 내부 재정리:
utils/를libraries/로 이동했습니다. 패키지 배럴은 변경되지 않습니다;@raydium-io/raydium-sdk-v2/utils/...아래의 깊은 임포트만…/libraries/…로 업데이트하면 됩니다.
products/clmm/code-demos에 있습니다.
API의 변경 사항
api-v3—/main/아래의 2개 새로운 엔드포인트:GET /main/clmm-dynamic-config—DynamicFeeConfig계층의 목록.GET /main/clmm-limit-order-config— 풀별 리밋 오더 구성.
temp-api-v1—/limit-order/아래의 3개 새로운 엔드포인트:GET /limit-order/order/list?wallet=…— 지갑의 현재 주차된 오더(개방 및 부분 채워짐, 인덱서의 Redis 캐시에서 제공; 동일 페이로드는totalAmount/filledAmount/pendingSettle을 통해 두 위상을 모두 커버).GET /limit-order/history/order/list-by-user?wallet=…— 지갑의 과거 리밋 오더. 선택적 필터:poolId,mint1,mint2,hideCancel.nextPageId/size(최대 100)를 통해 커서로 페이지 지정됩니다.GET /limit-order/history/event/list-by-pda?pda=…— 하나 이상의 쉼표로 구분된 리밋 오더 PDA의 PDA별 이벤트 로그(open/increase/decrease/settle/close).nextPageId/size(최대 100)를 통해 커서로 페이지 지정됩니다.
권한 표면
limit_order_admin은 오프체인 운영 키퍼이며 멀티시그가 아닙니다. 기존 오더에 대해 SettleLimitOrder와 CloseLimitOrder만 호출할 수 있으며, 결제의 출력은 항상 소유자의 ATA에 도착합니다. 풀 필드를 변경하거나, 오더를 열거나 수정하거나, 다른 작업을 위해 서명할 수 없습니다. 관리 키 및 멀티시그 → CLMM을 참조하세요.
업데이트된 페이지
products/clmm/overview— 새로운 “새로운 소식” 섹션 및 업데이트된 다음 단계 포인터.products/clmm/accounts— 3개 새로운 계정,PoolState마이그레이션 경고와 함께 재구성,TickState추가, 새로운 PDA 헬퍼.products/clmm/instructions— 7개 새로운 명령어,SwapV2동작 추가 사항, 업데이트된 상태 변경 매트릭스.products/clmm/fees— 단방향 수수료 섹션, 매개변수 테이블이 있는 동적 수수료 섹션.products/clmm/math— 리밋 오더 매칭 의사 코드, 동적 수수료 도출.products/clmm/code-demos—createCustomizablePool데모, 전체 리밋 오더 워크스루, 새로운 주의사항.algorithms/clmm-math— 다중 틱 스왑 루프에서 리밋 오더 매칭 및 동적 수수료에 교차 참조.sdk-api/typescript-sdk— CLMM 모듈 추가 섹션,utils/→libraries/마이그레이션 참고.api-reference/openapi/api-v3.yaml— 응답 스키마가 있는 2개 새로운 엔드포인트.api-reference/openapi/temp-api-v1.yaml— 3개 새로운 리밋 오더 엔드포인트(/limit-order/order/list,/limit-order/history/order/list-by-user,/limit-order/history/event/list-by-pda) 및 요청 및 응답 스키마.api-reference/api-v3/overview— 새로운 CLMM 구성 엔드포인트에 대한 참고.api-reference/temp-api-v1/overview— 새로운 활성 오더, 사용자별 기록 및 PDA별 이벤트 엔드포인트에 대한 참고.reference/error-codes— 11개 새로운 CLMM 오류 코드(6040–6050) 및 5개 제거된 레거시 코드; 제거 지점 이후의 숫자 코드가 이동됨.security/admin-and-multisig— 새로운DynamicFeeConfig관리자 행 및limit_order_admin키퍼 행(제한된 권한 설명 포함).
raydium-clmm소스.@raydium-io/raydium-sdk-v2소스.api-v3및temp-api-v1소스.
2026-04-26 — 초기 발행
Raydium 설명서 집합의 첫 번째 공개 릴리스. 검증 대상:- Solana mainnet-beta의 라이브 프로그램 배포.
@raydium-io/raydium-sdk-v2@0.2.42-alpha.- 2026년 4월을 통한 공개 Raydium 문서 및 온체인 참조.
설명서 컨벤션
- 버전 관리: 이 설명서는 달력 기반 버전 관리(YYYY-MM-DD)를 사용합니다. 각 업데이트는 파일의 상단에 새로운 항목을 생성합니다.
- 검증 날짜: 모든 항목은 온체인/API 상태 및 프로그램 소스에 대해 내용을 마지막으로 교차 검증한 시간을 기록합니다. 명시되지 않으면 항목의 주요 날짜를 가정하세요.
- 주요 변경 사항: 영향을 받는 페이지의 상자 형 경고에서 호출되고 아래 항목에 태그가 지정됩니다.
- 커버리지: 이 변경 로그는 설명서 집합 자체를 다룹니다. 프로토콜 자체의 역사적 타임라인은
introduction/history-and-milestones에 있으며 “Raydium에서 X가 언제 일어났는가”에 대한 진실의 원천입니다.
수정사항
이 설명서에서 오류를 발견하면 설명서 저장소에서 문제 또는 풀 요청을 여세요. 수정사항은 이 변경 로그에 기록됩니다.포인터
introduction/history-and-milestones— 프로토콜 자체의 타임라인.security/audits— 감사 기록.ray/protocol-fees— 프로토콜 수수료 분할.reference/program-addresses— 프로그램 ID 진실의 원천.


