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.
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 →
Sürüm bilgisi
- SDK:
@raydium-io/raydium-sdk-v2@0.2.42-alpha - Network: mainnet-beta
- Router program ID:
routeUGWgWzqBWFcrCfv8tritsqukccJPu3q5GPP3xS - Doğrulandı: Nisan 2026
Örnek 1: SDK tabanlı routing
Kaynak:src/trade/routeSwap.ts
Raydium SDK, route oluşturmayı soyutlar. Multi-hop route oluşturmak ve router aracılığıyla otomatik olarak yürütmek için SDK’nın trade fonksiyonlarını kullanın.
Kurulum
Multi-hop swap oluşturun
@raydium-io/raydium-sdk-v2 içinde routing, raydium.tradeV2 üzerinde gösterilir. Uçtan uca şekil — havuz verilerini getirme, routeları hesaplama, çıktıya göre sıralama ve swap işlemini oluşturma — aşağıda gösterilmiştir; bu raydium-sdk-V2-demo/src/trade/routeSwap.ts içindeki kanonik örnek ile eşleşir.
Beklenen davranış
SDK aşağıdakileri yönetir:- AMM v4, CPMM, CLMM ve Stable AMM arasında route keşfi.
- Account türetme (havuz durumları, vault’lar, gözlem hesapları, ATA önceden oluşturma).
- Rota multi-hop olduğunda router programı (
Router) için instruction paketleme veya tek havuz zaten en iyi fiyatı verdiğinde doğrudan havuz swap’ı. getAllRouteComputeAmountOutüzerindekislippageparametresi aracılığıyla slippage uygulanması.
raydium.tradeV2.swap, birden fazla transaction döndürebilir — birincisi yaygın olarak ara ATA’ları başlatır ve ikincisi swap işlemini gerçekleştirir. Her zaman execute() öğesine sequentially: true öğesini iletin, böylece sırayla onaylanırlar.
Örnek 2: Ham instruction oluşturma (Rust benzeri sözde kod)
Daha ince kontrol gerekiyorsa veya router’a CPI yapan bir program oluşturuyorsanız, instruction’ları elle oluşturun. Aşağıdaki örnek tag 8 (SwapBaseIn) kullanır — önerilen Current varyantı — ve kullanıcıya ait ATA’lar aracılığıyla sondan sona yönlendirir.
Senaryo: USDC → SOL (CPMM) → mSOL (CPMM)
Adım 1: Kullanıcının ATA’larını türetin
Adım 2: Her hop için hesapları toplayın
Hop 1 USDC/SOL üzerinde CPMM’dir. Hop 2 SOL/mSOL üzerinde CPMM’dir.Adım 3: Instruction’ı oluşturun
Adım 4: İşlemi gönderin
Örnek 3: Hata işleme
Yaygın hatalar ve nasıl kurtarılacağı:ExceededSlippage
Çıktıminimum_amount_out öğesinden daha az idi. Daha yüksek slippage toleransıyla yeniden deneyin veya route’ı yeniden alıntılayın.
SqrtPriceX64 (CLMM)
Bir CLMM hop’ının fiyatılimit_prices sınırları dışına çıktı. Sınırları güncelleyin ve yeniden deneyin.
InvalidOwner
Bir ara veya çıkış ATA çağırıcı tarafından sahip olunan değildir. Router her slot’ta sahipliği doğrular; her geçirilen ATA’nın kullanıcının cüzdanından türetildiğinden emin olun (başka bir otoriteden değil).İpuçları ve en iyi uygulamalar
Ara ATA’ları önceden oluşturun
İlk kez yeni bir ara token aracılığıyla yönlendirmeden önce, route’ın doğrulama başarısız olmaması için kullanıcının ATA’sını oluşturun:CreateSyncNative (tag 5) tercih edin — ATA’yı oluşturur, SOL’yi transfer eder ve bir instruction’da senkronize eder.
Yürütmeden önce fiyat belirleyin
Instruction’ı oluşturmadan önce her zaman havuzları sorgulayın ve beklenen çıktıyı hesaplayın:Daha yeni instruction varyantlarını kullanın (8–9)
Taglar 8 ve 9 (SwapBaseIn ve SwapBaseOut), limit_prices ile daha hoşgörülüdür. Eski varyantlar yerine bunları tercih edin, CLMM fiyat doğrulamasına ihtiyacınız yoksa.
Sonraki adımlar
products/routing/instructions— tam instruction referansı.products/routing/accounts— account türetme detayları.products/cpmm/code-demos— karşılaştırma için CPMM swap örnekleri.reference/program-addresses— kanonik program ID’leri ve devnet adresleri.
@raydium-io/raydium-sdk-v2on npmraydium-io/raydium-sdk-V2(açık kaynak)raydium-io/raydium-sdk-V2-demo—routeSwap.tsdahil resmi uçtan uca demolar- AMM Routing program kaynağı herkese açık değildir; program ID’sini canlı API’ye ve zincir üzerindeki bytecode’a göre doğrulayın


