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.
هذه الصفحة مُترجَمة آليًا بواسطة الذكاء الاصطناعي. النسخة الإنجليزية هي المرجع المعتمد.عرض النسخة الإنجليزية →
يدعم LaunchLab ثلاثة أشكال منحنيات يتم اختيارها عند
Initialize: constant-product (الشكل الأكثر شيوعًا، صيغة الاحتياطي الافتراضي للمنحنى x · y = k القياسي)، linear-price، وfixed-price. صيغة عتبة التخرج موحدة عبر جميع الأشكال الثلاثة. تتناول هذه الصفحة رياضيات منحنى constant-product بالتفصيل؛ يتم تلخيص الأشكال الخطية والثابتة في النهاية.المعاملات المخزنة على LaunchState
| الحقل | المعنى |
|---|---|
curve_type | 0 = constant-product (الاحتياطيات الافتراضية)، 1 = fixed-price، 2 = linear-price. |
base_supply_max | إجمالي رموز الأساس التي يمكن للمنحنى أن يُصدرها على الإطلاق. |
base_supply_graduation | رموز الأساس التي يجب بيعها للوصول إلى التخرج. عادةً 0.8 × base_supply_max؛ الـ 20% المتبقية تصبح LP الأولي لمجمع ما بعد التخرج. |
quote_reserve_target | كمية الاقتباس التي تؤدي إلى التخرج. مشتقة عند Initialize من معاملات المنحنى + base_supply_graduation. |
virtual_base / virtual_quote | بذور الاحتياطي الافتراضي لمنحنى constant-product. |
migrate_type | يختار هدف التخرج: AMM v4 مقابل CPMM. انظر instructions. |
fees.buy_numerator / buy_denominator | رسم الشراء، مثلاً 100 / 10_000 = 1.00%. |
fees.sell_numerator / sell_denominator | رسم البيع. غالبًا ما يكون مماثلاً للشراء. |
fees.protocol_share, fees.creator_share, fees.lp_share | تقسيم الرسوم أعلاه، بمجموع المقسوم عليه. |
PoolState الموضحة في accounts؛ الوحدات أعلاه مفاهيمية.
منحنى ثابت المنتج مع الاحتياطيات الافتراضية (curve_type = 0)
المنحنى الافتراضي والأكثر استخدامًا. جميع عمليات الإطلاق على غرار Pump تستخدم هذا الشكل. يتظاهر المنحنى بأن هناك احتياطي اقتباس افتراضي V_q واحتياطي أساس افتراضي V_b من البداية (مخزن كـ virtual_quote و virtual_base على PoolState)، لذا المجمع الفعلي يبدو وكأنه CPMM بهذه الاحتياطيات. تتبع عمليات الشراء رياضيات x · y = k:
base_out:
s:
x · y = k الذي يطبقه LaunchLab قبل التخرج هو حرفيًا منحنى CPMM (أو AMM v4) بعد التخرج، لذا مرور التخرج سلس آليًا: السعر الهامشي عند base_sold = base_supply_graduation يساوي السعر الذي يفتح به مجمع ما بعد التخرج مع (quote_vault, base_vault_remaining) كاحتياطياته.
منحنى السعر الثابت (curve_type = 1)
منحنى بسعر ثابت. كل عملية شراء/بيع تحدث بسعر ثابت، قابل للتكوين عند Initialize:
base_supply_graduation (علاقة التكلفة الخطية تجعل اشتقاق quote_reserve_target مباشرًا).
منحنى السعر الخطي (curve_type = 2)
السعر يزداد خطيًا مع base_sold:
base_sold — المشترون الأوائل يدفعون قريبًا من الصفر، المشترون المتأخرون يدفعون أكثر بكثير، مع ارتفاع السعر الهامشي دائمًا بميل ثابت. التطبيق على السلسلة يعيش في curve/linear_price.rs.
مقارنة أشكال المنحنى
عتبة التخرج
يتم حسابquote_reserve_target عند Initialize كقيمة الاقتباس المطلوبة لنقل base_sold من 0 إلى base_supply_graduation:
quote_vault.balance ≥ quote_reserve_target. نظرًا لأن عمليات الشراء تأتي بأحجام منفصلة، قد يتجاوز الرصيد الفعلي عند التخرج الهدف قليلاً — يصبح الفائض سيولة إضافية على جانب الاقتباس في مجمع CPMM الناتج.
مثال عملي — إطلاق تربيعي
المعاملات:base_supply_max = 1_000_000_000(مليار رمز أساس، 6 منازل عشرية)base_supply_graduation = 800_000_000(بيع 80% يؤدي إلى التخرج)k = 40(مقياس السعر)- الرسوم: 1% شراء، 1% بيع، تقسيم
lp:creator:protocol = 60:20:20.
s = 0): 0 (المربع البحت يبدأ من صفر).
السعر عند بيع 50% (s = 500_000_000):
s = 800_000_000):
10 USDC:
- الحالة الافتراضية:
s = 0،quote_vault = 0. - اطرح الرسم:
quote_after_fee = 10 × 0.99 = 9.9. - حل
(40 / (3e18)) × s³ = 9.9⇒s ≈ 6.22e6رموز أساس مشتراة. - تقسيم رسم 1% (
0.1 USDC): lp0.06، creator0.02، protocol0.02. يبقى حصة lp فيquote_vault؛ الحصتان الأخريان توجهان إلى عدادات الاستحقاق الخاصة بهما.
s₀ = 750e6 مع quote_in_after_fee = 9.9 تقريبًا ∆s ≈ 0.4e6 — تخفيض ~15× في الأساس لكل USDC مقارنة بأول عملية شراء.
ميكانيكا الرسوم خلال مرحلة المنحنى
على كلBuy:
- يُترك
lp_shareفيquote_vault. هذا ما يجعل المنحنى الفعلي أكثر إحكامًا (احتياطي اقتباس أكثر ضد نفس إمداد الأساس). - تزيد
protocol_shareقيمةLaunchState.state_data.protocol_fees_quote. - تزيد
creator_shareقيمةLaunchState.state_data.creator_fees_quote.
Sell ينطبق نفس التقسيم لكن الرسم يُؤخذ من quote_out الخارج.
يتم مسح كلا العدادين عبر CollectFees (مسؤول أو منشئ، كل واحد إلى عدّاده الخاص).
الدقة
- كميات جانب الأساس:
u64. - كميات جانب الاقتباس:
u64. - المكعبات / المنتجات الوسيطة:
u128. - حلول Newton لـ “شراء اقتباس دقيق” و “بيع اقتباس دقيق” تكرر في
u128بنقطة ثابتة مع عدد تكرار أقصى قابل للتكوين (افتراضي 10). وضع الفشل هوNotConverged— نادر خارج حالات الحافة بالقرب من التخرج.
التسليم إلى CPMM
عند حدوثGraduate:
cpmm_initial_price هو price(base_sold) آليًا (إنه السعر الهامشي للمنحنى في لحظة التسليم). يفتح مجمع CPMM بدقة بهذا السعر، لذا المراقب الذي يتحول من واجهة المنحنى إلى واجهة CPMM لا يرى قفزة.
أين تذهب بعد ذلك
products/launchlab/accounts— حقولLaunchStateالتي تخزن هذه المعاملات.products/launchlab/instructions— قوائم حسابBuy،Sell،Graduate.algorithms/constant-product— رياضيات CPMM التي يستخدمها مجمع ما بعد التخرج.
- وحدة Raydium SDK v2
LaunchLab - مصدر برنامج Raydium LaunchLab


