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 →
Bu, dokümantasyonun değişiklik günlüğüdür — projenin yayına alınmasından itibaren bu sayfaların güncelleme kaydıdır. Protokolün kendi tarihsel zaman çizelgesi için bkz.
introduction/history-and-milestones. Buradaki her giriş bir tarih, etkilenen bölümlerin listesi, tetikleyici ve yazılı içeriğin zincir üstü duruma ile program kaynağına karşı en son ne zaman çapraz kontrol edildiğini belirten bir doğrulama tarihi içerir.Yayımlanmadı — CLMM: limit emirleri, tek taraflı ücret, dinamik ücret
Bir sonraki CLMM sürümü, pool düzeyinde üç yeni özellik ekler. Bunlar, pool oluşturma anında isteğe bağlı olarak etkinleştirilir ve mevcut pool’lar ile pozisyonlarla geriye dönük olarak uyumludur.Entegratörler için özet
- Limit emirleri artık birinci sınıf CLMM temel öğeleridir. LP’ler, bunları destekleyen bir pool’da tek tikli emir açabilir; emir, bir swap’ın tiki geçtiğinde FIFO sırasıyla gerçekleştirilir ve zincir dışı bir bekçi (
limit_order_admin), sahibinin çevrimiçi olmasına gerek kalmadan gerçekleşmiş çıktıyı tahsil edebilir. Yedi yeni SDK yöntemi (openLimitOrder,increaseLimitOrder,decreaseLimitOrder,settleLimitOrder,closeLimitOrder,closeAllLimitOrder,settleAllLimitOrder) ve/limit-order/altında üç yeni Temp API uç noktası (aktif emirler, kullanıcı başına geçmiş, PDA başına olay günlüğü) tam akışı kapsar. - Tek taraflı ücret (
CollectFeeOn), bir pool’un swap ücretlerini girdi tarafından (mevcut yöntem, mod0), her zamantoken_0’dan (mod1) veya her zamantoken_1’den (mod2) toplamasına olanak tanır. Çiftin bir tarafının kanonik muhasebe token’ı olduğu durumlarda kullanışlıdır. - Dinamik ücret, bir pool’un hızlı tik hareketiyle yükselen ve zamanla azalan, her katman için
DynamicFeeConfigve her pool içinDynamicFeeInfoile kalibre edilen bir volatilite takip ek ücretine katılmasına olanak tanır. Yeni/main/clmm-dynamic-configuç noktası, katman listesini sunar. - Yeni bir talimat olan
CreateCustomizablePool, pool oluşturma anında üç ayarı da ortaya çıkarır. KlasikCreatePool, varsayılan ücretli ve limit emirsiz pool’lar için çalışmaya devam eder. - İndeksleyici için kırıcı değişiklik:
PoolStateüzerindeki yön başına hacim sayaçları (swap_in_amount_token_{0,1},swap_out_amount_token_{0,1}) ve ömür boyu ücret sayaçları (total_fees_token_{0,1},total_fees_claimed_token_{0,1}),fee_onvedynamic_fee_infoiçin yer açmak amacıyla doldurma alanına taşındı. Bu alanları doğrudan okuyan indeksleyiciler, zincir üstüObservationhalkasına veya API’ye geçiş yapmalıdır.
Bu neden önemlidir (trader’lar, LP’ler ve entegratörler için)
- Trader’lar, uzun kuyruklu ve etkinliğe dayalı çiftlerde daha sıkı fiyat teklifleri alır: dinamik ücret, LP’lerin aralıkları aktif olarak genişletmesine gerek kalmadan pool’un volatilite ek ücretlerini alıcıdan absorbe etmesini sağlar; limit emir seviyeleri ise aralık genelinde sermaye taahhüt etmeden belirli fiyatlarda zincir üstü likiditeyi derinleştirir.
- LP’ler, yoğunlaştırılmış aralıklar ve tam aralık pozisyonlarının yanında üçüncü bir strateji elde eder: tam fiyat emirleri parklamak, fiyat ziyaret ettiğinde gerçekleştirilmek ve quote token’a dönüştürmek. Gerçekleşen kısım için aktif yeniden dengeleme gerekmez.
- Entegratörler, dinamik ücretli pool’ları deterministik olarak modelleyebilir — algoritma ve parametreler tamamen zincir üstündedir, kalibrasyon katmanları sorgulanabilir ve swap yolu şekil olarak değişmemiştir (yalnızca adım başına ücret değişir).
Programda yapılan değişiklikler
Yeni hesaplar
DynamicFeeConfig— katman başına kalibrasyon kaydı (filtre süresi, bozunma süresi, azaltma faktörü, dinamik ücret kontrolü, maksimum volatilite akümülatörü).CreateDynamicFeeConfig(yönetici) tarafından oluşturulur, dinamik ücret etkinleştirildiğindeCreateCustomizablePooltarafından referans alınır.LimitOrderState— emir başına hesap (PDA tohumları:[owner, limit_order_nonce, order_nonce]); pool’u, tiki, tarafı, girdi miktarını, gerçekleşmemiş oranı, FIFO kohort fazını ve muhasebe anlık görüntülerini tutar. Yaşam döngüsü örtüktür (filled_amountvetotal_amountkarşılaştırması, artı hesap varlığı):Açık → Gerçekleşti → Tahsil Edildi → Kapatıldı.LimitOrderNonce— limit emir PDA tohumlarını alan, (sahip, nonce_index) başına monoton artan sayaç.nonce_index: u8, aynı sahibin emirleri en fazla 256 bağımsız nonce akışına bölmesine olanak tanır.
PoolState yeniden yapılandırması
| Alan grubu | Eski düzen | Yeni düzen |
|---|---|---|
| Yön başına hacim sayaçları | swap_in_amount_token_0, swap_out_amount_token_0, swap_in_amount_token_1, swap_out_amount_token_1 | padding5: [u128; 4] içine dahil edildi |
| Ömür boyu ücret sayaçları | total_fees_token_0, total_fees_claimed_token_0, total_fees_token_1, total_fees_claimed_token_1 | padding6: [u64; 4] içine dahil edildi |
| Tek taraflı ücret | — | fee_on: u8 (0 = FromInput, 1 = Token0Only, 2 = Token1Only) |
| Dinamik ücret | — | dynamic_fee_info: DynamicFeeInfo (gömülü) |
PoolState’ten Observation halkasına veya API’ye taşıyın. Kullanımdan kaldırılan sayaçlar, mevcut pool’larda sıfırlanmamaktadır (en son taşıdıkları değerleri tutmaktadır); bu nedenle yükseltme sonrasında bu sayaçları yeniden okumak eski verileri döndürecektir.
TickState eklemeleri (kırıcı değişiklik yok)
TickState’in sonuna dört yeni alan eklenmiş, bunlar kuyruk dolgusu alanlarının bir kısmının yerini almıştır:
order_phase: u64— bu tikteki limit emir kohortlarını birbirinden ayıran sayaç.orders_amount: u64— bu tikteki tüm açık emirlerin taahhüt ettiği toplam girdi (bunların tamamının tamamen gerçekleşmemiş olması gerekmez).part_filled_orders_remaining: u64— swap’lar tarafından tüketilmekte olan kohortda hâlâ gerçekleşmemiş girdi.unfilled_ratio_x64: u128— her emrin dolum payını hesaplamak için kullanılan Q64.64 oranı.
Yeni talimatlar
CreateDynamicFeeConfig(yönetici) — kalibre edilmiş birDynamicFeeConfigkatmanı oluşturur. Yetki:CreateAmmConfigile aynı hazine çoklu imzası.UpdateDynamicFeeConfig(yönetici) — mevcut bir katmanın parametrelerini günceller.CreateCustomizablePool—collect_fee_on,enable_dynamic_feevedynamic_fee_config’i ortaya çıkaran pool oluşturma giriş noktası.CreatePoolile birlikte var olur; yeni knob’lara ihtiyaç duyan herhangi bir yeni pool içinCreateCustomizablePoolönerilir.OpenLimitOrder— tek tikli limit emir açar.LimitOrderNonce’u artırır,LimitOrderStatetahsis eder ve emri tikteki FIFO kohortuna yerleştirir.IncreaseLimitOrder/DecreaseLimitOrder— bir emrin gerçekleşmemiş kısmını ayarlar. Tamamen gerçekleşmiş bir emirdeInvalidOrderPhaseile geri döner.SettleLimitOrder— gerçekleşmiş çıktıyı sahibin ATA’sına aktarır. Çağıran, sahip veya pool’unlimit_order_adminbekçisi olabilir.CloseLimitOrder— kira geri kazanımı için tamamen tahsil edilmiş bir emri kapatır.
SwapV2 davranış değişiklikleri
Swap yolu şekil olarak değişmemiştir; ancak yol boyunca artık üç şey gerçekleşmektedir:
- Dinamik ücret (etkinleştirildiğinde): pool’un
DynamicFeeInfo’su her adımda güncellenir (bozunma → birikim → sınırlama) ve ortaya çıkan ek ücret, o adım için temel ücretin üzerine eklenir. - Limit emri eşleştirmesi (adım, açık emirleri olan başlatılmış bir tiki geçtiğinde): swap girdisinin bir kısmı o tikteki kohortu doldurmak için FIFO sırasıyla tüketilir ve
unfilled_ratio_x64atomik olarak güncellenir. - Tek taraflı ücret yönlendirmesi (
fee_on != 0olduğunda): ücret, swap yönünden bağımsız olarak her zaman girdi tarafından değil,token_0veyatoken_1’den alınır.
Yeni hata kodları
ErrorCode enum’u bu sürümde yeniden numaralandırıldı: beş eski varyant (LOK, ZeroMintAmount, InvalidLiquidity, TransactionTooOld, InvalidRewardDesiredAmount) kaldırıldı ve on bir yeni varyant eklendi. Anchor, hataları 6000’den enum sırası bazında numaralandırdığından, kaldırılan konumlarda ve sonrasındaki her hata kodu kaymıştır — sayısal kodları doğrudan kodlamış istemcilerin yeniden eşleştirmesi gerekir.
Yeni kodlar şunlardır:
6040OrderAlreadyFilled6041InvalidOrderPhase6042InvalidLimitOrderAmount6043OrderPhaseSaturated6044InvalidDynamicFeeConfigParams6045InvalidFeeOn6046ZeroSqrtPrice6047ZeroLiquidity6048MissingBaseFlag6049MissingMintAccount6050MissingTokenProgram2022
SDK’da yapılan değişiklikler (@raydium-io/raydium-sdk-v2)
raydium.clmmüzerinde yeni yöntemler:createCustomizablePool,openLimitOrder,increaseLimitOrder,decreaseLimitOrder,settleLimitOrder,settleAllLimitOrder,closeLimitOrder,closeAllLimitOrder.raydium.apiüzerinde yeni REST yardımcıları:getClmmDynamicConfigs,getClmmLimitOrderConfigs.- Yeni türler:
CollectFeeOnenum,DynamicFeeConfig,DynamicFeeInfo,LimitOrderState,LimitOrderConfig. - Dahili yeniden düzenleme:
utils/,libraries/olarak taşındı. Paket barrel’ı değişmemiştir; yalnızca@raydium-io/raydium-sdk-v2/utils/...altındaki derin içe aktarmaların…/libraries/...olarak güncellenmesi gerekir.
products/clmm/code-demos sayfasında bulunmaktadır.
API’lerde yapılan değişiklikler
api-v3—/main/altında iki yeni uç nokta:GET /main/clmm-dynamic-config—DynamicFeeConfigkatmanlarının listesi.GET /main/clmm-limit-order-config— pool başına limit emir yapılandırması.
temp-api-v1—/limit-order/altında üç yeni uç nokta:GET /limit-order/order/list?wallet=…— bir cüzdanın şu an aktif emirleri (açık ve kısmen gerçekleşmiş; indeksleyicinin Redis önbelleğinden sunulur; aynı yük her iki aşamayı datotalAmount/filledAmount/pendingSettlearacılığıyla kapsar).GET /limit-order/history/order/list-by-user?wallet=…— bir cüzdanın geçmiş limit emirleri. İsteğe bağlı filtreler:poolId,mint1,mint2,hideCancel.nextPageId/size(maks. 100) ile imleç tabanlı sayfalama.GET /limit-order/history/event/list-by-pda?pda=…— bir veya daha fazla virgülle ayrılmış limit emir PDA’sı için PDA başına olay günlüğü (open/increase/decrease/settle/close).nextPageId/size(maks. 100) ile imleç tabanlı sayfalama.
Yetki kapsamı
limit_order_admin, zincir dışı operasyonel bir bekçidir; çoklu imza değildir. Yalnızca mevcut emirlerde SettleLimitOrder ve CloseLimitOrder’ı çağırabilir; tahsil işleminin çıktısı her zaman sahibin ATA’sına ulaşır. Pool alanlarını değiştiremez, emir açamaz veya değiştiremez, başka hiçbir şey için imza atamaz. Bkz. Yönetici anahtarları ve çoklu imza → CLMM.
Güncellenen sayfalar
products/clmm/overview— yeni “Yenilikler” bölümü ve güncellenmiş sonraki adım bağlantıları.products/clmm/accounts— üç yeni hesap, geçiş uyarısıylaPoolStateyeniden yapılandırması,TickStateeklemeleri, yeni PDA yardımcıları.products/clmm/instructions— yedi yeni talimat,SwapV2davranış eki, güncellenmiş durum değişikliği matrisi.products/clmm/fees— tek taraflı ücret bölümü, parametre tablosuyla dinamik ücret bölümü.products/clmm/math— limit emri eşleştirme sözde kodu, dinamik ücret türetimi.products/clmm/code-demos—createCustomizablePooldemosu, tam limit emri izlencesi, yeni tuzaklar.algorithms/clmm-math— çok tikli swap döngüsünde limit emri eşleştirme ve dinamik ücrete çapraz referans.sdk-api/typescript-sdk— CLMM modülü eklemeleri bölümü,utils/→libraries/geçiş notu.api-reference/openapi/api-v3.yaml— yanıt şemalarıyla iki yeni uç nokta.api-reference/openapi/temp-api-v1.yaml— istek ve yanıt şemalarıyla üç yeni limit emir uç noktası (/limit-order/order/list,/limit-order/history/order/list-by-user,/limit-order/history/event/list-by-pda).api-reference/api-v3/overview— yeni CLMM yapılandırma uç noktaları notu.api-reference/temp-api-v1/overview— yeni aktif emir, kullanıcıya göre geçmiş ve PDA’ya göre olay uç noktaları notu.reference/error-codes— on bir yeni CLMM hata kodu (6040–6050) ve kaldırılan beş eski kod; kaldırma noktalarından sonraki sayısal kodlar kaymıştır.security/admin-and-multisig— sınırlı yetki açıklamasıyla yeniDynamicFeeConfigyönetici satırı velimit_order_adminbekçi satırı.
raydium-clmmkaynağı.@raydium-io/raydium-sdk-v2kaynağı.api-v3vetemp-api-v1kaynağı.
2026-04-26 — İlk yayın
Raydium dokümantasyon setinin ilk genel sürümü. Doğrulandı:- Solana mainnet-beta üzerindeki canlı program dağıtımları.
@raydium-io/raydium-sdk-v2@0.2.42-alpha.- Nisan 2026’ya kadar kamuya açık Raydium dokümanları ve zincir üstü referanslar.
Dokümantasyon kuralları
- Sürümleme: Bu dokümantasyon takvim tabanlı sürümleme kullanır (YYYY-AA-GG). Her güncelleme, dosyanın başına yeni bir giriş ekler.
- Doğrulama tarihi: Her giriş, içeriğin zincir üstü / API durumu ve program kaynağına karşı en son ne zaman çapraz kontrol edildiğini kaydeder. Belirtilmemişse, girişin ana tarihini esas alın.
- Kırıcı değişiklikler: Etkilenen sayfalarda kutulu uyarıyla belirtilir ve aşağıdaki girişte etiketlenir.
- Kapsam: Bu değişiklik günlüğü dokümantasyon setinin kendisini kapsar. Protokolün kendi tarihsel zaman çizelgesi
introduction/history-and-milestonessayfasında yer alır ve “Raydium’da X ne zaman gerçekleşti” sorusu için doğru kaynaktır.
Düzeltmeler
Bu dokümantasyonda bir hata bulursanız lütfen dokümantasyon deposunda bir konu açın veya pull request gönderin. Düzeltmeler bu değişiklik günlüğüne kaydedilir.Bağlantılar
introduction/history-and-milestones— protokolün kendi zaman çizelgesi.security/audits— denetim geçmişi.ray/protocol-fees— protokol ücret dağılımı.reference/program-addresses— program kimliği doğruluk kaynağı.


