> ## 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.

# AMM v4 ücretleri

> 0,25% işlem ücreti, LP/protokol bölümü, OpenBook dolguları tarafından oluşturulan PnL ve yöneticinin tahakkuk eden protokol ücretlerini nasıl topladığı.

<Info>
  **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 →](/products/amm-v4/fees)
</Info>

## Tek yayınlanmış tier

CPMM ve CLMM'nin aksine, AMM v4'te **`AmmConfig` hesabı yoktur**. Ücretler her pool'un `AmmInfo.fees` yapısında doğrudan depolanır ve pool oluşturulurken sabitlenir. Esasen her canlı AMM v4 pool'u kapsayan varsayılanlar:

| Zincir üstü alan                                    | Varsayılan    | Anlam                                                                                                                                                        |
| --------------------------------------------------- | ------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `swap_fee_numerator / swap_fee_denominator`         | `25 / 10_000` | **AMM rotası swaplarında brüt işlem ücreti: giriş hacminin %0,25'i.**                                                                                        |
| `trade_fee_numerator / trade_fee_denominator`       | `25 / 10_000` | OpenBook entegrasyonu tarafından ücret dahil limit siparişi fiyatlandırmasını hesaplamak için kullanılır. Varsayılan olarak `swap_fee` ile aynı `%0,25`'tir. |
| `pnl_numerator / pnl_denominator`                   | `12 / 100`    | **Protokolün işlem ücretinin payı: %12** — yani hacmin `%0,25 × %12 = %0,03`'ü. `need_take_pnl_*` sayaçlarına tahakkuk eder.                                 |
| `min_separate_numerator / min_separate_denominator` | `5 / 10_000`  | Ücret bölümü yuvarlama mantığı tarafından kullanılan iç hassasiyet tabanı.                                                                                   |

`pnl_numerator / pnl_denominator`'ın işlem hacminin değil, işlem ücretinin bir kesri olduğunu unutmayın — bu yaygın bir yanlış okumadır. LP payı tamamlayıcı (%88 ücret = hacminin %0,22'si) olup örtülüdür; ayrı bir "LP payı" numaratörü yoktur.

Erken dönem az sayıda pool farklı numaratörler ile oluşturulmuştur; her zaman alıntı yapmadan önce `AmmInfo.fees`'i okuyun.

**Fon ücreti** ve **yaratıcı ücreti** satırı yoktur: bunlar AMM v4'ün orijinal ücret modelinde mevcut olmayan CPMM/CLMM'nin icatlarıdır.

## Bölümü nasıl hesaplanır

Her swapda pool, giriş miktarından brüt işlem ücretini alır, sonra dağıtır:

```
gross_fee   = ceil(amount_in * swap_fee_numerator / swap_fee_denominator)        // amount_in'in %0,25'i
pnl_portion = gross_fee * pnl_numerator / pnl_denominator                        // brüt_ücretin %12'si
lp_portion  = gross_fee − pnl_portion                                            // brüt_ücretin %88'i
```

* `lp_portion` vault'ta kalır ve sonraki `k`'ye katkıda bulunur. LP'ler bunu daha sonra LP tokenlerini satarak yakalarlar.
* `pnl_portion`, swap giriş tarafına bağlı olarak `AmmInfo.state_data.need_take_pnl_coin` veya `need_take_pnl_pc`'yi artırır.

CPMM'deki ile aynı değişmez koruma numarası: PnL miktarı fiziksel olarak vault'ta oturur ancak eğride kullanılan rezervlerden çıkarılır, böylece `TakePnl` tokenları fiyatı kaydırmadan dışarı taşır.

## OpenBook'tan PnL (tarihsel)

<Note>
  **Artık tahakkuk etmiyor.** OpenBook entegrasyonu devre dışı bırakıldığı için, bu bölümde açıklanan *ikinci* PnL akışı artık oluşturulmamaktadır. Mevcut pool'lardaki `total_pnl_{coin,pc}` sayaçları tarihsel değerler içerebilir, ancak yeni miktarlar eklenmez. Yukarıdaki %0,03 protokol ücreti yolu etkilenmez ve hala aktiftir.
</Note>

Tarihsel olarak, AMM v4'ün ikinci bir ücrete benzer gelir akışı vardı: limit siparişleri OpenBook'ta doldurulduğunda, pool dolgunun taker tarafında olabilir ve piyasanın yapıcı/alıcı spreadini kazanabilir veya ödeyebilir. Bu PnL olayları `MonitorStep` sırasında pool vault'larına kapatılır ve program bunları `state_data.total_pnl_{coin,pc}`'ye bilgilendirici sayaçlar olarak kaydeder.

* Pool'un gönderilen ızgarası eğri fiyatı etrafında doğru şekilde kalibre edildiğinde, OpenBook dolguları pool için **ücret pozitif** olma eğilimindeydi — AMM etkin bir şekilde OpenBook'ta piyasa yapıyordu ve yapıcı indirimler kazanıyordu.
* OpenBook duraklatıldığında veya olay sırası dolduğunda, pool elverişsiz fiyatlarda doldurulan eski siparişlerde oturabilir, olumsuz PnL üretir. Bu operasyonel bağlantı, hibrit tasarımdan uzaklaşma motivasyonlarından biriydi.

