메인 콘텐츠로 건너뛰기
이 페이지는 AI 자동 번역입니다. 모든 내용은 영문판을 기준으로 합니다.영문판 보기 →
Stable AMM은 독립적인 프로그램입니다(자체 프로그램 ID — AMM v4 프로그램을 통해 거래되지 않음). 오래전부터 OpenBook에 주문을 게시하지 않았으며, OpenBook 마켓 메이킹 경로는 수년간 휴지 상태였습니다. 이번 업그레이드는 정리 작업입니다: 이제 불필요한 마켓 관련 계정과 코드를 명령어 레이아웃에서 제거합니다. 라이브 거래 동작은 변경되지 않습니다 — 남아있는 OpenBook 주문이 없었기 때문입니다.

통합자를 위한 요약

  • Swap / Deposit / Withdraw는 변경 없이 계속 작동합니다. 기존 계정 레이아웃으로 구성된 트랜잭션은 여전히 실행됩니다 — 제거된 Serum/마켓 계정은 단순히 무시됩니다. 기존 흐름을 유지하기 위해 클라이언트 업데이트를 배포할 필요가 없습니다.
  • 하지만 곧 새로운 더 작은 레이아웃으로 마이그레이션해야 합니다. 새 레이아웃은 불필요한 마켓 계정을 제거하여 트랜잭션 크기를 줄입니다: SwapBaseIn / SwapBaseOut18 → 9 계정, Deposit14 → 12, Withdraw21 (+1 선택) → 12입니다. 호환성 경로는 향후 릴리스에서 제거될 예정입니다.
  • WithdrawPnl은 주요 변경 사항입니다(관리자 전용). 16 (+1 선택) → 10 계정으로 변경되며 호환성 파싱이 없습니다. 기존 레이아웃을 전송하면 계정 정렬 오류(기존 #3은 open_orders)로 인해 InvalidTokenCoin 같은 검증 오류가 발생합니다. WithdrawPnl을 호출하는 모든 관리자 도구를 업데이트해야 합니다.
  • WithdrawWithdrawPnl에서 추천 수수료 제거. 선택적 referrer_pc_wallet 계정은 Withdraw의 기존 레이아웃에서 하위 호환성을 위해 계속 전달될 수 있지만 더 이상 적용되지 않습니다.
  • 풀 자산 회계 단순화. 총 풀 자산은 이제 금고 잔액 − 미결제 PnL입니다; OpenBook 오픈 오더 항목 — 실제로는 이미 0 — 은 공식에서 제거됩니다. OpenOrders 항목을 추가한 인덱서 및 견적 코드는 이를 제거해야 합니다.
  • 대부분의 명령어가 제거되었습니다. SwapBaseIn, SwapBaseOut, Deposit, Withdraw, WithdrawPnl만 호출 가능합니다. Initialize, PreInitialize, InitModelData, UpdateModelData, MonitorStep, SetParams, WithdrawSrm, SimulateInfo는 더 이상 호출할 수 없습니다.

이것이 중요한 이유(거래자, LP, 통합자)

  • 거래자는 스왑 동작이나 가격 형태에 변화가 없습니다 — 조회 테이블 곡선은 변경되지 않습니다. 새 레이아웃 스왑은 트랜잭션이 9개 더 적은 계정을 포함하므로 더 저렴합니다.
  • LP는 동일한 입금/출금 경제를 유지합니다. 유동성은 오래전부터 풀 금고에만 있었으므로 풀 가치는 완전히 온체인입니다; 이 업그레이드는 오래된 마켓 관련 코드만 삭제합니다.
  • 통합자는 더 작고 간단한 트랜잭션과 하나 더 적은(이미 불필요한) 항목이 있는 견적 모델을 얻습니다. 기존 통합은 손상되지 않습니다(관리자 WithdrawPnl 제외), 하지만 호환성 shim은 임시적입니다 — 제거되기 전에 편의에 따라 마이그레이션하세요.

명령어 수준 변경 사항

SwapBaseIn / SwapBaseOut — 18 → 9 계정(기존 레이아웃 호환)

9개의 OpenBook 계정(amm_open_orders, serum_program, serum_market, serum_bids, serum_asks, serum_event_queue, serum_coin_vault, serum_pc_vault, serum_vault_signer)이 제거됩니다. 호환성: 명령어가 9개 이외의 계정 수를 받으면 기존 18개 계정 레이아웃으로 파싱됩니다; Serum 계정은 여전히 위치를 차지해야 하지만 내용은 더 이상 검증되거나 사용되지 않습니다.

Deposit — 14 → 12 계정(기존 레이아웃 호환)

amm_open_orders(기존 #3)와 serum_market(기존 #9)이 제거됩니다. 14개 계정이 전달되면 호환성을 위해 기존 레이아웃이 파싱됩니다.

Withdraw — 21 (+1 선택) → 12 계정(기존 레이아웃 호환)

9개의 Serum 계정이 제거됩니다. 기존 21개 또는 22개 계정 레이아웃은 여전히 허용되지만, 22번째 선택적 referrer_pc_wallet에 대한 추천 수수료 로직이 제거되었습니다 — 계정은 여전히 전달될 수 있지만 더 이상 적용되지 않습니다.

WithdrawPnl — 16 (+1 선택) → 10 계정(⚠️ 호환성 경로 없음, 주요 변경)

고정 10개 계정, 관리자 전용 레이아웃입니다. 기존 레이아웃에 대한 호환성 파싱이 없습니다; 이를 전송하면 계정 정렬 오류로 인해 InvalidTokenCoin 같은 오류가 발생합니다. 로직 변경: 풀의 사용 가능한 자금이 누적된 PnL을 인출하기에 부족할 때, 풀은 더 이상 CancelAllOrdersState / Disabled로 설정되지 않습니다; 명령어는 TakePnlError를 직접 반환합니다. 선택적 referrer_pc_wallet도 마찬가지로 제거되었습니다.

풀 자산 계산 변경

공식은 역사적으로 풀이 OpenBook OpenOrders 계정에 오픈 오더로 보유한 자금을 추가했습니다. 이 항목은 풀이 주문 게시를 중단한 이후 실제로는 0이었습니다; 이 업그레이드는 이를 공식에서 완전히 제거하여 금고 전용 계산만 남깁니다:
공식
기존금고 잔액 + 오픈 오더 자금(native_coin_total / native_pc_total) − 미결제 PnL(need_take_pnl)
신규금고 잔액 − 미결제 PnL(need_take_pnl)

업데이트된 페이지

  • products/stable/overview — 순수 AMM 모델, OpenBook 의존성 제거, 비교 및 계정 수 테이블 업데이트.
  • products/stable/index — “What it is” 및 주요 사실 테이블이 더 이상 OpenBook 의존성을 언급하지 않습니다.
  • products/stable/accounts — 인벤토리에서 OpenBook 계정 제거; AmmInfo Serum/오픈 오더 필드를 레거시/미사용으로 표시; 풀 자산 참고 추가.
  • products/stable/instructions — 호환성 주석이 있는 새로운 Swap / Deposit / Withdraw / WithdrawPnl 계정 테이블; 다른 모든 명령어(Initialize, PreInitialize, InitModelData, UpdateModelData, MonitorStep, SetParams, WithdrawSrm, SimulateInfo)는 제거됨/호출 불가로 표시.
  • products/stable/math — 풀 자산 공식 업데이트; MonitorStep / OpenBook 섹션은 오래 폐기된 것으로 재구성.
  • products/stable/fees — “OpenBook의 PnL” 섹션 폐기; 수집 흐름은 더 이상 OpenBook 체결을 정산하지 않습니다.
  • products/stable/code-demos — 계정 수 지침 업데이트; SDK는 여전히 레이아웃 선택을 추상화합니다.
검증 대상:
  • raydium-stable 프로그램 소스(업그레이드 후 instruction.rs / processor.rs).
  • Solana mainnet-beta의 온체인 Stable AMM 프로그램 배포.