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 يتطلب عددًا كبيرًا من الحسابات مقارنة بـ CPMM أو CLMM لأن كل عملية تؤثر على حالة OpenBook. تجمع هذه الصفحة الحسابات في قسمي “مملوكة للمجمع” و “مملوكة لـ OpenBook” حتى يتمكن المدمج من الرؤية السريعة للفرق بينهما.
الجرد
يرتبط مجمع AMM v4 بسوق OpenBook واحد بالضبط عند الإنشاء. الصورة الحية الكاملة هي:| الفئة | الحساب | المالك | الدور |
|---|---|---|---|
| المجمع | AmmInfo | برنامج AMM v4 | حالة المجمع: الرسوم المستحقة والحالة والمراجع للمخازن وسوق OpenBook. |
| المجمع | amm_authority | برنامج AMM v4 | PDA مملوك للبرنامج يوقع حركات المخزن. مشترك في جميع مجمعات AMM v4. |
| المجمع | amm_open_orders | OpenBook | حساب OpenOrders لمجمع AMM على OpenBook لهذا السوق. |
| المجمع | amm_target_orders | برنامج AMM v4 | شبكة جانب المجمع لأوامر الحد المستهدفة للنشر على OpenBook. |
| المجمع | pool_coin_token_account | SPL Token | مخزن جانب العملة للمجمع (ATA من amm_authority). |
| المجمع | pool_pc_token_account | SPL Token | مخزن جانب pc للمجمع. |
| المجمع | lp_mint | SPL Token | دعك LP القابل للتبادل. |
| المجمع | pool_withdraw_queue | برنامج AMM v4 | قائمة انتظار موروثة للسحب المؤجل؛ تُبقى على طول صفري. |
| المجمع | pool_temp_lp | برنامج AMM v4 | حساب LP مساعد يُستخدم أثناء Initialize. |
| السوق (OpenBook) | serum_market | OpenBook | السوق نفسه (دعك البداية/الاقتباس والموقع الموثوق وما إلى ذلك). |
| السوق | serum_bids, serum_asks | OpenBook | قائمات الطلب والعرض. |
| السوق | serum_event_queue | OpenBook | الأحداث المعلقة (الملءات والإلغاءات). |
| السوق | serum_coin_vault, serum_pc_vault | SPL Token | مخازن مستوى السوق في OpenBook. |
| السوق | serum_vault_signer | OpenBook | PDA على مستوى السوق يوقع حركات serum_*_vault. |
AmmInfo
حساب الحالة الجذري للمجمع. كبير (≈ 752 بايت) لأنه يحمل مراجع المجمع و OpenBook مباشرة.
coin_vault،pc_vault— مخازن SPL Token للمجمع.coinهوtoken_0بحسب اتفاقية Serum/OpenBook (البداية)،pcهوtoken_1(الاقتباس).coin_decimals،pc_decimals— مطابقة الدعك.open_orders،target_orders،market— يجب تمريرها لكل تعليمات swap/deposit/withdraw.fees.swap_fee_numerator / swap_fee_denominator— الرسم التجاري المجمع. الافتراضي25 / 10_000 = 0.25%.status— bitmask يتحكم في العمليات. قابل للتعيين من قبل المسؤول عبرAdminSetStatus.state_data.need_take_pnl_*— الفرق بين الرسوم المتراكمة الإجمالية وما تم نسفه.TakePnlيصفرها.
توصيل OpenBook
لم تعد نشطة. لا تشارك مجمعات AMM v4 السيولة مع OpenBook — تم إلغاء شبكة أوامر الحد. تبقى حسابات OpenBook الموضحة في هذا القسم على
AmmInfo لكل مجمع وتظل مثبتة بواسطة نقاط نهاية V1 swap (وبواسطة Initialize و Deposit و Withdraw) من أجل التوافق العكسي، لكن حالة على الكتاب التي تشير إليها فارغة في الممارسة. استخدم نقاط نهاية V2 swap (SwapBaseInV2 / SwapBaseOutV2) التي تتخطى هذه الحسابات تماماً وتمثل مسار التنفيذ الكنسي اليوم.amm_open_orders للمجمع هو حساب مملوك لـ OpenBook يحتوي على حالة أوامر الحد للمجمع على هذا السوق: الأوامر النشطة والأرصدة المتسوية والمحيلون وما إلى ذلك. amm_target_orders من جانب AMM: يحتوي على الشبكة المقصودة للمجمع (السعر/الحجم لكل فتحة أمر) حتى يتمكن البرنامج من المقارنة الرخيصة مع ما يتم نشره حالياً ووضع / إلغاء الفرق.
PDAs للسلطة
هناكamm_authority PDA واحد بالضبط للبرنامج AMM v4 بأكمله. البذرة الخاصة به بسيطة (["amm authority"]) ويتم تخزين الرفع الخاص به على كل AmmInfo. توقع هذه السلطة جميع حركات الرموز لجميع مجمعات AMM v4.
amm_authority أعلاه تغطي في الواقع كليهما في تصميم هذا البرنامج؛ استخدمت الإصدارات المختلفة الاشتقاق المختلف، لذا تحقق من AmmInfo.nonce للمجمع المحدد في الكود).
المخازن
مخازن SPL Token للمجمع هي حسابات رموز قياسية الملكيةamm_authority. ليست ATAs — عناوينهم PDAs محددة مشتقة في Initialize مع بذور ["amm_associated_seed", coin_mint_or_pc_mint, market, amm_id]. يتم تخزين العناوين على AmmInfo؛ الاشتقاق فضول لمرة واحدة فقط.
Token-2022 غير مدعوم. يحمّل البرنامج معرف برنامج SPL Token لجميع حركات المخزن. محاولة ربط مجمع AMM v4 بـ Token-2022 mint تفشل في Initialize.
دعك LP
دعك SPL Token كلاسيكي سلطتهamm_authority. إجمالي العرض يتتبع ملكية LP للمجمع؛ حرق LP يرجع الرموز من كلا المخزنين بشكل احترافي. لأن AMM v4 سبق CPMM، لا توجد مرآة lp_supply في حالة المجمع — اقرأ العرض المشغول للدعك مباشرة على السلسلة.
قناع الحالة
AmmInfo.status يتحكم في العمليات. البتات (قد يختلف الموضع عبر إصدارات البرنامج — تأكد عبر المصدر):
| البت | الراية | التأثير |
|---|---|---|
| 0 | SWAP_DISABLED | يرفض Swap*. |
| 1 | DEPOSIT_DISABLED | يرفض Deposit. |
| 2 | WITHDRAW_DISABLED | يرفض Withdraw. |
| 3 | CLMM_LIKE_MIGRATE | علم بوابة الهجرة الذي تستخدمه العمليات. |
AdminCancelOrders و AdminSetParams وغيرها.
الملاحظة / الأوراكل
AMM v4 لا يملك حساب ملاحظة مخصص. البروتوكولات الأخرى التي تحتاج إلى TWAP على السلسلة عادة تستهلك عبورات كتاب OpenBook بشكل غير مباشر أو اقرأ من السلسلة. إذا كنت بحاجة إلى Raydium TWAP مع دعم البرنامج، استخدم CPMM أو CLMM.اشتقاق حسابات المجمع من الصفر
لأن AMM v4 لم تُصمم لـ PDAs محددة حتمية لكل زوج (سبق أن أتى قبل هذا الاتفاق Solana)، يكونamm_id الكنسي مفتاح seeded مشتق مع:
amm_open_orders و amm_target_orders و amm_withdraw_queue و pool_temp_lp و pool_coin_token_account و pool_pc_token_account و lp_mint. SDK والـ API تقوم بحساب مسبق لك؛ انظر raydium-sdk-v2 في Liquidity.getAssociatedPoolKeys.
في الممارسة العملية، يقرأ المدمجون مجموعة الحساب الكاملة للمجمع من GET https://api-v3.raydium.io/pools/info/ids?ids=<POOL_ID> أو من SDK. الاشتقاق اليدوي نادراً ما يكون مطلوباً.
مرجع دورة الحياة السريع
| الحدث | الحسابات المنشأة | الحسابات المحذوفة |
|---|---|---|
Initialize2 | amm_info و amm_open_orders و amm_target_orders والمخازن و lp_mint و pool_withdraw_queue و pool_temp_lp | — |
Deposit | — (قد تنشئ user LP ATA) | — |
Withdraw | — | — |
SwapBaseIn / SwapBaseOut | — (قد تنشئ user ATA) | — |
TakePnl | — | — |
MonitorStep (crank) | — | — |
AmmInfo.
ما تقرأه أين
- الرياضيات وحساب الرسوم:
products/amm-v4/math. - تقسيم الرسوم ومقارنتها بـ CPMM/CLMM:
products/amm-v4/fees. - قائمات حسابات التعليمات:
products/amm-v4/instructions. - اشتقاق حساب OpenBook: وثائق برنامج OpenBook (
github.com/openbook-dex/program).
- برنامج Raydium AMM —
raydium-io/raydium-amm reference/program-addressesلمعرفات البرامج الكنسية- OpenBook / بروتوكول Serum لحسابات الطرف الثالث


