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 →
Bir agreagatörün görevi, kullanıcıya birçok havuz arasında mümkün olan en iyi fiyatı sunmak, tek bir girişi birden çok havuz rotasına bölmek ve bunu atomik olarak yürütmektir. Bu sayfa işin Raydium’a özgü parçalarını belgelendirir: keşif, fiyat teklifi ve işlem oluşturma.
Keşif
Havuz envanteri
Her ürün için canlı Raydium havuzlarının tam listesine ihtiyacınız var. Üç seçenek vardır:- REST API (en basit):
GET https://api-v3.raydium.io/pools/info/list?poolType=all&pageSize=1000&page=1havuzları 1000 adımlar halinde döndürür. Hepsine sahip olana kadar sayfalandırın. 1–5 dakika için önbelleğe alın. - On-chain tarama:
getProgramAccountsişlemini CPMM, CLMM ve AMM v4 program kimliklerine karşı çalıştırın, durum hesabı ayrıştırıcısı tarafından filtrelenmiş. ~10 saniye RPC zamanıyla yaklaşık her canlı havuzu verir. API’nin kapalı olduğu veya hız sınırlandırılmış olduğu durumlarda yararlıdır. - Hibrit: API’yi birincil kaynak olarak kullanın; günlük on-chain taramasını sağlama kontrolü olarak çalıştırın. Ekip API’nin kapsamlı kalmasını garantiler, ancak doğrudan CPI aracılığıyla oluşturulan havuzlar (ön uç yok) ara sıra gecikebilir.
Mint-çifti arama
Belirli bir(mintA, mintB) çiftinin özel bir durumu için, GET /pools/info/mint?mint1=...&mint2=...&poolType=all&sort=liquidity kullanın. Her işlem ücreti seviyesi ve ürün türünde her havuzu döndürür. İyi trafiği gören mintlerde çift başına yaklaşık ~10 sonuç yaygındır; TVL’ye göre sıralayın ve yönlendirme için ilk birkaçını alın.
Fiyat teklifi
Fiyat teklifi matematiği ürüne göre farklılık gösterir. Yeniden uygulamak zorunda kalmamanız için SDK’nın saf matematik işlevlerini kullanın:{ amountOut, fee, priceImpact, minAmountOut }. Agreagatör karşılaştırması için amountOut’u kullanın (slippage öncesi).
Önbellek tazeliği
Havuz durumu hızlı bir şekilde eski hale gelir. Önerilen tazelik hedefleri:| Havuz türü | Yeniden getirme sıklığı | Neden |
|---|---|---|
<$100k TVL’li CPMM | <10s | Rezervler her işlemde hareket eder. |
>$10M TVL’li CPMM | 30–60s | Rezervler baskın; küçük işlemler gürültüdür. |
| CLMM | <30s | Tick sınırları; tek bir büyük işlem likiditeyi yeniden konfigüre edebilir. |
| AMM v4 | <30s | OpenBook tarafı hareketleri kasa içinde yakalanmaz. |
accountSubscribe) abone olun. Bu, modeli yoklamadan itmeye çevirir.
Token-2022 ayarlamaları
Rotadaki herhangi bir mint’in Token-2022 transfer ücreti varsa, fiyat teklifi matematik girişleri ve çıkışlarıalgorithms/token-2022-transfer-fees başına ayarlamalıdır. SDK, poolInfo.mintA.extensions.transferFeeConfig doldurulmuşsa bunu işler. Fiyat teklifine güvenmeden önce .extensions alanına bakarak onaylayın.
Yönlendirme
Tek havuz rotaları
Çoğu rota tek havuzludur.amountOut’u en yüksek olan havuzu seçin. Birden fazla yakınsa, işlem ücreti katmanı (düşük daha iyi) ile sonra TVL’ye (daha fazla daha güvenli) göre bağ kırın.
Bölme yönlendirmesi
Tek bir havuzda >%5 fiyat etkisinin olduğu büyük işlemler için havuzlar arasında bölün. Basit bir açgözlü algoritma:[(pool_A, 0.6), (pool_B, 0.3), (pool_C, 0.1)] üretir. Uygun bir dışbükey optimizasyon çözümü (örn. havuzlar arasında marjinal fiyatları eşitleme), uygulamada açgözlü sonucun ~%1’i içindedir.
Çok atlamalı rotalar
USDC → RAY → SOL aracılığıyla iki ayrı havuz, doğrudan USDC-SOL havuzunun iyi bir teklif vermediği durumlarda yaygındır (nadir). Atlamalı slippage sınırlarını uygulayın; her atlama kendi minAmountOut’u zorlar. Bkz. algorithms/slippage-and-price-impact.
Aynı havuz arasında çok atlamalı (örn. SOL-USDC’de iki CLMM atlama), tek atlama ile karşılaştırıldığında her zaman alt optimaldir — bu tür rotalar oluşturmayın.
İşlem oluşturma
Tek atlama, tek havuz
SDK’nınraydium.trade.swap’ını doğrudan kullanın:
Bölme ve çok atlama
ATA’ları + talimatları el ile oluşturun. Desen:Atomiklik
Agreagatörler atomikliği garantilamalıdır: tam rota iner veya hiçbiri enmez. Raydium’un swap talimatlarıExceededSlippage’de geri dönerler, bu nedenle bir atlama başarısız olan çok havuzlu rota, tüm işlemin geri dönmesine neden olur. Bedavadır.
Tek istisna: rotanız Raydium + üçüncü taraf DEX’ten geçerse, o DEX’in de revert-on-slippage modeline sahip olduğundan emin olun. Bazı programlar slippage sınırlarını yoksayar (nadir).
Tuzaklar
1. Eski fiyat teklifleri
Kullanıcı “125.43 RAY alacaksınız” görüp işlem iniş arasında rezervler kaymış olabilir. Gönderimden hemen önce havuz durumunu yeniden getirin; yeniden fiyat alın; yeni teklif %1’den kötüyse duraklatın ve kullanıcıdan yeniden onay isteyeceğim.2. Havuz kara listeleri
Bazı Raydium havuzları, transfer ücretleri %99’a ayarlanmış veya aktarılamayan uzantıları olan dolandırıcı jetonlardır. REST API’si bunları etiketler (tags alanına bakın); scam veya honeypot olarak etiketlenen herhangi bir havuzu atlayın. Raydium’un etiketlerinin üzerine kendi güvenlik kontrollerini çalıştırmak ihtiyatlıdır.
3. CLMM’de observation-state gereksinimi
CLMMSwapV2, bir observation_state hesabı alır. SDK bunu sizin için doldurur; elle oluşturulan talimatlar genellikle unutur, bu da programın AccountNotFound ile geri dönmesine neden olur. Her zaman bunu ekleyin.
4. Adres arama tabloları
Raydium, en çok kullanılan hesapları (ana mintler, program kimlikleri, AmmConfigs) için genel arama tabloları tutar. Agreagatörler bunları tüketmelidir — işlem başına ~100 bayt tasarrufu sağlar ve daha büyük rotaların V0’da sığmasını sağlar. LUT adreslerini çekme:5. Tıkanıklığı ele alma
Yüksek hacimli pencereler sırasında, işlemler mempool’da birden çok blok için oturabilir. TX süre sonu üzerine agresif yeniden deneme (geri dönüş üzerine değil — geri dönüşler deterministiktir) önerilir. SDK’nınsendAndConfirm seçeneği temel yeniden denemeler yapar; üretim agreagatörleri kendi mantığını (Jito paketleri, çok-RPC yayını) üzerine koyarlar.
Kontrol listesi
Canlı gitmeden önce doğrulayın:- Havuz keşfi CPMM + CLMM + AMM v4’ü kapsamlı olarak kapsar.
- Teklif, bir avuç test işlemi için Raydium’un kendi arayüzü teklifinin içinde 1 basis puan ile eşleşir.
- Bölme yönlendirmesi, herhangi bir tek havuzda >%5 etkili işlemler için başlar.
- Öncelik ücretleri, yakın havuz-program ücretlerine karşı boyutlandırılır (bkz.
integration-guides/priority-fee-tuning). - Token-2022 transfer ücretleri hesaplanır ve kullanıcıya görüntülenir.
- Slippage aşıldığında işlemler temiz bir şekilde geri döner.
- Yeniden deneme mantığı tx süresi doluşu (yeniden dene) ile geri dönüşü ayırt eder (yeniden deneme).
İşaretçiler
integration-guides/routing-and-mev— sandwich direnci, paketler.integration-guides/priority-fee-tuning— hesaplama bütçesi talimatlarını boyutlandırma.sdk-api/rest-api— havuz-liste uç noktaları.