Bu OpenBook PnL, %0,03 protokol ücreti ile **aynı değildi**. OpenBook PnL, pool rezervlerini doğrudan artırdı (LP'leri + protokolü ücret bölümüne orantılı olarak fayda verdi), %0,03 protokol ücreti ise özellikle yönetici taraması için etiketlendi. OpenBook tarafı kapalı olduğuna göre, bugün tek ücret tahakkuku AMM swapları üzerindeki %0,25 ve onun 22/3 bölümüdür.

## Toplanma

Yönetici (Raydium multisig) `need_take_pnl_*`'yi program'ın `AmmConfig`'inde yapılandırılan pool düzeyindeki "PnL sahibi" hesaplarına taraması için `WithdrawPnl` / `TakePnl`'i çağırır (farklı, program kapsamlı bir konfigürasyon — per-pool CPMM tarzı AmmConfig değil). Tarama:

1. Önce bekleyen OpenBook dolguları kapatır. *(OpenBook artık pasif olduğu için işlem yapmaz.)*
2. `need_take_pnl_coin` / `need_take_pnl_pc`'yi pool vault'larından PnL hedefine aktarır.
3. Sayaçları sıfırlar.

İşlem eğriyi hareket ettirmez. LP'ler bir `TakePnl` çağrısı boyunca hiçbir fiyat değişikliği görmemelidir.

## LP ücreti geri ödeme

Özel bir "LP ücretlerini topla" talimatı yoktur. LP ücretleri vault'larda birikir ve `k`'yi zaman içinde artırır; LP'ler bunları `Withdraw` aracılığıyla LP tokenlerini yakarak gerçekleştirirler. Bir LP tokeninin değeri, `(coin_reserve_effective, pc_reserve_effective)` büyüdükçe monoton olarak büyür.

## Görselleştirme: 1.000 USDC hacmi nereye gider

Varsayılan parametrelere sahip bir pool'a karşı 1.000\$ USDC ağır swapında:

```
Brüt işlem ücreti (%0,25):   $2,50
  LP payı   (%0,22):       $2,20   → pool'da kalır, k'yi yükseltir
  PnL payı  (%0,03):       $0,30   → need_take_pnl_pc, TakePnl tarafından toplanır
Kullanıcıya gönderilen kalan:   $997,50   (eksi eğri tarafından yönlendirilen fiyat etkisi)
```

CPMM `AmmConfig[0]` ile karşılaştırın (%0,25 tier, yaratıcı ücreti yok): LP \$2,10 alır, protokol \$0,30, fon \$0,10. CPMM, AMM v4'ün eşdeğer tier'inde LP'nin aldığı olurdu payından onu çıkararak fon satırını tanıtır.

## Karşılaştırma tablosu

|                          | AMM v4                           | CPMM `index=0`                                   | CLMM `index=2`                    |
| ------------------------ | -------------------------------- | ------------------------------------------------ | --------------------------------- |
| İşlem ücreti             | %0,25                            | %0,25                                            | %0,25                             |
| LP                       | %0,22                            | %0,21                                            | Emisyonlara göre değişir          |
| Protokol                 | %0,03                            | %0,03                                            | Tier başına                       |
| Fon                      | N/A                              | %0,01                                            | Tier başına                       |
| Yaratıcı (isteğe bağlı)  | N/A                              | Varsayılan olarak 0                              | N/A                               |
| Ücretlerin bulunduğu yer | Pool vault + need\_take\_pnl\_\* | Pool vault + protocol\_fees\_\* + fund\_fees\_\* | Küresel + per-tick + per-position |

[`reference/fee-comparison`](/tr/reference/fee-comparison) adresinde tam matris.

## Entegratör notları

* **Alıntı.** SDK aracılığıyla veya `api-v3.raydium.io/pools/info/ids` üzerinden `AmmInfo`'yu alın. Ham vault dengeleri karşısında kendi alıntınızı hesaplamayın — OpenBook yatırılı miktarları ve PnL hariçtutulması her ikisi de etkin rezervleri `getTokenAccountBalance`'ın gösterdiğinden uzağa çeker.
* **Eski ücret parametreleri.** Prensip olarak `SetParams` `swap_fee_numerator`'u değiştirebilir, ancak pratikte Raydium multisig'i hiçbir canlı pool için varsayılanları değiştirmemiştir. Yine de, sabit kodlamak yerine daima zincir üstü durumdan okuyun.
* **Ödül yok.** AMM v4 havuzda ödül emisyonlarını desteklemez. Eski ekosistem çiftlikleri (Farm v3 / v5 / v6) staking katmanı eşdeğeridir — [`products/farm-staking`](/tr/products/farm-staking)'i görün.

## Sırada ne var

* [`products/amm-v4/math`](/tr/products/amm-v4/math) — eğri içindeki işlem ücreti türetilmesi.
* [`products/amm-v4/instructions`](/tr/products/amm-v4/instructions) — `WithdrawPnl` / `SetParams` hesap listeleri.
* [`reference/fee-comparison`](/tr/reference/fee-comparison) — yan yana matris.

Kaynaklar:

* [Raydium AMM programı — `raydium-io/raydium-amm`](https://github.com/raydium-io/raydium-amm)
* Zincir üstü AMM v4 ücret numaratörü/payda alanları (mainnet `AmmInfo` hesaplarına karşı doğrulandı).
