Akbar Ahmadi Saray
بازگشت به نمونه‌کارها →
ENFA
2021

SmartBitrage

.NET CoreNode.jsCryptoTradingAutomationREST API

SmartBitrage یک سیستم آربیتراژ خودکار ارز دیجیتال است که طراحی و ساختم. تفاوت‌های قیمت در چندین صرافی را به‌صورت real-time رصد می‌کند و برای کسب فرصت‌های آربیتراژ معامله انجام می‌دهد.

آربیتراژ چیست؟

آربیتراژ ارز دیجیتال از معامله همان دارایی با قیمت‌های مختلف در صرافی‌های مختلف به‌صورت همزمان بهره می‌برد. در صرافی A با قیمت پایین بخر، در صرافی B با قیمت بالا بفروش — سود تفاوت قیمت منهای کارمزد تراکنش است. در عمل، پنجره‌ها کوچک هستند (ثانیه تا دقیقه) و برای سودآور بودن نیاز به اجرای خودکار دارند.

معماری سیستم

سیستم از سه لایه اصلی تشکیل شده:

لایه داده بازار

  • از طریق REST API‌ها و WebSocket‌ها به صرافی‌های متعدد ارز دیجیتال متصل می‌شود
  • داده‌های دفترچه سفارش را به فرمت یکپارچه نرمال می‌کند
  • دیدگاه real-time از قیمت‌ها، spread‌ها و نقدینگی موجود را حفظ می‌کند

موتور تشخیص فرصت

  • به‌طور مداوم مسیرهای آربیتراژ سودآور را اسکن می‌کند
  • کارمزدهای معاملاتی، هزینه‌های انتقال و آستانه حداقل سود را در نظر می‌گیرد
  • فرصت‌های آربیتراژ دو-پایه (A→B) و مثلثی را تشخیص می‌دهد

لایه اجرا

  • سفارش‌ها را در هر دو طرف آربیتراژ به‌صورت همزمان قرار می‌دهد
  • تکمیل جزئی، لغو سفارش و محدودیت‌های ریسک را مدیریت می‌کند
  • تمام معاملات را با مسیر حسابرسی کامل ثبت می‌کند

تصمیمات فنی کلیدی

همزمانی: سیستم هزاران به‌روزرسانی قیمت در ثانیه را مدیریت می‌کند. استفاده از async I/O در سراسر pipeline داده برای همگامی با فیدهای داده بازار ضروری بود.

مدیریت ریسک: محدودیت‌های سخت روی اندازه پوزیشن، حداکثر ضرر در هر جلسه و circuit breaker‌ها برای توقف معاملات در شرایط بازار غیرعادی.

قابلیت اطمینان: سیستم سلامت خودش را رصد می‌کند و می‌تواند پس از خرابی بدون باقی گذاشتن پوزیشن‌های باز به‌خوبی restart کند.

نتایج

سیستم با موفقیت فرصت‌های آربیتراژ در صرافی‌های اصلی ارز دیجیتال را شناسایی و کسب کرد و الگوریتم اصلی را از طریق معامله زنده اعتبارسنجی کرد.