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 →
Tek paragrafta özet
CLMM — Concentrated Liquidity Market Maker — Raydium’un Uniswap-v3 tarzında AMM’sidir. Likidite sağlayıcının yatırımını tüm fiyat eğrisi boyunca yaymak yerine, CLMM LP’lerin belirli bir fiyat aralığına yatırım yapmalarına izin verir. Bu aralık içinde, her bir yatırılan dolar CPMM havuzunda olacağından çok daha verimlidir; aralık dışında, yatırım hiçbir gelir getirmez ve tek taraflı bir bakiye olarak kalır. Program likiditeyi tick başına (ayrıklaştırılmış bir fiyat sepeti) izler, havuz durumunu fiyatın karekökü olarak Q64.64 sabit nokta sayısı (sqrt_price_x64) olarak kodlar ve her LP pozisyonu için fungible LP token yerine bir NFT basılır.
Yenilikler
En son CLMM sürümü, Uniswap-v3 tarzında temel çerçevenin üzerine üç ekleme ile gelir. Bunlar havuz oluşturma sırasında isteğe bağlıdır ve mevcut havuzlar ile pozisyonlarla geriye dönük uyumludur:- Limit emirleri. LP’ler artık belirli bir fiyatta tek-tick emri bırakabilir ve swap yolu, swap bu tick’i geçtiğinde FIFO’da doldurmaya başlar. Emirler limit fiyatında sahibinin ATA’sına çöker; çevrimdışı bir hizmetçi (
limit_order_admin) sahibi çevrimiçi olmadan doldurulmuş emirleri toplayabilir. Bkz. Instructions → OpenLimitOrder / SettleLimitOrder ve Math → Swap sırasında limit emri eşleştirmesi. - Tek taraflı ücret (
CollectFeeOn). Havuzlar swap ücretlerini giriş tarafından (eski davranış, mod0), veya her zamantoken_0’dan (1), ya da her zamantoken_1’den (2) almak üzere yapılandırılabilir. Çiftin bir tarafının kanonik muhasebe tokeni olduğu durumlarda yararlıdır (örn. USDC). Bkz. Fees → Tek taraflı ücret. - Dinamik ücret. Havuzlar hızlı tick hareketi ile yükselen ve zaman içinde azalan volatilite izleme ücret tarifesine katılabilir. Her seviye için
DynamicFeeConfigve her havuz içinDynamicFeeInfotarafından kalibre edilmiştir. Bkz. Fees → Dinamik ücret ve Math → Dinamik ücret türetimi.
CreateCustomizablePool, havuz oluşturma sırasında üç seçeneği de ortaya koymaktadır. Klasik CreatePool limit emirleri veya dinamik ücretleri olmayan varsayılan ücretli havuzlar için çalışmaya devam etmektedir.
CLMM’nin sağladığı avantajlar
- Sermaye verimliliği. Parite etrafında ±0.1% bant içinde likiditeyi yoğunlaştıran bir stabil coin-stabil coin LP’i, aynı çift CPMM havuzuyla karşılaştırıldığında TVL başına dolar başına 100 kat ve daha fazla ücret kazanabilir.
- Pozisyon seviyesi ücret muhasebesi. Ücretler LP-mint başına değil, pozisyon başına tahakkuk eder. Aynı havuzda iki pozisyon, aralıklarına ve fiyatın aldığı yola göre farklı ücret miktarları kazanır.
- Çift başına birden fazla ücret seviyesi. Bir çift, her biri kendi ticaret ücret oranı ve tick-boşluğu ile farklı
AmmConfig’e bağlı birkaç CLMM havuzuna sahip olabilir. Web arayüzü ve yönlendiriciler geçerli fiyatta en fazla likiditeye sahip olan seviyeyi gösterir. - Doğrudan havuzda teşvik edilebilir. Havuza kadar üç ödül token akışı eklenebilir; pozisyonlar katkıda bulundukları saniye × aralık içi likiditeye göre pro-rata olarak ödülleri toplar. Bkz.
products/clmm/fees. - NFT pozisyonları. Her pozisyon, mint’i belirlenimci bir PDA’ya eşit olan fungible olmayan bir tokendır. NFT’yi transfer etmek pozisyonu transfer eder; cüzdanlar ve arayüzler pozisyonları koleksiyonlar gibi gösterebilir.
- Token-2022 desteği çiftin her iki tarafında da, CPMM ile aynı uzantı kısıtlamaları ile.
CLMM ne değildir
- Kur ve unut değil. SOL $160 iken ayarlanan bir aralık, aktif olarak ayarlamadığınız sürece SOL $80’e hareket ederse hiçbir şey kazanmaz. CLMM aktif LP’leri ödüllendirir; pasif LP’ler CPMM’de kalmalıdır.
- Açmak maliyetsiz değildir. Pozisyonun geçtiği her yeni tick-array başlatılmalı ve kira ödemesi yapılmalıdır. Geniş aralıklar daha ucuzdur; dar olanlar değildir.
- CLOB değildir. AMM v4’ün aksine, CLMM’nin OpenBook bağımlılığı yoktur. Tüm likidite tick haritasında kalır.
- CPMM’nin bir üst kümesi değildir. Maksimum aralıkta
[tick_min, tick_max]kapsayan bir CLMM pozisyonu CPMM’ye benzer şekilde davranır, ancak farklı gaz maliyetleri, farklı ücret muhasebesi modeli ve fungible LP token yoktur. Basit bir fungible-LP havuzu istiyorsanız, CPMM kullanın.
CLMM’nin CPMM ve AMM v4’ten farkları
| Boyut | AMM v4 | CPMM | CLMM |
|---|---|---|---|
| Eğri | Sabit ürün | Sabit ürün | Yoğunlaştırılmış (tick tabanlı) |
| LP payı | Fungible LP mint | Fungible LP mint | Pozisyon başına NFT |
| Likidite yaşadığı yer… | Tüm fiyatlar arasında | Tüm fiyatlar arasında | Kullanıcı tarafından seçilen aralıkta |
| Ücret seviyeleri | Sabit 0.25% | AmmConfig başına (örn. 0.25%, 1%) | AmmConfig × tick-boşluğu başına |
| Aktif yönetim | Uygulanamaz | Uygulanamaz | Gereklidir |
| Ücret muhasebesi | Havuz seviyesi | Havuz seviyesi | Pozisyon başına |
| Ödül farmları | Ayrı Farm programı | Ayrı Farm programı | Yerleşik (3 ödüle kadar) |
| Token-2022 | Hayır | Evet | Evet |
| Zincir üstü oracle | Hayır | observation halkası | havuz başına observation dizisi |
Zihinsel model
Bir CLMM havuzunu üç üst üste binmiş veri yapısı olarak düşünün:sqrt_priceuzayında sürekli bir eğri. Havuzun fiyatısqrt_price_x64olarak, bir Q64.64 sabit nokta sayısı olarak temsil edilir. Swaplar bu eğri boyunca yürür; bir tick sınırı içinde, matematik standart yoğunlaştırılmış likidite AMM matematiğidir (bkz.algorithms/clmm-math).- Ayrık bir tick haritası. Fiyatlar ticks’e —
1.0001’in tam sayı kuvvetlerine — ayrıklaştırılır. Her tick’in bilinen birsqrt_price’ı vardır. Pozisyonlar uç noktalarını tam sayı tick indeksleri olarak referans alır. Tick indeksleri depolama için sabit boyutlu tick arrays halinde gruplandırılır. - Pozisyon başına ücret ve ödül muhasebesi. Her pozisyon, son güncellemesinin zamanında global
fee_growth_insidedeğerini depolar. LP pozisyona dokunduğunda (açma, kapatma, ayarlama, toplama), program depolanan değeri geçerli globalle çıkararak ne borçlu olduğunu hesaplar. Bu, Uniswap-v3feeGrowthInside0X128 / feeGrowthInside1X128desenidir.
- Pozisyon aç: tick aralığını seç, token yatır, NFT bas, likiditeyi aralık içinde tick haritasına ekle, daha önce boş olan tick-arrays’leri başlat.
- Likiditeyi artır / azalt: NFT’nin ilişkili pozisyon hesabında ve tick haritasında depolanan miktarı ayarla; aynı zamanda birikmiş ücretleri topla.
- Swap: geçerli
sqrt_price_x64’ten ticaret yönünde yürü, aktif likiditeyi giriş tükenene veya sonraki başlatılan tick’e ulaşılana kadar tüket; tick’i geç ve yeni tarafta likiditeyi al veya bırak. - Ücretleri / ödülleri topla: her taraf ve her ödül akışı için
fee_growth_inside_now − fee_growth_inside_last×position_liquidityhesapla; dışarı transfer et.
liquidity miktarlarına göre ölçeklenmiş olarak görür.
CLMM’yi ne zaman seçmelisiniz
CLMM’yi seçin:- Stabil veya ortalamaya dönüş gösteren bir çift (USDC/USDT, jitoSOL/SOL, wBTC/BTC) için likidite sağlıyor ve parite yakınında yoğunlaştırmak istiyorsunuz.
- Fiyatı izlemeye ve rebalans yapmaya istekli bir piyasa yapıcısı sizsiniz.
- Havuz başına teşvik emisyonlarına özel olarak ihtiyacınız var ve ayrı bir farm kurmak istemiyorsunuz.
- Kendi LP ürünü için (vault, yapılandırılmış ürün vb.) pozisyon başına muhasebe gereklidir.
- Bilinmeyen fiyat keşfiyle yeni bir token başlatıyorsunuz.
- Stake edebileceğiniz, kilitleyebileceğiniz veya başka şeylerle oluşturabileceğiniz tek bir fungible LP token istiyorsunuz.
- Pasif bir LP deneyimi istiyorsunuz.
- Özellikle AMM v4’ün OpenBook üzerinde sunduğu hibrit-CLOB derinliğine ihtiyacınız vardır.
- Mevcut AMM v4 entegrasyonlarını taşıyor ve yeni pozisyon açmıyor.
Pozisyonlar NFT’dir
Bir CLMM pozisyonu zincir üstünde iki hesap tarafından temsil edilir:- Bir pozisyon NFT mint’i arz 1 ile.
- Kişisel pozisyon durumu hesabı, NFT mint’e anahtarlanmış, pozisyonun ticks, likidite ve son gözlenen ücret-büyüme değerlerini tutar.
products/clmm/ticks-and-positions’te bulunmaktadır.
Eski CLMM sürümleri ayrıca o aralık için likiditeyi birleştirmek üzere
(pool, tick_lower, tick_upper) başına bir ProtocolPositionState hesabı oluşturdular. Yeni sürümler artık onu oluşturmamakta veya kullanmamaktadır — alan hala OpenPosition / IncreaseLiquidity / DecreaseLiquidity hesap listelerinde ABI uyumluluğu için bir UncheckedAccount olarak görünmektedir, ancak program onu okumamakta veya yazmamaktadır. Toplam aralık muhasebesi tick uç noktalarında (liquidity_gross, liquidity_net) doğrudan yaşar.Bundan sonra nereye gitmeli
- Accounts — havuz, config, tick-array ve pozisyon hesabı düzenleri.
- Ticks and positions — tick haritası, tick-boşluğu, tick-array boyutlandırması, NFT tabanlı pozisyonlar.
- Math —
sqrt_price_x64, swap adım geçişi,fee_growth_insidetüretimi. - Instructions —
OpenPosition,IncreaseLiquidity,Swap,CollectRewards, limit emri ailesi veCreateCustomizablePool. - Fees and rewards — pozisyon başına ücret modeli, tek taraflı ücret modları, dinamik ücret ve üç ödül yuvası.
- Code demos — TypeScript’te pozisyon aç / ayarla / swap et / topla / limit emri / özelleştirilebilir havuz izlenecek yollar.
- Raydium CLMM kaynağı —
raydium-io/raydium-clmm - CLMM’nin doğrudan devralınan matematik için Uniswap v3 white paper (“Uniswap v3 Core”)
- Kurallı program ID’leri için
reference/program-addresses


