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.
هذه الصفحة مُترجَمة آليًا بواسطة الذكاء الاصطناعي. النسخة الإنجليزية هي المرجع المعتمد.عرض النسخة الإنجليزية →
حساب
GlobalConfig هو حساب الإعدادات على مستوى البروتوكول. يمكن أن يكون هناك عدة منها — مفهرسة حسب (curve_type, index) — وكل إطلاق يختار واحدًا بالضبط في وقت Initialize. تصبح القيم الموجودة على GlobalConfig المختار بعد ذلك حدودًا صارمة لمعاملات الإطلاق. للتخصيص على مستوى المنصة (معدل الرسوم لكل منصة، أشكال المنحنيات المسموحة، تقسيمات NFT عند التخرج)، انظر products/launchlab/platform-config.ما هو
GlobalConfig هو حساب PDA فريد لكل (curve_type, index) يحدد قواعد جانب البروتوكول التي يجب على كل إطلاق الامتثال لها:
- نوع منحنى الربط المسموح به (
curve_type). - معدل رسوم التداول الذي يفرضه المنحنى على كل عملية شراء وبيع.
- رسوم الهجرة المفروضة عند التخرج.
- حدود دنيا على العرض ومعدل القفل ومعدل البيع ومعدل الهجرة.
- عملة الاقتباس (عادة SOL المرقومة أو USDC) — الأصل الذي يشتري به المستخدمون.
- ثلاث محافظ على جانب البروتوكول: مالك رسوم البروتوكول، مالك رسوم الهجرة، ومحفظتا التحكم في الهجرة اللتان تصرحان بالتخرج إلى AMM v4 / CPMM.
- علم اختياري (
requires_platform_auth) يتحكم في المنصات التي يمكنها استخدام هذا الإعداد.
GlobalConfig وتحديثها بواسطة مسؤول برنامج LaunchLab (مفتاح المسؤول المشفر الذي يُستخدم عبر برامج Raydium المستندة إلى Anchor — انظر reference/program-addresses).
التخطيط
create_config للبرنامج هي مصدر الحقيقة.)
دلالات المجالات
curve_type و index
معًا يقومان بتحديد GlobalConfig بشكل فريد. يوجد واحد GlobalConfig لكل زوج (curve_type, index):
curve_type = 0— منحنى الاحتياطي الافتراضي ذي المنتج الثابت. الخيار الافتراضي والأكثر استخدامًا.curve_type = 1— منحنى السعر الثابت.curve_type = 2— منحنى السعر الخطي.
index هو u16 يسمح للمسؤول بنشر عدة تكوينات لكل نوع منحنى (على سبيل المثال، واحدة برسوم أضيق، وواحدة برفع اقتباس أعلى). في Initialize، يوفر الإطلاق زوج (curve_type, index) والبرنامج يحمل GlobalConfig المطابق.
الرسوم
trade_fee_rate— يُقاس بـ1/1_000_000من حجم التداول. يُطبق على كل عملية شراء وبيع على المنحنى. يقومprotocol_fee_ownerبالمطالبة بحصته عبرCollectFee.migrate_fee— رسم ثابت بوحدات lamports (أو وحدات الاقتباس، حسب الإعداد) يُفرض مرة واحدة عند التخرج. يُطالب بهاmigrate_fee_ownerعبرCollectMigrateFee.max_share_fee_rate— يُهيأ إلى10_000(100 bps). يحد من معدل رسوم حصة المنصة منPlatformConfigالمُلزم (انظرplatform-config). يفرض البرنامجtrade_fee_rate + max_share_fee_rate < RATE_DENOMINATOR_VALUE.
حدود العرض والمعدل
تحد هذه الحدود من معاملات شكل المنحنى التي يمكن لإطلاق اختيارها فيInitialize. إذا انتهكت CurveParams الخاصة بالمُنشئ أيًا منها، ستعود Initialize مع InvalidInput.
min_base_supply— الحد الأدنىsupply(بدون عشريات) الذي يمكن للمنحنى أن يعلنه. الافتراضي هو10_000_000.max_lock_rate— يُقاس بـ1/1_000_000؛ الافتراضي300_000(30%). يحد من الاستحقاق عبرtotal_locked_amount <= supply * max_lock_rate / 1_000_000.min_base_sell_rate— يُقاس بـ1/1_000_000؛ الافتراضي200_000(20%). يحد منbase_supply_graduation / supplyمن الأسفل.min_base_migrate_rate— يُقاس بـ1/1_000_000؛ الافتراضي200_000(20%). يحد من عدد الرموز المتبقية لتجهيز المجموعة بعد التخرج.min_quote_fund_raising— الحد الأدنىquote_reserve_targetالذي قد يعلنه إطلاق (مع عشريات). الافتراضي هو30_000_000_000وحدة من عملة الاقتباس.
عملة الاقتباس ومحافظ البروتوكول
quote_mint— الأصل الذي يشتري به المستخدمون. تستخدم معظم الإطلاقات SOL المرقومة (So111…112) أو USDC (EPjF…Dt1v). يُرتبطGlobalConfigالواحد بعملة اقتباس واحدة؛ الإطلاقات التي تحتاج إلى هدف اقتباس مختلف تستهدف(curve_type, index)مختلفًا.protocol_fee_owner— مفتاح عام يوقعCollectFeeويطالب برسوم البروتوكول المتراكمة على كل إطلاق مرتبط بهذا الإعداد. مخزنة على السلسلة؛ يمكن للمسؤول تدويرها عبرUpdateConfig.migrate_fee_owner— مفتاح عام يوقعCollectMigrateFee.
محافظ الهجرة
يتطلب مساران التخرج موقعين مختلفين:migrate_to_amm_wallet— يجب أن يوقعMigrateToAmm. يُستخدم للإطلاقات ذاتmigrate_type = 0(التخرج إلى AMM v4 + OpenBook).migrate_to_cpswap_wallet— يجب أن يوقعMigrateToCpswap. يُستخدم لـmigrate_type = 1(التخرج إلى CPMM). تأخذ إطلاقات Token-2022 هذا المسار دائمًا.
requires_platform_auth
علم u8 (0 = يمكن لأي شخص استخدام هذا الإعداد؛ غير صفري = فقط المنصات التي لديها PDA PlatformGlobalAccess صحيح قد تطلق ضده). عند التعيين، يجب على كل Initialize ضد هذا GlobalConfig أن يتضمن حساب PlatformGlobalAccess مطابق يثبت أن المنصة تم تفويضها مسبقًا عبر CreatePlatformGlobalAccess (تعليمات حصرية للمسؤول). انظر platform-config لميكانيكا جانب المنصة.
الافتراضيات عند التهيئة
عندما يتم استدعاءCreateConfig، يقوم البرنامج بزراعة العديد من الحقول مع القيم الافتراضية المشفرة:
curve_type و index و migrate_fee و trade_fee_rate و quote_mint والمفاتيح العامة الأربعة للمحفظة بشكل صريح في وقت الإنشاء؛ يمكن ضبط القيم اللاحقة عبر UpdateConfig.
كيف يختار إطلاق GlobalConfig
في Initialize، يمرر المُنشئ:
(curve_type, index)لاختيار PDAGlobalConfigالذي سيتم تحميله.CurveParamsالذي يصف شكل المنحنى (supply،total_base_sell،total_quote_fund_raising،migrate_type).VestingParamsيصف العرض المقفول.MintParamsللعملة الأساسية.
curve_typeيطابقglobal_config.curve_type.supply >= global_config.min_base_supply.total_locked_amount <= supply * max_lock_rate / 1_000_000.total_base_sell >= supply * min_base_sell_rate / 1_000_000.(supply − total_base_sell − total_locked_amount) >= supply * min_base_migrate_rate / 1_000_000— أي، توجد رموز كافية متبقية لتجهيز المجموعة بعد التخرج.total_quote_fund_raising >= min_quote_fund_raising.- إذا كان
requires_platform_auth != 0، يتم تضمين PDAPlatformGlobalAccessصحيح.
Initialize، يقوم PoolState الخاص بالإطلاق بتخزين مفتاح global_config العام مباشرة، لذا يكون الربط دائمًا.
مسار التحديث
UpdateConfig حصري للمسؤول ويأخذ زوج (param: u8, value: u64). تختار كل قيمة param الحقل الذي سيتم تغييره:
param | الحقل المتغير |
|---|---|
| 0 | migrate_fee |
| 1 | trade_fee_rate |
| 2 | max_share_fee_rate |
| 3 | min_base_supply |
| 4 | max_lock_rate |
| 5 | min_base_sell_rate |
| 6 | min_base_migrate_rate |
| 7 | min_quote_fund_raising |
protocol_fee_owner، migrate_fee_owner، migrate_to_amm_wallet، migrate_to_cpswap_wallet) تأخذ شكل حجة Pubkey منفصلة؛ تحقق من مصدر update_config لجدول التوزيع الدقيق قبل تكوين معاملة مسؤول.
يتم تبديل requires_platform_auth عبر set_requires_platform_auth(bool).
قراءة GlobalConfig من عميل
getAllGlobalConfigs للـ SDK أو استعلم عن نقطة نهاية LaunchLab API التي تعكسها؛ عدد الحسابات on-chain صغير (بضع وحدات عمليًا).
مؤشرات
products/launchlab/platform-config— طبقة تراكب لكل منصة تقيد شكل المنحنى بشكل أكبر.products/launchlab/accounts— رسم البيان الكامل للحسابات لإطلاق.products/launchlab/instructions— تعليماتInitializeوالتحديث.reference/program-addresses— مفتاح المسؤول، معرّف البرنامج، السلطات المشتركة.
raydium-launch/programs/launchpad/src/states/config.rs— هيكلGlobalConfigوinitialize.raydium-launch/programs/launchpad/src/lib.rs—create_config،update_config.


