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

# تقدير APR في CLMM

> كيفية حساب Raydium لأرقام APR المعروضة على مجمعات CLMM، وكيفية تقدير APR الخاص بك لنطاق افتراضي قبل فتح مركز، وحالات الاستثناء التي تجعل APR المتأخر مضللاً.

<Info>
  **هذه الصفحة مُترجَمة آليًا بواسطة الذكاء الاصطناعي. النسخة الإنجليزية هي المرجع المعتمد.**

  [عرض النسخة الإنجليزية →](/algorithms/clmm-apr)
</Info>

<Info>
  **APR المعروض على واجهة Raydium** لمجمع CLMM هو APR الرسوم المحقق للسيولة **الموجودة في النطاق** خلال آخر 24 ساعة، مسقوط على السنة. إنه ليس APR الذي كان سيحققه **مركزك** — يعتمد ذلك على نطاقك، ومدة بقاؤك في النطاق، وحصتك من السيولة التي كانت نشطة خلال فترة التداول.
</Info>

## الصيغة الأساسية

بالنسبة لمجمع CLMM، يتم حساب APR اليومي للرسوم المعروض على Raydium كما يلي:

```
apr_24h = (fees_24h / tvl_in_range_24h) · 365
```

حيث:

* `fees_24h` هو مجموع رسوم المقابل من المراوحين المتراكمة في آخر 24 ساعة (بالدولار الأمريكي).
* `tvl_in_range_24h` هو المتوسط المرجح بالوقت لقيمة السيولة بالدولار الأمريكي التي كانت **في النطاق** خلال هذه الفترة.

المقسوم عليه هو ما يميز APR في CLMM عن APR في CPMM. يستخدم CPMM إجمالي TVL للمجمع لأن كل دولار يساهم دائماً. يستخدم CLMM فقط مجموعة السيولة الموجودة في النطاق لأن الدولارات خارج النطاق لا تحقق أي عائد.

## ما سيكون عليه APR الخاص بك فعلياً

APR الأساسي هو إحصائية للمجمع، وليس إحصائية لمركزك. يعتمد APR الخاص بك على أربعة مضاعفات:

```
your_APR = headline_APR
         · (your_in_range_fraction / pool_in_range_fraction)     # concentration bonus
         · time_in_range                                          # range discipline
         · (1 − transfer_fee_haircut)                             # token-2022 tax
         · compounding_factor                                     # if you auto-restake
```

* **مكافأة التركيز (Concentration bonus).** إذا كان نطاقك أضيق من متوسط النطاق في المجمع، فكل tick نشط سيكون به المزيد من سيولتك لكل دولار مقارنة بمتوسط المراوح. أضيق = مكافأة أكبر (وتضخيم أكبر لخسارة عدم الاستقرار بشكل متناسب).
* **الوقت في النطاق (Time in range).** إذا كنت في النطاق فقط 40% من الوقت، فاضرب في 0.40.
* **خصم رسوم التحويل (Transfer-fee haircut).** بالنسبة لعملات Token-2022 التي تفرض رسوم تحويل، كل عملية جمع رسوم تمر عبر تحويل يفقد نقاطاً أساسية بنفسه.
* **المضاعفة (Compounding).** إذا قمت باستدعاء `collectFee` وأعدت النشر في نفس النطاق أسبوعياً، فإن APR الفعلي يكون حوالي `(1 + daily_APR)^365 − 1`. بدون مضاعفة يكون خطياً.

### مثال عملي

لنفترض أن مجمع SOL/USDC في CLMM يحتوي على:

* حجم 24h: 120 مليون دولار
* فئة الرسوم: 0.05% (حصة المراوح 88% من الرسوم بعد خصم البروتوكول)
* إجمالي TVL: 40 مليون دولار
* TVL في النطاق: 18 مليون دولار (45% من المجمع موجود حالياً في النطاق)

```
fees_24h = 120M · 0.0005 · 0.88 = $52,800
apr_24h  = (52,800 / 18,000,000) · 365 = 107%
```

تعرض واجهة Raydium **107% APR** للمجمع. (يستخدم هذا المثال مجمعاً عميقاً بحجم كبير لإبقاء الأرقام محددة؛ عادة ما تعرض مجمعات CLMM نموذجية ما بين 10% إلى 50% APR، مع مجمعات منخفضة الحجم أقل بكثير من 10%.)

الآن تفكر في فتح مركز:

* نطاقك: ضيق بما يكفي بحيث يكون لديك تركيز 2× من المتوسط.
* الوقت المتوقع في النطاق: 70% (ستتحقق أسبوعياً).
* لا توجد رسوم Token-2022. لا توجد مضاعفة تلقائية.

```
your_APR ≈ 107% · 2 · 0.70 = 150%
```

هذا تقدير، وليس ضمان. يمكن أن ينخفض الحجم المحقق أو يتضاعف في أسبوع.

## لماذا يكون APR المتأخر إشارة متخلفة

يتحرك APR في CLMM **بسرعة** بالمقارنة مع APR في CPMM لأن مقسوم عليه TVL الموجود في النطاق يتحرك بسرعة:

* تحريك السعر الكبير يدفع أجزاء من المراكز خارج النطاق، مما يقلل المقسوم عليه. فجأة يبدو TVL المتبقي في النطاق "ذا APR أعلى" — لكن فقط لأن المنافسين غادروا، وعادة ما ينخفض الحجم أيضاً.
* عندما يصل مجمع إلى أعلى مستوى جديد، يمكن أن يظهر مؤقتاً 500–1000% APR لمدة ساعة حيث تم معايرة معظم المراكز لأسعار أقل ولا يبقى سوى عدد قليل من المراوحين العدوانيين في النطاق.
* بمجرد استقرار السوق، يقوم المراوحون بإعادة التوازن ويرتد APR إلى المتوسط.

