Ana içeriğe atla
Bu sayfa yapay zekâ tarafından otomatik olarak çevrilmiştir. İngilizce sürüm esas alınır.İngilizce sürümü görüntüle →
Stable AMM, bağımsız bir programdır (kendi program ID’sine sahiptir — AMM v4 programı üzerinden işlem görmez). OpenBook’a uzun zaman önce emir göndermeyi durdurmuştur; OpenBook pazar yapıcılığı yolu yıllardır hareketsizdir. Bu yükseltme temizliktir: artık ölü olan pazar ile ilgili hesapları ve kodu, komut düzenlerinden kaldırır. Herhangi bir canlı işlem davranışını değiştirmez — gönderilecek OpenBook emirleri kalmamıştır.

Entegratörler için özet

  • Swap / Deposit / Withdraw değişiklik olmadan çalışmaya devam eder. Eski hesap düzenleriyle oluşturulan işlemler yine de yürütülür — kaldırılan Serum/market hesapları basitçe yoksayılır. Mevcut akışları canlı tutmak için istemci güncellemesi göndermeniz gerekmez.
  • Ancak yakında yeni, daha küçük düzenlere geçiş yapmalısınız. Yeni düzenler ölü market hesaplarını kaldırarak işlem boyutunu azaltır: SwapBaseIn / SwapBaseOut 18 → 9 hesaba, Deposit 14 → 12’ye, Withdraw 21 (+1 isteğe bağlı) → 12’ye düşer. Uyumluluk yolu gelecek bir sürümde kaldırılacaktır.
  • WithdrawPnl kırıcı bir değişikliktir (yalnızca yönetici). 16 (+1 isteğe bağlı) → 10 hesaba uyumluluk ayrıştırması olmadan düşer. Eski düzeni göndermek, hesap hizalaması nedeniyle InvalidTokenCoin gibi doğrulama hataları ile başarısız olur (eski #3 open_orders idi). WithdrawPnl’yi çağıran herhangi bir yönetici aracı güncellenmelidir.
  • Withdraw ve WithdrawPnl üzerinde referral ücreti kaldırıldı. İsteğe bağlı referrer_pc_wallet hesabı Withdraw’ın eski düzeni için geriye dönük uyumluluk için hala geçirilebilir, ancak artık etkili olmaz.
  • Havuz-varlık muhasebesi basitleştirildi. Toplam havuz varlıkları artık vault bakiyeleri − beklemede olan PnL’dir; OpenBook açık emir terimi — pratikte zaten sıfır olan — formülden kaldırılır. Hala bir OpenOrders terimi ekleyen indeksleyiciler ve alıntı kodu bunu kaldırmalıdır.
  • Çoğu komut artık kaldırılmıştır. Yalnızca SwapBaseIn, SwapBaseOut, Deposit, Withdraw ve WithdrawPnl çağrılabilir. Initialize, PreInitialize, InitModelData, UpdateModelData, MonitorStep, SetParams, WithdrawSrm ve SimulateInfo artık çağrılamaz.

Bunun neden önemli olduğu (tüccarlar, LP’ler ve entegratörler için)

  • Tüccarlar swap davranışında veya fiyatlandırma şeklinde değişiklik görmez — arama tablosu eğrisi değişmez. Yeni düzen swapları, işlem dokuz daha az hesap taşıdığı için iniş maliyeti daha düşüktür.
  • LP’ler aynı deposit/withdraw ekonomisini korur. Likidite uzun süredir tamamen havuz kasalarında oturmuştur, bu nedenle havuz değeri tamamen havuzda; bu yükseltme yalnızca eski market tesisatını siler.
  • Entegratörler daha küçük, daha basit işlemler ve zaten kalıntı olan bir terim daha az olan bir alıntı modeli alır. Mevcut entegrasyonlar kırılmaz (yönetici WithdrawPnl hariç), ancak uyumluluk parçası geçicidir — kaldırılmadan önce uygun bir zamanda geçiş yapın.

Komut düzeyinde değişiklikler

SwapBaseIn / SwapBaseOut — 18 → 9 hesap (eski düzen hala uyumlu)

Dokuz OpenBook hesabı (amm_open_orders, serum_program, serum_market, serum_bids, serum_asks, serum_event_queue, serum_coin_vault, serum_pc_vault, serum_vault_signer) kaldırılır. Uyumluluk: komut 9 dışında bir sayıda hesap alırsa, eski 18 hesaplı düzen ile ayrıştırılır; Serum hesapları hala konumlarını işgal etmelidir ancak içerikleri artık doğrulanmaz veya kullanılmaz.

Deposit — 14 → 12 hesap (eski düzen hala uyumlu)

amm_open_orders (eski #3) ve serum_market (eski #9) kaldırılır. 14 hesap geçirildiğinde, uyumluluk için eski düzen ayrıştırılır.

Withdraw — 21 (+1 isteğe bağlı) → 12 hesap (eski düzen hala uyumlu)

Dokuz Serum hesabı kaldırılır. Eski 21 veya 22 hesaplı düzenler hala kabul edilir, ancak 22. isteğe bağlı referrer_pc_wallet için referral ücreti mantığı kaldırılmıştır — hesap hala geçirilebilir ancak artık etkili olmaz.

WithdrawPnl — 16 (+1 isteğe bağlı) → 10 hesap (⚠️ uyumluluk yolu yok, kırıcı değişiklik)

Sabit 10 hesaplı, yalnızca yönetici düzeni. Eski düzen için hiçbir uyumluluk ayrıştırması yoktur; bunu göndermek hesap hizalaması nedeniyle InvalidTokenCoin gibi hatalarla başarısız olur. Mantık değişikliği: havuzun mevcut fonları birikmiş PnL’yi çekmek için yetersiz olduğunda, havuz artık CancelAllOrdersState / Disabled durumuna konulmaz; komut doğrudan TakePnlError döndürür. İsteğe bağlı referrer_pc_wallet da benzer şekilde kaldırılmıştır.

Havuz-varlık hesaplama değişikliği

Formül tarihsel olarak havuzun OpenBook OpenOrders hesabında açık emirler olarak tuttuğu fonları eklemiştir. Bu terim, havuz emirleri göndermeyi durdurduğundan beri pratikte sıfır olmuştur; bu yükseltme bunu formülden tamamen kaldırarak, yalnızca kasa hesaplamasını bırakır:
Formül
Eskikasa bakiyeleri + açık emir fonları (native_coin_total / native_pc_total) − beklemede olan PnL (need_take_pnl)
Yenikasa bakiyeleri − beklemede olan PnL (need_take_pnl)

Güncellenen sayfalar

  • products/stable/overview — saf-AMM modeli, OpenBook bağımlılığı kaldırıldı, karşılaştırma ve hesap sayısı tabloları güncellendi.
  • products/stable/index — “Ne olduğu” ve temel bilgiler tablosu artık OpenBook bağımlılığını iddia etmez.
  • products/stable/accounts — OpenBook hesapları envanterden kaldırıldı; AmmInfo Serum/açık emirler alanları eski/kullanılmayan olarak işaretlendi; havuz-varlık notu eklendi.
  • products/stable/instructions — uyumluluk çıkışları ile yeni Swap / Deposit / Withdraw / WithdrawPnl hesap tabloları; diğer tüm komutlar (Initialize, PreInitialize, InitModelData, UpdateModelData, MonitorStep, SetParams, WithdrawSrm, SimulateInfo) kaldırıldı / artık çağrılamaz olarak işaretlendi.
  • products/stable/math — havuz-varlık formülü güncellemesi; MonitorStep / OpenBook bölümü uzun süredir emekli olarak yeniden çerçevelendi.
  • products/stable/fees — “OpenBook’tan PnL” bölümü emekli; koleksiyon akışı artık OpenBook doldurmaları kapatmaz.
  • products/stable/code-demos — hesap sayısı rehberi güncellendi; SDK hala düzen seçimini soyutlar.
Doğrulandı:
  • raydium-stable program kaynağı (yükseltme sonrası instruction.rs / processor.rs).
  • Solana mainnet-beta üzerinde canlı Stable AMM program dağıtımı.