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.
هذه الصفحة مُترجَمة آليًا بواسطة الذكاء الاصطناعي. النسخة الإنجليزية هي المرجع المعتمد.عرض النسخة الإنجليزية →
ما هي المزرعة
المزرعة هي برنامج منفصل على السلسلة يوزع واحد أو أكثر من رموز المكافآت على الحسابات التي تقوم برهن رمز الرهن. رمز الرهن هو دائماً تقريباً رمز LP صادر عن CPMM أو AMM v4 أو حمام زوج قديم، لكن المزارع ذات الأصول الفردية (رهن SOL أو RAY أو رمز مشروع مباشرة) مدعومة وتُستخدم في عدد صغير من البرامج طويلة المدى. الخصائص الرئيسية:- قائم على الإصدار، وليس على الرسوم. على عكس تدفقات المكافآت المدمجة في CLMM، فإن مكافآت المزرعة لا تُرتبط بحجم المبادلات أو نشاط الحمام. يودع منشئ المزرعة الميزانية مقدماً وتُصدرها بمعدل ثابت في الثانية حتى تنتهي.
- مستقلة عن الحمام. الحمام لا يعرف أن المزرعة موجودة. نقل LP بين المحافظ لا يخطر المزرعة؛ يجب على المستخدم أن يقوم بسحب نشط من المزرعة أولاً. وبالمثل، السحب من الحمام لا يسحب من المزرعة.
- دفتر أحوال لكل مستخدم، لكل مكافأة. كل مراهن لديه حساب
UserStake(أو “دفتر أحوال”) لكل مزرعة يتتبع مبلغ رهنهم واللقطة الخاصة بهم لعداد المكافأة لكل حصة لكل من تدفقات مكافآت المزرعة. - مكافآت متعددة. المزرعة v5 تدعم ما يصل إلى مكافأتين؛ v6 تدعم ما يصل إلى 5. كل مكافأة لها خزانة خاصة بها ومعدل لكل ثانية ووقت بدء ووقت نهاية.
الإصدارات الثلاثة النشطة
أطلقت Raydium ثلاثة إصدارات من برنامج المزرعة. جميعها نشطة، وكل واحدة لها نظام PDA وقائمة تعليمات خاصة بها. يجب على المدمجين معاملتها كثلاثة برامج منفصلة تشترك في نموذج مفاهيمي.| الإصدار | موقع معرّف البرنامج | الحد الأقصى للمكافآت | الاختلافات البارزة |
|---|---|---|---|
| v3 | راجع reference/program-addresses | 1 | أقدم مخطط. المزارع الأقدم (RAY-USDC، SOL-USDC) لا تزال تعمل من خلاله. |
| v5 | راجع reference/program-addresses | 2 | أضافت فتحة المكافأة الثانية وعمليات إعادة الملء على غرار AddReward. |
| v6 | راجع reference/program-addresses | 5 | الإصدار الحالي. فتحات موسّعة، إدارة أنظف، يدعم farming لمواقع CLMM عبر محول خاص بـ v6 (نادر في الممارسة العملية). |
raydium.farm كواجهة موحدة — يتم استنتاج الإصدار من مالك حساب المزرعة. عند بناء تكاملات على السلسلة يجب عليك الإرسال يدويًا.
محاسبة المكافأة لكل حصة
يستخدم برنامج المزرعة نمط “master-chef” القياسي المرئي في جميع عقود العائد في DeFi:reward_per_shareيتم تخزينها في حساب المزرعة كعداد نقطة ثابتة (Q64.64 في v5+، Q56.8 في v3). تنمو فقط.user.reward_debtهي لقطة منreward_per_shareفي آخر تفاعل للمستخدم. إنها ليست ديناً يدين به المستخدم؛ إنها إزاحة تُستخدم لحساب التراكمات المستقبلية.- في
DepositوWithdraw، تقوم المزرعة أولاً بتسوية المكافآت المعلقة (حيث تحتسبuser.pending_rewardأو ترسلها مباشرة إلى ATA للمستخدم، حسب الإصدار)، ثم تحدثuser.reward_debtللعداد الحالي. - في
Harvest، تدفع المزرعةpending_rewardوتلتقطreward_debtمرة أخرى.
Deposit، Withdraw، Harvest، تحديث إداري). المزارع التي لا تملك نشاطاً تراكم فجوة متزايدة يتم إغلاقها في التفاعل التالي.
رمز الرهن مقابل رمز المكافأة
رمز الرهن يُحتفظ به في ضمان، وليس محروق. عندما يرهن مستخدم 100 LP، تنقل المزرعة 100 LP من ATA المستخدم إلى خزان رهن المزرعة. فيWithdraw، تنقل المزرعة 100 LP مرة أخرى. المزرعة لا تستدعي أبداً الحمام.
يتم دفع رموز المكافآت من الخزانات الممولة مسبقاً من قبل المنشئ. عندما ينشئ المنشئ مزرعة، يودع الميزانية الكاملة للمكافآت (على سبيل المثال، 1000000 RAY + 500000 USDC) في خزاني المكافآت. برنامج المزرعة لا يسك رموز جديدة؛ فهو ببساطة يوزع ما هو في الخزان على مدى مدة التدفق. إذا تم استنزاف الخزان قبل end_time، تتوقف الانبعاثات.
جداول الانبعاث
لكل تدفق مكافآت ثلاث معاملات زمنية:start_time— الطابع الزمني UNIX الذي تبدأ الانبعاثات. قبل هذا، لا تراكم.end_time— الطابع الزمني الذي تتوقف الانبعاثات. بعد هذا،reward_per_shareلم تعد تنمو من هذا التدفق.per_second— معدل الانبعاث بينماstart_time ≤ now < end_time.
end_time للأمام، إعادة ملء الخزان) عبر AddReward / SetRewards على v5 / v6. يمكن إعادة تشغيلها بعد end_time عبر RestartRewards. لا يمكن تقصيرها بدون تعاون إداري.
ما لا تكونه المزارع
- ليست موزع رسوم. CPMM و CLMM يجمعان رسوم التداول مباشرة في حالة الحمام. المزارع لا تلمس رسوم الحمام. المسار الوحيد من رسوم الحمام إلى حامل الرمز هو استرجاع LP أو
CollectFeeفي CLMM. - ليست تلقائية. يجب رهن LP بشكل صريح لكسب مكافآت المزرعة. حاملو LP الذين يتركون الرموز في محفظتهم لا يكسبون شيئاً من المزرعة.
- ليست قابلة للاستبدال. كل حساب
UserStakeمرتبط بزوج واحد من(farm, user). لا يمكنك نقل رهنك إلى محفظة أخرى دون إلغاء الرهن أولاً. - لا تتوافق مع مواقع CLMM مباشرة. قدمت المزرعة v6 محول CLMM، لكن في الممارسة العملية تستخدم حمامات CLMM تدفقات المكافآت المدمجة الخاصة بها (راجع
products/clmm/fees) بدلاً من انبعاثات المزرعة.
عندما تكون المزارع الأداة الصحيحة
استخدم مزرعة عندما تريد:- تحفيز LP لأحد حمامات CPMM أو AMM v4 في مشروعك برمز خارجي (رمز مشروعك، رمز شريك، إلخ).
- تشغيل برنامج رهن على رمز أصل فردي (الكلاسيكية “رهن RAY، كسب RAY”) دون نشر عقدك الخاص.
- إضافة مكافآت إضافية فوق حمام موجود دون الحاجة إلى وصول إداري لهذا الحمام.
محتويات الفصل
accounts— تخطيط حالة على السلسلة الكامل لكل إصدار.instructions— كل تعليمة مزرعة مع قائمة حسابها والشروط المسبقة واللاحقة.code-demos— أمثلة TypeScript للرهن والحصاد وإنشاء مزرعة جديدة.
الخطوات التالية
products/clmm/fees— قارن انبعاثات المزرعة بنموذج المكافآت المدمج في CLMM.reference/program-addresses— معرّفات برنامج المزرعة الثلاثة.protocol-overview/versions-and-migration— متى تستخدم كل إصدار مزرعة.
- IDL المزرعة v6 مضمّن في SDK:
raydium-io/raydium-sdk-V2تحتsrc/raydium/farm/. - وحدة
Farmفي SDK v2 الخاصة بـ Raydium


