في حالة الوضع الحالي لصناعة Web3، تهيمن المنتجات المتعلقة بالتمويل اللامركزي على السوق بشكل مطلق. ومن بين هذه المنتجات، يعتبر AMM (صانع السوق التلقائي) كعنصر أساسي، وهو المحرك القوي للتغيرات في التمويل في Web3. ستقدم هذه المقالة عرضًا لعدة تنفيذات مهمة لـ AMM في نظام Solana البيئي، على أمل أن تساعد مزودي السيولة في كيفية اختيار استراتيجيات استثمارهم.
CPMM
CPMM (صانع السوق ذو المنتج الثابت ) كأحد أبسط تطبيقات AMM، تم تطبيقه في العديد من المنتجات. هنا نستخدم AMM المستند إلى المنتج الثابت الذي أطلقته Raydium كمثال. المنتج الثابت يعني أن كمية التوكنات في الحوض من نوعين لها حاصل ثابت: X * Y = k.
بالنسبة لمزودي السيولة، عندما يضيف أي شخص السيولة إلى الخزانة (يضيف الأصول)، يقوم CPMM تلقائيًا بإنشاء حساب مرتبط بعنوان المحفظة وإصدار LP Token (كل زوج رمزي له LP Token Mint خاص به)، تُستخدم هذه LP Token لإثبات أن عنوان المحفظة يمتلك حصة في خزانة معينة، وسيتم إتلاف الرمز المميز المقابل عند سحب مزود السيولة.
برنامج CPMM على السلسلة تم تطويره باستخدام Anchor، ويمكن العثور على كود البرنامج في . دعونا نؤكد ببساطة كيف يتم تحقيق المنتج الثابت.
أولاً، عند استخدام المستخدم لـ Raydium لتبادل الرموز باستخدام CPMM، سيتم تفعيل تعليمات swap ذات الصلة.
على سبيل المثال (فقط لتوضيح الحالة، هذه الوثيقة لا تتحمل أي مسؤولية تجاه أي رمز): عندما يرغب المستخدم في استخدام USDC لتبادل TRUMP، يمكنه القيام بالتبادل من خلال بركة TRUMP-USDC.
على سبيل المثال، دعنا نلقي نظرة على هذه الصفقة، لتبسيط الأمر، دعنا نتجاهل التعليمات الأخرى في الصفقة ونتطلع فقط إلى جزء Raydium. ابحث عن Raydium CPMM: swapBaseInput:
في حسابات الإدخال، يمكننا رؤية أن الرمز المدخل هو USDC، والرمز المخرج هو TRUMP. في AMM في نظام Solana البيئي، يمكن تمثيل زوج LP ببساطة من خلال حساب الرمز، دون الحاجة إلى إنشاء برنامج عقد جديد ونشره (مثل عقود المصنع الشائعة في Ethereum). عند حدوث الصفقة، يتم التفاعل مباشرة مع برنامج CPMM الخاص بـ Raydium، حيث سيقوم برنامج Solana بتعديل حالة حساب الرمز المعني من خلال تمرير عنوان الحوض، عنوان الرمز، وغيرها من المعلومات، لإجراء عملية السواب.
على سبيل المثال، يمكن العثور على كود أمر swapBaseInput هنا. بعد مجموعة من الفحوصات الأولية، تم حساب الكمية الدقيقة التي يمكن استبدالها من الرموز المستهدفة من خلال ConstantProductCurve.swap_base_input_without_fees:
الصيغة المستخدمة هي:
أي أن TokenX و TokenY بعد تغيير إجمالي كميتهما، يجب أن يبقى حاصل ضربهما ثابتًا. الجانب الأيسر من المعادلة هو حاصل الضرب بعد التغيير، والجانب الأيمن هو حاصل الضرب قبل التغيير.
الصيغة المذكورة أعلاه، بعد التحويل الرياضي، يمكن أن نحصل على معادلة التحويل ل Δy (أي عدد رموز y التي يمكننا الحصول عليها):
أي أن delta_y = (delta_x * y) / (x + delta_x). لاحظ أن هذه الحسابات لا تشمل رسوم المعاملات، حيث تم خصمها بالفعل في المنطق السابق لـ swap_base_input.
CLMM
CLMM ( صانع سوق السيولة المركزة ) هو أيضاً AMM أطلقته Raydium، وهو مشابه لـ Uniswap V3، حيث يحتوي كل زوج من الرموز على مستويات متعددة من الرسوم، مما يتيح إنشاء بركة تتوافق مع كل مستوى.
نظرًا لأن تنفيذ CLMM يستند إلى Uniswap V3 ، يمكن الرجوع إلى العديد من المفاهيم وطرق التنفيذ عند دراستها من تنفيذ Uniswap. كما أنها ورثت مفاهيم Uniswap مثل tick وطبقات الرسوم المتعددة والسيولة المركزة. يمكن العثور على المزيد من المحتوى في دورة تطوير DEX التي أطلقتها ZAN: ممارسة تطوير DEX - تحليل كود Uniswap - كيفية عمل Uniswap - ZAN
ولكن يجب الانتباه إلى أنه، مثل CPMM، وبسبب خصائص سلسلة Solana، فإن Raydium CLMM لا يحتاج إلى نشر عقد منفصل لكل حوض، لذا فليس هناك مفهوم العقد المصنع. هذه النقطة تختلف عن Uniswap.
CLMM يسمح لمزود السيولة باختيار نطاق سعر عند ضخ الأموال، وستوزع الأموال فقط ضمن النطاق المختار:
بالنسبة لحوض السيولة المركزية، توجد الرموز على جانبي السعر الحالي، وتحتوي نطاق السعر المحدد في الصورة أعلاه على السعر الحالي، لذلك سيتم تخصيص الأموال لكل من الرمزين في الحوض.
يمكننا أيضًا ضخ نوع واحد من الرموز فقط لتوفير ما يسمى بالسيولة أحادية الجانب (كما هو موضح في الصورة أدناه). هذا مشابه إلى حد ما لأوامر الحد في النماذج المالية التقليدية، حيث يتم استخدام أموال LP فقط عندما يصل سعر الرمز إلى نطاق معين، ومع ذلك، يجب أن يؤخذ في الاعتبار المزيد من نقاط المخاطر في هذا النموذج.
بشكل عام، بالنسبة للأحواض ذات تقلبات الأسعار الصغيرة، يميل مزود السيولة إلى اختيار نطاق أصغر؛ على العكس من ذلك، بالنسبة لتلك الأحواض ذات تقلبات الأسعار الشديدة، يميلون إلى اختيار نطاق أكبر. الهدف من ذلك هو محاولة عدم ترك السعر الحالي يبتعد عن النطاق السعري الذي اختاروه، مما يتسبب في خسائر غير دائمة كثيرة.
من المهم أن نلاحظ أن السيولة المركزية، على الرغم من أنها يمكن أن تعزز من كفاءة استخدام أموال مزودي السيولة، إلا أنها تتطلب أيضًا مستوى أعلى من الوعي المالي من مزودي السيولة. يحتاج مزودو السيولة إلى إدارة سيولتهم بشكل أكثر نشاطًا. إذا لم يتمكن مزود السيولة من التعامل مع هذا الأمر بشكل جيد، فإن التقلبات المتكررة على السلسلة ستؤدي بسهولة إلى تكبد مزود السيولة خسائر غير دائمة شديدة.
DLMM
DLMM (Dynamic Liquidity Market Maker) هو منتج AMM تم إطلاقه بواسطة Meteora، وهو أيضًا نوع من Uniswap V3، ومشابه جدًا لـ CLMM المذكور أعلاه، كما يسمح DLMM لمزود السيولة بتركيز أمواله ضمن نطاق معين بالقرب من السعر الحالي. ومع ذلك، فإن DLMM يختلف بعض الشيء في التنفيذ، ويقدم بعض الميزات الخاصة.
تقدم DLMM مفهوم Bin، حيث يبدأ المسبح من السعر الأساسي، ويعتبر كل Bin خطوة صغيرة بمثابة Bin. إذا حدثت صفقة داخل نفس Bin، فسوف يستفيد المتداول من عدم وجود انزلاق. يمكن أن يزيد هذا بشكل كبير من حجم التداول ومعدل نجاح التداول، ومن الناحية النظرية يمكن أن يجني مزود السيولة المزيد من رسوم التداول.
على غرار CLMM ، تتوزع الرموز في الحوض أيضًا على جانبي السعر الحالي ، حيث يحتاج رمز واحد فقط إلى توفير السيولة من جانب واحد. ولكن وفقًا لمفهوم Bin ، فإن Bin النشط الحالي (الذي يشير إلى سعر التبادل الحالي) يحتوي على نوعين من الرموز. أي:
Bin النشط الحالي: يوجد فيه نوعان من الرموز، سيتم تبادل الرموز في Bin الحالي بسعر ثابت وبدون انزلاق.
حاويات أخرى: تتوزع على جانبي الحاوية النشطة الحالية، حيث توجد عملة واحدة فقط في كل جانب.
عندما يتغير مقدار الرموز المميزة في سلة المهملات التي تم تنشيطها حاليا، إذا انخفض الرمز المميز لأحد الجانبين إلى 0، فسيقوم DLMM بتعيين الحاوية التي تم تنشيطها حاليا على الحاوية التالية على يسار أو يمينها، اعتمادا على الوضع الفعلي في التجمع. هذا يقود تغيرات الأسعار في المجمع.
عند توفير السيولة بواسطة مزود السيولة، يقدم DLMM ثلاث استراتيجيات، وهي Spot وCurve وBid Ask.
حيث أن Spot هو الأكثر شيوعًا، فكل برك السيولة تقريبًا مناسبة، ويعتبر استراتيجية السيولة الأكثر بساطة.
يعتبر Curve أكثر ملاءمة لتلك المسابح التي تشهد تغيرات سعرية ضئيلة جداً، مثل أزواج العملات المستقرة. إن التقلبات السعرية في هذه المسابح ضئيلة جداً، كما تكشف عن شكلها، حيث يتم توزيع أموال مزود السيولة بشكل مركزي ضمن هذه الفئة، مما يمكنها من تحقيق أقصى استفادة من رسوم التداول.
إن عرض الطلب مناسب أكثر لتلك الأحواض التي تشهد تقلبات سعرية كبيرة جداً. يميل الناس دائماً إلى إجراء المزيد من صفقات التحكيم في مثل هذه الأحواض، حيث قد يكون من الصعب تركيز الأسعار ضمن نطاق ضيق. غالبًا ما تتطلب هذه الاستراتيجية من مزود السيولة تعديل مراكزه بشكل متكرر، لتجنب تحرك الأسعار بعيدًا عن النطاق المالي الذي تم تحديده. نظرًا لأنه يتطلب الحكم على السوق، فإن ذلك عادةً ما يكون غير سهل.
ملخص
AMM كجزء مهم من مجال التمويل اللامركزي Web3 ، من خلال آليته الفريدة وابتكاراته ، يعزز انتشار وتطور التمويل اللامركزي. مع التقدم المستمر في التكنولوجيا وتحسين النظام البيئي ، من المتوقع أن تلعب AMM دورًا أكبر في المستقبل ، مما يغير بشكل أكبر مشهد التمويل التقليدي.
المحتوى هو للمرجعية فقط، وليس دعوة أو عرضًا. لا يتم تقديم أي مشورة استثمارية أو ضريبية أو قانونية. للمزيد من الإفصاحات حول المخاطر، يُرجى الاطلاع على إخلاء المسؤولية.
بحث AMM في نظام Solana البيئي: الكود الأساسي وراء السيولة العالية
في حالة الوضع الحالي لصناعة Web3، تهيمن المنتجات المتعلقة بالتمويل اللامركزي على السوق بشكل مطلق. ومن بين هذه المنتجات، يعتبر AMM (صانع السوق التلقائي) كعنصر أساسي، وهو المحرك القوي للتغيرات في التمويل في Web3. ستقدم هذه المقالة عرضًا لعدة تنفيذات مهمة لـ AMM في نظام Solana البيئي، على أمل أن تساعد مزودي السيولة في كيفية اختيار استراتيجيات استثمارهم.
CPMM
CPMM (صانع السوق ذو المنتج الثابت ) كأحد أبسط تطبيقات AMM، تم تطبيقه في العديد من المنتجات. هنا نستخدم AMM المستند إلى المنتج الثابت الذي أطلقته Raydium كمثال. المنتج الثابت يعني أن كمية التوكنات في الحوض من نوعين لها حاصل ثابت: X * Y = k.
بالنسبة لمزودي السيولة، عندما يضيف أي شخص السيولة إلى الخزانة (يضيف الأصول)، يقوم CPMM تلقائيًا بإنشاء حساب مرتبط بعنوان المحفظة وإصدار LP Token (كل زوج رمزي له LP Token Mint خاص به)، تُستخدم هذه LP Token لإثبات أن عنوان المحفظة يمتلك حصة في خزانة معينة، وسيتم إتلاف الرمز المميز المقابل عند سحب مزود السيولة.
برنامج CPMM على السلسلة تم تطويره باستخدام Anchor، ويمكن العثور على كود البرنامج في . دعونا نؤكد ببساطة كيف يتم تحقيق المنتج الثابت.
أولاً، عند استخدام المستخدم لـ Raydium لتبادل الرموز باستخدام CPMM، سيتم تفعيل تعليمات swap ذات الصلة.
على سبيل المثال (فقط لتوضيح الحالة، هذه الوثيقة لا تتحمل أي مسؤولية تجاه أي رمز): عندما يرغب المستخدم في استخدام USDC لتبادل TRUMP، يمكنه القيام بالتبادل من خلال بركة TRUMP-USDC.
| | | | | --- | --- | --- | | حمام سباحة | ترامب | USDC | | 7XzVsjqTebULfkUofTDH5gDdZDmxacPmPuTfHa1n9kuh | 6p6xgHyF7AeE6TZkSmFsko444wqoP15icUSqi2jfGiPN | EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v |
على سبيل المثال، دعنا نلقي نظرة على هذه الصفقة، لتبسيط الأمر، دعنا نتجاهل التعليمات الأخرى في الصفقة ونتطلع فقط إلى جزء Raydium. ابحث عن Raydium CPMM: swapBaseInput:
في حسابات الإدخال، يمكننا رؤية أن الرمز المدخل هو USDC، والرمز المخرج هو TRUMP. في AMM في نظام Solana البيئي، يمكن تمثيل زوج LP ببساطة من خلال حساب الرمز، دون الحاجة إلى إنشاء برنامج عقد جديد ونشره (مثل عقود المصنع الشائعة في Ethereum). عند حدوث الصفقة، يتم التفاعل مباشرة مع برنامج CPMM الخاص بـ Raydium، حيث سيقوم برنامج Solana بتعديل حالة حساب الرمز المعني من خلال تمرير عنوان الحوض، عنوان الرمز، وغيرها من المعلومات، لإجراء عملية السواب.
على سبيل المثال، يمكن العثور على كود أمر swapBaseInput هنا. بعد مجموعة من الفحوصات الأولية، تم حساب الكمية الدقيقة التي يمكن استبدالها من الرموز المستهدفة من خلال ConstantProductCurve.swap_base_input_without_fees:
الصيغة المستخدمة هي:
أي أن TokenX و TokenY بعد تغيير إجمالي كميتهما، يجب أن يبقى حاصل ضربهما ثابتًا. الجانب الأيسر من المعادلة هو حاصل الضرب بعد التغيير، والجانب الأيمن هو حاصل الضرب قبل التغيير.
الصيغة المذكورة أعلاه، بعد التحويل الرياضي، يمكن أن نحصل على معادلة التحويل ل Δy (أي عدد رموز y التي يمكننا الحصول عليها):
أي أن delta_y = (delta_x * y) / (x + delta_x). لاحظ أن هذه الحسابات لا تشمل رسوم المعاملات، حيث تم خصمها بالفعل في المنطق السابق لـ swap_base_input.
CLMM
CLMM ( صانع سوق السيولة المركزة ) هو أيضاً AMM أطلقته Raydium، وهو مشابه لـ Uniswap V3، حيث يحتوي كل زوج من الرموز على مستويات متعددة من الرسوم، مما يتيح إنشاء بركة تتوافق مع كل مستوى.
نظرًا لأن تنفيذ CLMM يستند إلى Uniswap V3 ، يمكن الرجوع إلى العديد من المفاهيم وطرق التنفيذ عند دراستها من تنفيذ Uniswap. كما أنها ورثت مفاهيم Uniswap مثل tick وطبقات الرسوم المتعددة والسيولة المركزة. يمكن العثور على المزيد من المحتوى في دورة تطوير DEX التي أطلقتها ZAN: ممارسة تطوير DEX - تحليل كود Uniswap - كيفية عمل Uniswap - ZAN
ولكن يجب الانتباه إلى أنه، مثل CPMM، وبسبب خصائص سلسلة Solana، فإن Raydium CLMM لا يحتاج إلى نشر عقد منفصل لكل حوض، لذا فليس هناك مفهوم العقد المصنع. هذه النقطة تختلف عن Uniswap.
CLMM يسمح لمزود السيولة باختيار نطاق سعر عند ضخ الأموال، وستوزع الأموال فقط ضمن النطاق المختار:
بالنسبة لحوض السيولة المركزية، توجد الرموز على جانبي السعر الحالي، وتحتوي نطاق السعر المحدد في الصورة أعلاه على السعر الحالي، لذلك سيتم تخصيص الأموال لكل من الرمزين في الحوض.
يمكننا أيضًا ضخ نوع واحد من الرموز فقط لتوفير ما يسمى بالسيولة أحادية الجانب (كما هو موضح في الصورة أدناه). هذا مشابه إلى حد ما لأوامر الحد في النماذج المالية التقليدية، حيث يتم استخدام أموال LP فقط عندما يصل سعر الرمز إلى نطاق معين، ومع ذلك، يجب أن يؤخذ في الاعتبار المزيد من نقاط المخاطر في هذا النموذج.
بشكل عام، بالنسبة للأحواض ذات تقلبات الأسعار الصغيرة، يميل مزود السيولة إلى اختيار نطاق أصغر؛ على العكس من ذلك، بالنسبة لتلك الأحواض ذات تقلبات الأسعار الشديدة، يميلون إلى اختيار نطاق أكبر. الهدف من ذلك هو محاولة عدم ترك السعر الحالي يبتعد عن النطاق السعري الذي اختاروه، مما يتسبب في خسائر غير دائمة كثيرة.
من المهم أن نلاحظ أن السيولة المركزية، على الرغم من أنها يمكن أن تعزز من كفاءة استخدام أموال مزودي السيولة، إلا أنها تتطلب أيضًا مستوى أعلى من الوعي المالي من مزودي السيولة. يحتاج مزودو السيولة إلى إدارة سيولتهم بشكل أكثر نشاطًا. إذا لم يتمكن مزود السيولة من التعامل مع هذا الأمر بشكل جيد، فإن التقلبات المتكررة على السلسلة ستؤدي بسهولة إلى تكبد مزود السيولة خسائر غير دائمة شديدة.
DLMM
DLMM (Dynamic Liquidity Market Maker) هو منتج AMM تم إطلاقه بواسطة Meteora، وهو أيضًا نوع من Uniswap V3، ومشابه جدًا لـ CLMM المذكور أعلاه، كما يسمح DLMM لمزود السيولة بتركيز أمواله ضمن نطاق معين بالقرب من السعر الحالي. ومع ذلك، فإن DLMM يختلف بعض الشيء في التنفيذ، ويقدم بعض الميزات الخاصة.
تقدم DLMM مفهوم Bin، حيث يبدأ المسبح من السعر الأساسي، ويعتبر كل Bin خطوة صغيرة بمثابة Bin. إذا حدثت صفقة داخل نفس Bin، فسوف يستفيد المتداول من عدم وجود انزلاق. يمكن أن يزيد هذا بشكل كبير من حجم التداول ومعدل نجاح التداول، ومن الناحية النظرية يمكن أن يجني مزود السيولة المزيد من رسوم التداول.
على غرار CLMM ، تتوزع الرموز في الحوض أيضًا على جانبي السعر الحالي ، حيث يحتاج رمز واحد فقط إلى توفير السيولة من جانب واحد. ولكن وفقًا لمفهوم Bin ، فإن Bin النشط الحالي (الذي يشير إلى سعر التبادل الحالي) يحتوي على نوعين من الرموز. أي:
عندما يتغير مقدار الرموز المميزة في سلة المهملات التي تم تنشيطها حاليا، إذا انخفض الرمز المميز لأحد الجانبين إلى 0، فسيقوم DLMM بتعيين الحاوية التي تم تنشيطها حاليا على الحاوية التالية على يسار أو يمينها، اعتمادا على الوضع الفعلي في التجمع. هذا يقود تغيرات الأسعار في المجمع.
عند توفير السيولة بواسطة مزود السيولة، يقدم DLMM ثلاث استراتيجيات، وهي Spot وCurve وBid Ask.
ملخص
AMM كجزء مهم من مجال التمويل اللامركزي Web3 ، من خلال آليته الفريدة وابتكاراته ، يعزز انتشار وتطور التمويل اللامركزي. مع التقدم المستمر في التكنولوجيا وتحسين النظام البيئي ، من المتوقع أن تلعب AMM دورًا أكبر في المستقبل ، مما يغير بشكل أكبر مشهد التمويل التقليدي.