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 →
Destek matrisi: CPMM, Token-2022’yi tamamen destekler; transfer-fee mint’leri de dahil. CLMM, Token-2022’yi açık
SwapV2 hesapları aracılığıyla transfer ücretleriyle destekler. AMM v4, Token-2022’yi hiç desteklemez. LaunchLab, taban mint için Token-2022’yi desteklemez (klasik SPL mint’leri oluşturur). Farm v6, staking ve reward mint’lerinde Token-2022’yi destekler.Transfer ücreti nedir
Token-2022, ikinci SPL Token programıdır (TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA → TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb). Uzantıları arasında transfer-fee uzantısı, bir token mint’inde her TransferChecked işleminden aktarılan tutardan bir ücret keser. Ücret, mint otoritesi tarafından atanan bir alıcıya yönlendirilir ve otorite tarafından güncellenebilir (sınırlar içinde).
Transfer ücreti olan bir mint’in iki önemli parametresi vardır:
transfer_fee_basis_points— oran (örn. 100 = %1).maximum_fee— transfer başına mutlak cap (böylece çok büyük miktarları hareket ettiren whale’ler sınırsız ücret ödemez).
Swaplar için bu neden önemli
Bir pool’un vault’ları gerçek bakiyeleri tutar. Bir kullanıcı bir Raydium swap’ı çağırdığında:- Kullanıcı pool vault’una
amount_ingönderir. In-mint’in transfer ücreti varsa, vaultamount_in − fee_inalır,amount_indeğil. - Swap matematiği vault tarafından alınan tutarla çalışır.
- Pool, kullanıcının ATA’sına
amount_outgönderir. Out-mint’in transfer ücreti varsa, kullanıcıamount_out − fee_outalır,amount_outdeğil.
amount_in argümanını kullanırsa, değişmezlik kontrolü başarısız olur; çünkü vault program’ın düşündüğünden daha az aldı. Tersine, amount_out hesaplanırken giden transfer ücreti düşülmezse, kullanıcı bir açık görür ve programı suçlar.
Raydium CPMM ve CLMM (SwapV2 aracılığıyla) bunu şöyle yapar:
- Swap öncesi:
in_after_fee = amount_in − transfer_fee_on(amount_in, in_mint)hesaplar vein_after_fee’yi eğri matematiğinde kullanır. - Swap sonrası:
out_gross = amount_out_from_curvehesaplar,out_gross’ı kullanıcıyaTransferCheckedaracılığıyla gönderir; Token-2022 programı bunu transfer ücreti ile azaltır.
minAmountOut slippage sınırı out_gross’a (pool’un gönderdiği şey) karşı kontrol edilir, kullanıcının aldığı şeye karşı değil. Bu, her büyük Solana DEX’inin Token-2022’yi nasıl ele aldığıdır ve önemlidir; çünkü:
- Eğer pool ücret sonrasını kontrol etse, fiyatlandırma ile yürütme arasında bir ücret güncellemesi ticareti geri çevirirdi.
- Ücret öncesi kontrol etmek, başarısızlığı fiyatlandırmanın kendi kalitesine kenetler; kullanıcının band dışı ücret değişikliklerine değil.
Token-2022 ücretini hesaplama
SPL Token-2022 programı belirlenimci bir helper sunar. Rust’ta:@solana/spl-token aracılığıyla):
Ayarlanmış swap formülleri (CPMM, tam giriş)
f_pool’u pool ücret oranı, f_in’i in-mint transfer ücreti oranı, max_in’i maksimum cap’i, f_out’u out-mint transfer ücreti oranı, max_out’u maksimum cap’i olarak belirleyin.
amount_out_gross ≥ min_amount_out (user_receives ≥ min_amount_out değil). Kullanıcının minAmountOut’u SDK tarafından expected_gross · (1 − slippage) olarak ayarlanır — sınırı “alınan” tarafında tutun, “alınan” tarafında değil.
Ayarlanmış formüller (CPMM, tam çıkış)
SDK,user_receives = amount_out_exact olacak şekilde amount_in bulmak için yineleme yapar:
max_in / max_out cap’leri hesaplamayı doğrusal olmayan kılar; çünkü cap’e çarptığında ücret büyümeyi durdurur. SDK’nın computeAmountIn / computeAmountOut bunu, naif formül cap’in ötesine iterse yineleme yaparak ele alır.
Edge case’ler
Asimetrik ücretler (bir tarafın ücreti var, diğerinin yok)
Pratikte yaygın. Yukarıdaki formüller bunu zaten ele alır — eğer bir tarafınf_in = 0 varsa, ilgili terimler çöker. Programda özel bir durum yoktur.
Swap sırasında ücret güncellemeleri
Fiyatlandırma zamanı ile yürütme zamanı arasında mint’in transfer ücreti değişirse, swap ya hafif daha kötü ekonomiler ile iner (kullanıcı slippage toleransı içinde farkı taşır) ya da geri döner (minAmountOut altına gross çıkış düşer). Slippage sınırları bunu emebilir; ek koruma gerekmez.
Maksimum-ücret cap’i
Ticaret,maximum_fee’ye çarpmaya yeterince büyük olduğunda, ücret doymuş olur ve daha fazla büyüme sıfırdır. Bu, çok büyük ticaretierdeki etkili oranı asimptotik olarak sıfıra yapar; bu da derin likit olmayan pazarlarda garip fiyatlandırma eğrileri yaratabilir. SDK’nın computeAmountOut bunu hesaba katarak ele alır.
Transferilemez uzantı
Bazı Token-2022 mint’leri,NonTransferable uzantısını kullanır; bu, mint otoritesi dışında ve dışından tüm Transfer çağrılarını reddeder. Bu tür mint’ler hiçbir şekilde bir Raydium pool’unda kullanılamaz. CreatePool başlangıçta onları reddeder.
Faiz getiren mint’ler
Token-2022 ayrıca balansların zaman içinde büyüyebileceğini sağlayanInterestBearingConfig uzantısını destekler. Raydium’un pool’ları ham vault bakiyelerini okur (faiz tahakkukunu yok sayar); bu nedenle faiz getiren bir mint’li bir pool’da, LP’ler geri alma sırasında tahakkuk eden faizi saf bir hediye olarak yakalar (vault bakiyesi LP arz temsilinden daha hızlı büyüdü). Entegratörler bunu sorun olmayan olarak ele almalı ama LP tarafı için belge haline getirmelidir.
Transfer hook’ları
Token-2022’ninTransferHook uzantısı, her aktarımda keyfi CPI sağlar. Raydium CPMM bunu destekler — swap komutu hook hesaplarını iletir — ama CU yükü ekler ve hook’un iyi davranmasını gerektirir. CLMM SwapV2 de hook’ları destekler. AMM v4, Token-2022’yi hiç desteklemez; bu yüzden soru ortaya çıkmaz.
Çalışılmış örnek
CPMM pool’u,x = 1_000_000 USDY, y = 1_000_000 USDC, pool ücreti %0,25.
- USDY’nin %1 transfer ücreti vardır;
max_fee = 10_000(6 ondalak ile 0,01 USDY). - USDC’nin transfer ücreti yoktur.
amount_in = 1_000 USDY’i USDC için takas eder (tam giriş).
İşaretçiler
products/cpmm/overview— CPMM Token-2022 desteği.products/clmm/instructions— Token-2022 yönlendirmesi içinSwapV2vsSwap.solana-fundamentals/spl-token-and-token-2022— genel Token-2022 uzantı modeli.
- SPL Token-2022 transfer-fee uzantısı belgeleri
- Raydium CPMM program kaynağı (
SwapBaseInput/SwapBaseOutputToken-2022 işleme). - Raydium CLMM program kaynağı (
SwapV2).


