هذه الصفحة مُترجَمة آليًا بواسطة الذكاء الاصطناعي. النسخة الإنجليزية هي المرجع المعتمد.عرض النسخة الإنجليزية →
Stable AMM هو برنامج مستقل بمعرّف برنامج خاص به. إنه ليس وضعًا من أوضاع برنامج AMM v4، وليس يتم التداول به “عبر” AMM v4 — بل يتم نشره وترقيته واستدعاؤه بشكل منفصل. يشبه AMM v4 فقط في اتفاقيات الرسوم وتخطيط الحسابات.
جرد التعليمات
قابلة للاستدعاء
محذوفة (لا يمكن استدعاؤها)
تم حذفها في ترقية 2026-06-22 ولا يمكن استدعاؤها بعد الآن. انظر التعليمات المحذوفة.Deposit
إضافة السيولة، استقبال رموز LP.
الحجج
W، موقّع S)
التوافقية: تم حذف
amm_open_orders (القديم #3) و serum_market (القديم #9). عند تمرير 14 حساب، يتم تحليل التعليمة بالتخطيط القديم بـ 14 حساب؛ يتم تجاهل حسابات Serum.
الرياضيات — نسبة قياسية باستخدام جدول البحث لحساب النسبة. يحسب SDK زوج عملة/pc للمبلغ المطلوب من LP ويتحقق من الحدود القصوى.
Withdraw
حرق LP، استقبال الطرفين بنسبة.
الحجج
W، موقّع S)
التوافقية: تم حذف تسعة حسابات Serum (
amm_open_orders، serum_program، serum_market، serum_coin_vault، serum_pc_vault، serum_vault_signer، serum_event_q، serum_bids، serum_asks). التخطيطات القديمة بـ 21 أو 22 حساب لا تزال مقبولة. لاحظ، مع ذلك، أن منطق رسوم الإحالة لحساب referrer_pc_wallet الاختياري الـ 22 تم حذفه — يمكن تمريره لكن لا يعود له تأثير.
الشروط المسبقة
user_source_lpيحتفظ بـamountعلى الأقل.
- يتم حرق
amountرموز LP. - يستقبل المستخدم مبالغ عملة و pc وفقًا للنسبة الحالية، معدلة للرسوم المتراكمة.
SwapBaseIn
مبادلة بمدخل دقيق باستخدام جدول البحث للتسعير.
الحجج
W، موقّع S)
التوافقية: تم حذف تسعة حسابات OpenBook (
amm_open_orders، serum_program، serum_market، serum_bids، serum_asks، serum_event_queue، serum_coin_vault، serum_pc_vault، serum_vault_signer). إذا كان عدد الحسابات المُمررة ليس 9، يتم تحليل التعليمة بالتخطيط القديم بـ 18 حساب؛ يجب أن تحتل حسابات Serum مواضعها، لكن محتوياتها لا تُتحقق أو تُستخدم بعد الآن.
الشروط المسبقة
amm.statusيسمح بالمبادلة.user_source_tokenيحتفظ بـ ≥amount_in.
- يفقد المستخدم
amount_in، يكسبamount_out ≥ minimum_amount_out. - رسوم المجموعة تزيد عدادات
need_take_pnl_*.
products/stable/math.
SwapBaseOut
مبادلة بمخرج دقيق (معكوس SwapBaseIn). نفس التخطيط بـ 9 حسابات، اتجاه رياضيات مختلف.
الحجج
WithdrawPnl
مسؤول فقط. مسح رسوم البروتوكول المتراكمة من need_take_pnl_* إلى حسابات PnL المعينة.
الحجج — لا توجد (مدفوعة بالحالة).
الحسابات — التخطيط الجديد، 10 حسابات ثابتة، مسؤول فقط (قابل للكتابة W، موقّع S)
تغيير المنطق: عندما تكون الأموال المتاحة للمجموعة غير كافية لسحب PnL المتراكم، المجموعة لا تُوضع في
CancelAllOrdersState / Disabled؛ التعليمة تُرجع TakePnlError مباشرة. تم حذف referrer_pc_wallet الاختياري أيضًا.
الشروط المسبقة
amm_adminيجب أن يكون مصرحًا.
- يتم نقل
need_take_pnl_coinوneed_take_pnl_pcإلى حسابات المسؤول. - يتم تصفير العدادات.
التعليمات المحذوفة
تم حذف التعليمات التالية في ترقية 2026-06-22 و لا يمكن استدعاؤها بعد الآن. يتم توثيقها هنا فقط حتى يتمكن المدمجون من التعرف عليها في المعاملات والـ SDK التاريخية.Initialize— كانت تُقلع مجموعة Stable AMM جديدة سابقًا. محذوفة.PreInitialize— مساعد تخصيص مسبق قديم. محذوفة.InitModelData— كانت تُنشئ وتُهيّئ جدول البحثModelDataInfoسابقًا. محذوفة.UpdateModelData— كانت تملأ ما يصل إلى 5 عناصر جدول بحث لكل استدعاء سابقًا. محذوفة.MonitorStep— كرنك OpenBook الذي سوّى الملء وأعاد نشر شبكة الأوامر. كانت خاملة بالفعل لفترة طويلة بعد توقف المجموعة عن النشر إلى OpenBook؛ الآن محذوفة.SetParams— تغييرات معاملات المسؤول (الحالة، الرسوم، المالك، مفتاح بيانات النموذج، إلخ). محذوفة.WithdrawSrm— مسح استرجاع خصم رسوم SRM من مجموعات حقبة Serum المبكرة. محذوفة.SimulateInfo— مساعد اقتباس للقراءة فقط. محذوفة؛ استخدم مساعدات منحنى Stable خارج السلسلة في SDK للاقتباس (انظر عروض الكود).
الخطوات التالية
- الحسابات — لتخطيطات وأحجام حقول الحسابات.
- الرياضيات — لمنطق استيفاء جدول البحث.
- عروض الكود — لرؤية كيفية استدعاء هذه من SDK.
raydium-stable/program/src/instruction.rs(enum و pack/unpack)raydium-stable/program/src/processor.rs(منطق التنفيذ)