قواعد عملية:

* **تجاهل APR الذي يقل عن 24h.** الكثير من الضوضاء.
* **فضّل نوافذ 7d و 30d.** تكشف Raydium كليهما عبر [`GET /pools/info/ids`](/ar/sdk-api/rest-api) — الحقول `week.apr` و `month.apr`.
* **اختبر نطاقك المحدد** على بيانات الحجم والسعر التاريخية قبل الالتزام برأس مال كبير.

## كيفية عمل الرياضيات (خطوة tick واحدة)

داخل tick واحد، يتصرف CLMM مثل CPMM على كمية السيولة `L` النشطة في ذلك الـ tick. تتراكم الرسوم في `fee_growth_global_X` و `fee_growth_global_Y` لكل وحدة سيولة. لمركز يحتوي على سيولة `Lₚ` يمتد عبر نطاقات tick `[i_lo, i_hi]`:

```
fees_earned_X = Lₚ · (fee_growth_inside_X(i_lo, i_hi, now) − fee_growth_inside_X(i_lo, i_hi, t_open))
fees_earned_Y = Lₚ · (fee_growth_inside_Y(i_lo, i_hi, now) − fee_growth_inside_Y(i_lo, i_hi, t_open))
```

حيث يطرح `fee_growth_inside` نمو الرسوم أقل من `i_lo` وفوق `i_hi` من المراكم العام. التفاصيل في [`algorithms/clmm-math`](/ar/algorithms/clmm-math).

لحساب الرسوم **المتوقعة** خلال فترة مستقبلية لنطاق محتمل، قدّر:

```
expected_fees_per_day = Σ_ticks_in_range (volume_at_tick · fee_rate · your_share_at_tick)
```

تكشف SDK الخاصة بـ Raydium عن `getEstimateAprFromPositionAndPool` والتي تقوم بهذا التقدير باستخدام رسم بياني الحجم لكل tick الحديث.

## مساعد SDK

```ts theme={null}
import { Raydium, TxVersion } from "@raydium-io/raydium-sdk-v2";

const raydium = await Raydium.load({ owner, connection });
const pool = await raydium.clmm.getPoolInfoFromRpc({ poolId });

const apr = await raydium.clmm.estimatedApr({
  poolInfo: pool.poolInfo,
  poolKeys: pool.poolKeys,
  tickLower: -100,   // your intended range
  tickUpper:  100,
  volumeUsd24h: pool.poolInfo.day.volume, // or a custom estimate
});

console.log(`Expected APR: ${apr.feeApr * 100}% (fee-only, excludes farm incentives)`);
```

تُرجع الطريقة أيضاً منفصلة أي APR farm إذا كان المجمع يحتوي على farm متصل. APR "LP" الكامل الخاص بك هو `feeApr + farmApr`.

## مكان ملاءمة APR Farm

يمكن أن تحتوي مجمعات Raydium CLMM على انبعاثات Farm v6 موضوعة فوقها. يتم دفع مكافآت Farm في **عملة مكافآت** (غالباً RAY أو عملة شريكة) مستقلة عن رسوم المقابل. عادة ما تعرض واجهة Raydium:

```
Total APR = Fee APR + Farm APR [in $X, Y, Z reward mints]
```

يتم حساب APR Farm بطريقة مماثلة لكن باستخدام جدول انبعاث المكافآت والسعر الحالي لعملة المكافآت بالدولار الأمريكي. على عكس APR الرسوم، فإنه ليس معتمداً على التقلب — إنه جدول محدد.

انظر [`products/farm-staking/overview`](/ar/products/farm-staking/overview) لرياضيات انبعاث farm.

## الأخطاء الشائعة

* **"يتم مضاعفة APR تلقائياً."** لا. يجب المطالبة بالرسوم عبر `collectFee`، ثم إعادة نشرها يدويّاً. لا تقوم Raydium بمضاعفة رسوم CLMM تلقائياً.
* **"APR الخاص بي = APR الأساسي."** فقط إذا كان التركيز الخاص بك متوسطاً، وكان الوقت في النطاق 100%، وقمت بالمضاعفة بنفس الإيقاع. الثلاثة عادة ما تكون خاطئة.
* **"فئة رسوم أعلى = APR أعلى."** فقط إذا نجا الحجم من الرسوم الأعلى. عند 1% قد يقتبس الزوج 50% APR لكن يفعل 1/10 الحجم؛ أقل من 0.25% عند 120% × 0.1 = 12%.
* **"المراكز خارج النطاق لها خطر صفر."** لديها دخل رسوم صفري لكن IL كامل على تكوين الرموز الموجودة — المركز الآن "100% من أي جانب".

## مؤشرات

* [`algorithms/clmm-math`](/ar/algorithms/clmm-math) — الاشتقاق الكامل لمراكم نمو الرسوم.
* [`algorithms/impermanent-loss`](/ar/algorithms/impermanent-loss) — جانب الخسارة من معادلة المراوح.
* [`user-flows/choosing-a-pool-type`](/ar/user-flows/choosing-a-pool-type) — إطار عمل القرار الذي يستخدم هذا التقدير APR.
* [`sdk-api/rest-api`](/ar/sdk-api/rest-api) — نقاط نهاية الحجم / APR المباشرة.

المصادر:

* تنفيذ Raydium SDK v2 `estimatedApr`.
* صفحة مجمع واجهة Raydium (حقول APR المباشرة).
* اشتقاق رسوم Uniswap V3.
