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 →
Bunu ne yapar? Seçtiğiniz işlem ücreti katmanında yeni bir CLMM havuzu oluşturur, sonra ilk yoğunlaştırılmış pozisyonu açar. İki işlem, bir betik. Kod,
raydium-sdk-V2-demo/src/clmm klasöründeki resmi demolardan alınmış ve tek bir Node çalıştırılabilir dosyaya uyarlanmıştır.Kurulum
Hızlı başlangıç ön koşullarını okuduğunuzdan emin olun veRPC_URL, KEYPAIR ve bağımlılıkların yüklü olduğundan emin olun.
CLMM havuzu oluşturma işleminin bir kerelik ücreti ve ilk pozisyon için tick array kirası vardır. Ayrıca her iki seed mint’in de cüzdanınızda olması gerekir — seçilen aralık içinde fiyat oturduğunda bir pozisyon açmak her iki tarafta da likidite gerektirir.
Adım 1 — config.ts
config.ts olarak kaydedin. Bu, demo repo’sunun src/config.ts.template ile aynı yapıdadır — disableFeatureCheck zorunlu olarak true değerine ayarlanmıştır (SDK başlangıçta özellik tespitinde engellenmemesi için herhangi bir önemsiz entegrasyon için önerilir):
Adım 2 — createPool.ts
config.ts ile birlikte kaydedin. Kaynak: src/clmm/createPool.ts.
Adım 3 — createPosition.ts
Kaynak: src/clmm/createPosition.ts.
Adım 4 — utils.ts
Kaynak: src/clmm/utils.ts.
Çalıştırın
Az önce ne oldu
İşlem 1 —raydium.clmm.createPool başlatıldı:
(mint1, mint2, ammConfig)için kanonik PDA’da havuz durumu,token_0_vaultvetoken_1_vault(mint byte sırasına göre sıralanmış),observationhalka arabelleği,- satır içi tick-array bitmap,
sqrt_price_x64’ü initialPrice’inizden ayarladı.
İşlem 2 — raydium.clmm.openPositionFromBase yoğunlaştırılmış bir pozisyon açtı:
- cüzdanınıza bir pozisyon NFT’si bastı (NFT pozisyondur; onu aktarmak pozisyonu aktarır),
- alt ve üst sınırlarda tick dizileri tahsis etti (bu aralıklardaki ilk pozisyon için bir kerelik kira; tick dizileri program tarafından asla kapatılmaz, bu nedenle aynı dizilerdeki sonraki pozisyonlar fazladan kira ödemez),
inputAmountmint1vemint2’nin eşleşen çift miktarını yatırdı (PoolUtils.getLiquidityAmountOutFromAmountIntarafından hesaplandı),- pozisyonu aralık genişliğiyle orantılı likidite ile krediye aldı.
[0.000001, 100000]) etkili olarak tam aralık; mevcut spot’a yakın ücretleri yoğunlaştırmak için sıkılaştırın.
İşlem ücreti katmanı seçme
clmmConfigs[0] en düşük işlem ücreti katmanıdır. Tam set GET https://api-v3.raydium.io/main/clmm-config adresinde yayınlanır:
| İndeks | tradeFeeRate | Tick aralığı | Kullanım zamanı |
|---|---|---|---|
| 0 | 100 (1bp) | 1 | Sabit/sabit, çok düşük kalıcı olmayan kayıp beklenir |
| 1 | 500 (5bp) | 10 | Yüksek ilişkili varlıklar (ör. likit ödün veren vs temel) |
| 2 | 2_500 (25bp) | 60 | Standart token çifti, mavi çip + sabit |
| 3 | 10_000 (1.00%) | 120 | Kalıcı olmayan kayıp riskinin yüksek olduğu değişken veya ince çift |
user-flows/choosing-a-pool-type adresinde görün.
Sık karşılaşılan hatalar
Pool already exists for this config— Bu(mint1, mint2, ammConfig)üçlüsü için zaten bir CLMM havuzu mevcut. Mevcut havuz ID’sini arayın ve Adım 2’yi atlayın.Insufficient funds for amount B— Cüzdanınızda istenenmintAmiktarı var ama eşleşenmintByok. Fiyat aralık içinde oturduğunda bir pozisyon açmak her iki tarafta da likidite gerektirir.Tick out of range—lowerPriceveyaupperPrice’ınız temsil edilebilir fiyat aralığının dışında. Mevcut fiyata göre daha makul bir aralık kullanın.- Eski fiyat — API’den bir fiyat teklifi 5–60 saniye eski olabilir.
executePositionslippage’de başarısız olursa, imzalamadan hemen önce canlı fiyatı yeniden getirmek içincreatePosition.ts’degetRpcClmmPoolInfobloğunun açıklamasını kaldırın.
Uyarılar
- Pozisyon NFT’si tek tutamağınız. NFT’yi kaybederseniz veya aktarırsanız, pozisyona erişimi kaybedersiniz. Bunu bir anahtar gibi ele alın.
- Aralık dışı pozisyonlar ücret kazanmaz. Fiyat
[lowerPrice, upperPrice]aralığının dışına çıkarsa, pozisyonunuz tamamen bir varlıkta park edilir ve yeniden dengelenene kadar hiçbir şey kazanmaz. - Tick array kirası tek yönlüdür. Daha önce başlatılmayan bir tick dizisine temas eden ilk pozisyon kirasını öder; program, tick dizilerini kapatmanın bir yolunu ortaya koymaz, bu nedenle bu kira kalıcı. Aynı dizideki sonraki pozisyonlar ücretsizdir.
Sonra
products/clmm/overview— tam CLMM mekanikleri.products/clmm/ticks-and-positions— tick’lerin arkasındaki matematik.algorithms/impermanent-loss— CLMM IL amplifikasyonunu nicelikle belirtme.user-flows/create-clmm-pool— Raydium UI üzerinden aynı akış.

