A person analyzing data on multiple screens

تجارت خودکار ارزهای دیجیتال: ربات‌ها چگونه واقعاً در اجرای معاملات پول به دست می‌آورند یا از دست می‌دهند

By Marcus Hale11 دقیقه مطالعه

تجارت خودکار ارزهای دیجیتال استفاده از نرم‌افزار برای نظارت بر بازارها و قرار دادن سفارشات به‌طور خودکار بر اساس قوانین از پیش تعیین‌شده یا استراتژی‌های کپی‌شده است که هدف آن سرعت و ثبات است. بخش سخت این کار منطق نیست، بلکه کیفیت اجرا است، جایی که لغزش، عمق دفتر سفارش و MEV زنجیره‌ای می‌تواند یک تست بازگشتی تمیز را به پر کردن‌های زنده نامنظم تبدیل کند.

نکات کلیدی

چگونه ربات‌ها در DEX های AMM معامله می‌کنند

اجرا در AMM یک چرخه عمر تراکنش را اضافه می‌کند که در یک مکان دفتر سفارش وجود ندارد. یک مبادله یک تراکنش است که به شبکه ارسال می‌شود، سپس در یک بلوک تأیید می‌شود، سپس توسط کد قرارداد هوشمند در برابر یک استخر نقدینگی اجرا می‌شود.

نامه نظر Uniswap Labs به SEC پروتکل Uniswap را به عنوان قراردادهای هوشمند متن باز بر روی اتریوم توصیف می‌کند که در آن تأمین‌کنندگان نقدینگی استخرها را تأمین می‌کنند، معامله‌گران با کیف‌پول‌های خودنگهدار متصل می‌شوند و مبادلات در برابر استخر بدون دفتر سفارش مرکزی یا نگهداری شخص ثالث انجام می‌شود.این ساختار مجموعه‌ای متفاوت از حالت‌های شکست برای تجارت خودکار ارزهای دیجیتال ایجاد می‌کند. Outlook India سه مورد را که بلافاصله برای ربات‌ها مهم است، برجسته می‌کند: 1. تأثیر قیمت از خود استخر. معاملات بزرگ نسبت استخر را به‌طور طراحی تغییر می‌دهند که قیمت اجرا را تغییر می‌دهد. 2. تأخیر تأیید. ازدحام شبکه می‌تواند شامل شدن را کند کند و قیمت می‌تواند بین امضا و اجرا حرکت کند. 3. پیش‌دستی. ربات‌ها می‌توانند تراکنش‌های معلق را مشاهده کنند و قبل از مبادلات بزرگ معامله کنند، که اجرای بدتر و لغزش را افزایش می‌دهد.مقیاس میدان اهمیت دارد زیرا به معامله‌گران می‌گوید که با چه چیزی رقابت می‌کنند. نامه Uniswap Labs بیان می‌کند که حجم تجمعی پروتکل Uniswap در سال ۲۰۲۳ از ۱.۵ تریلیون دلار در ۶.۵ میلیون آدرس کیف‌پول فراتر رفته است، با حجم روزانه‌ای که به‌طور متوسط بیش از ۱ میلیارد دلار است. همچنین بیان می‌کند که تنها حدود ۱۵-۲۰٪ از حجم پروتکل Uniswap از اپلیکیشن Uniswap ناشی می‌شود و بقیه از رابط‌های دیگر یا تعامل مستقیم با قراردادهای هوشمند می‌آید. این یک راه مودبانه برای گفتن این است که بیشتر جریان از UI که یک معامله‌گر خرده‌فروشی می‌بیند، نمی‌آید و بسیاری از آن خودکار است.بنابراین خودکارسازی DEX کمتر به "قرار دادن یک سفارش" مربوط می‌شود و بیشتر به انتخاب حدود اجرای قابل قبول مربوط می‌شود. دکمه‌ای که کاربر با آن مواجه است، تحمل لغزش است که مبادله را لغو می‌کند اگر قیمت اجرا فراتر از درصد انتخابی حرکت کند. اگر خیلی تنگ باشد، تراکنش در حین نوسان یا ازدحام شکست می‌خورد. اگر خیلی شل باشد، ربات می‌تواند توسط حرکت نامطلوب یا سفارش‌دهی شکارچی انتخاب شود. منطق استراتژی مشابهی که در یک CEX پایدار به نظر می‌رسد، می‌تواند در یک AMM شکننده شود زیرا ربات در معرض تأثیر قیمت و سفارش‌دهی خصمانه در طول پنجره mempool قرار دارد.لغزش به عنوان قاتل پنهان عملکردلغزش تفاوت بین قیمت مورد انتظار هنگام قرار دادن یک معامله و قیمت واقعی اجرا است و می‌تواند مثبت یا منفی باشد. این تعریف کوچک به نظر می‌رسد تا زمانی که در فرکانس ضرب شود. یک ربات که ده‌ها یا صدها بار معامله می‌کند، فقط یک بار لغزش نمی‌پردازد. این به عنوان یک مالیات تکراری که جمع می‌شود، پرداخت می‌شود.تحلیل Outlook India از عوامل لغزش به وضوح به این دلیل که تست‌های بازگشتی ناامیدکننده هستند، می‌پردازد. تست‌های بازگشتی اغلب فرض می‌کنند که پر کردن‌ها در میانه یا آخرین معامله انجام می‌شود، سپس یک هزینه ثابت کسر می‌کنند. تجارت زنده هزینه متغیری را پرداخت می‌کند که دقیقاً زمانی که ربات‌ها تمایل به تجارت بیشتر دارند، افزایش می‌یابد: نوسان بالا، نقدینگی نازک و حرکات سریع. در صرافی‌های متمرکز، عمق ناکافی دفتر سفارش و سفارشات بازار مقصران کلاسیک هستند. در DEX ها، تأثیر قیمت استخر و تأخیرهای تأیید یک لایه دوم را اضافه می‌کند و ربات‌های پیش‌دستی می‌توانند قیمت واقعی را بدتر کنند.اثر جمع‌شونده فقط به ورود مربوط نمی‌شود. این به خروج‌ها و منطق توقف نیز ضربه می‌زند. اگر یک ربات از آستانه‌های تنگ استفاده کند، لغزش کوچک می‌تواند یک "برداشت سود" را به یک "خنثی" تبدیل کند، یا یک "خنثی" را به یک ضرر تبدیل کند. اگر از سفارشات بازار برای تضمین خروج استفاده کند، ممکن است به یک دسته پیشنهاد نازک بفروشد یا به یک دسته پیشنهاد نازک بخرد، به‌ویژه در طول نوسانات ناشی از اخبار. Outlook India اشاره می‌کند که حتی لغزش کوچک در هر معامله می‌تواند به‌طور قابل توجهی سودآوری بلندمدت را کاهش دهد و اینکه لغزش استراتژی‌هایی را که به نقاط قیمت دقیق وابسته‌اند، مختل می‌کند.در AMM ها، تحمل لغزش یک هزینه مرتبه دوم اضافه می‌کند: تراکنش‌های ناموفق می‌توانند هنوز هزینه‌های گاز را متحمل شوند و ربات ممکن است در شرایط بدتر دوباره ارسال کند. این یک حلقه بازخورد ایجاد می‌کند که در آن ازدحام تأخیرها را افزایش می‌دهد، تأخیرها حرکت قیمت نامطلوب را افزایش می‌دهند و ربات یا به‌طور مکرر شکست می‌خورد یا تحمل را گسترش می‌دهد و پر کردن‌های بدتر را می‌پذیرد. اینجاست که "چگونه تجارت ارزهای دیجیتال را خودکار کنیم" دیگر یک سؤال استراتژی نیست و به یک سؤال مهندسی اجرا تبدیل می‌شود. ربات به یک تعریف از بدترین پر کردن قابل قبول نیاز دارد، نه فقط یک تعریف از سیگنال ایده‌آل.

کنترل‌های عملی برای خودکارسازی ایمن‌تر

کنترل‌هایی که اهمیت دارند، آن‌هایی هستند که پر کردن‌های واقعی را تغییر می‌دهند. Outlook India چندین تاکتیک کاهش لغزش را فهرست می‌کند که به‌طور مستقیم به محدودیت‌های ربات ترجمه می‌شوند و آن‌ها مهم‌تر از افزودن یک نشانگر دیگر به لایه سیگنال هستند.

1. در صرافی‌های متمرکز، سفارشات محدود را ترجیح دهید. سفارشات محدود بدترین قیمت پرداخت شده یا دریافت شده را محدود می‌کنند، در حالی که سفارشات بازار به‌طور صریح هر چیزی را که دفتر ارائه می‌دهد، می‌پذیرند. 2. جفت‌های با نقدینگی بالاتر را معامله کنید. بازارهای عمیق احتمال اینکه سفارش ربات قیمت شود را کاهش می‌دهند. 3. از پنجره‌های نوسان شناخته‌شده اجتناب کنید.

اوج‌های خبری و حرکات ناگهانی جایی هستند که قیمت مورد انتظار و قیمت اجرا سریع‌ترین انحراف را دارند. 4. سفارشات بزرگ را به معاملات کوچک‌تر تقسیم کنید. تقسیم کردن تأثیر قیمت غیرخطی را کاهش می‌دهد و احتمال راه رفتن در دفتر یا حرکت استخر AMM را کاهش می‌دهد. 5. تحمل لغزش DEX را به‌طور عمدی تنظیم کنید. خیلی کم باعث افزایش مبادلات ناموفق می‌شود، خیلی زیاد احتمال اهدا کردن لبه به حرکت نامطلوب یا پیش‌دستی را افزایش می‌دهد.

این کنترل‌ها همچنین روشن می‌کنند که چه زمانی انواع محبوب ربات‌ها منطقی هستند. یک ربات گرید به طور ساختاری یک استراتژی با گردش بالا است، بنابراین به اسپردها و لغزش‌های کوچک مکرر حساس‌تر است. یک ربات DCA به طور ساختاری یک استراتژی هموارسازی اجرا است، بنابراین اغلب برای کاهش ریسک زمان‌بندی و جلوگیری از مجبور کردن یک پر کردن بزرگ واحد در یک بازار نازک استفاده می‌شود. کپی تریدینگ یک لایه تأخیر و عدم تطابق اندازه را اضافه می‌کند: سیگنال کپی شده ممکن است در یک رژیم بازار مایع تولید شود، اما اجرای دنبال‌کننده می‌تواند بدتر باشد اگر دنبال‌کننده در یک مکان کوچک‌تر، یک جفت نازک‌تر یا یک پنجره زمانی متفاوت معامله کند.

پلتفرم‌ها اتوماسیون بازار را به عنوان "تنظیم و فراموش کردن" معرفی می‌کنند، اما واقعیت عملی نزدیک‌تر به "تنظیم و نظارت" است. توصیف AutoTrader BTSE شامل مکانیزم‌های توقف ضرر و برداشت سود داخلی است و حداقل سرمایه‌گذاری پایین را برجسته می‌کند که مانع تلاش برای اتوماسیون را کاهش می‌دهد. بخش گمشده برای اکثر کاربران این است که کنترل‌های ریسک باید شامل محدودیت‌های اجرایی باشد، نه فقط محرک‌های سطح قیمت.

بدون آن، ربات می‌تواند به توقف احترام بگذارد و هنوز هم خروجی بدتر از حد انتظار را ارائه دهد زیرا مکان نمی‌تواند اندازه را در قیمت فرض شده پر کند.

محدودیت‌ها، مقررات و نکات کلیدی

اتوماسیون جایگزینی برای ساختار بازار نیست. ربات‌های CEX به عمق دفتر سفارش، اسپردها و معامله بین پر شدن و پرداخت برای فوری بودن محدود هستند. ربات‌های DEX به نقدینگی استخر، زمان تأیید و ترتیب خصمانه محدود هستند. رفتار با این‌ها به عنوان یک محیط مشابه، نحوه‌ای است که معامله‌گران در نهایت از پر شدن‌هایی که هیچ شباهتی به تست‌های قبلی آن‌ها ندارند، شگفت‌زده می‌شوند.

انعطاف‌پذیری واقعی معامله بین رویکردهای دستی و خودکار است. BTSE اتوماسیون را به عنوان سریع‌تر، مقیاس‌پذیرتر و کمتر احساسی معرفی می‌کند، در حالی که بحث‌های جامعه در مورد TradingView نشان می‌دهد که اتوماسیون می‌تواند در شرایط غیرمنتظره کمتر انعطاف‌پذیر باشد و برخی از معامله‌گران رویکرد ترکیبی را ترجیح می‌دهند. هر دو می‌توانند درست باشند.

یک ربات می‌تواند یک برنامه را با انضباط اجرا کند، اما همچنین برنامه را زمانی اجرا خواهد کرد که برنامه برای رژیم نادرست باشد مگر اینکه قوانین شامل بررسی‌های رژیم باشند.

چارچوب‌های نظارتی نیز در مورد مکان‌های DeFi نامرتب است. نامه نظر Uniswap Labs استدلال می‌کند که تعریف پیشنهادی SEC از "بورس" بسیار گسترده است و به کاربرد مقررات بورس در پروتکل‌های DeFi اعتراض می‌کند و تأکید می‌کند که پروتکل Uniswap کد قرارداد هوشمند خودمختار است و Uniswap Labs کنترل پروتکل را ندارد.

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

یک راهنمای تجارت خودکار که به اجرای توجه نکند، ناقص است. مدل ذهنی پایدار این است: استراتژی قصد را تولید می‌کند، اجرا قصد را به پر کردن تبدیل می‌کند و لغزش فاصله قابل اندازه‌گیری بین این دو است. اگر آن فاصله مدل‌سازی و محدود نشود، اتوماسیون فقط اشتباه را مقیاس‌گذاری می‌کند.

نکته

من شاهد بوده‌ام که معامله‌گران بر کیفیت سیگنال وسواس دارند و سپس توسط مورد خطی خسته‌کننده‌ای که واقعاً منحنی را تعیین می‌کند، غافلگیر می‌شوند: لغزش. تست‌های قبلی پر کردن‌هایی را چاپ می‌کنند که هرگز وجود نداشته‌اند، به ویژه برای ربات‌های با گردش بالا. به محض اینکه ربات شروع به عبور از اسپردها با سفارش‌های بازار یا اندازه‌گیری در عمق نازک می‌کند، "مزیت" به هزینه‌ای که به بازار پرداخت می‌شود تبدیل می‌شود.

موضع تمیز این است که تجارت خودکار ارزهای دیجیتال را ابتدا به عنوان یک مشکل اجرایی در نظر بگیریم. در CEXها، این به معنای طراحی حول عمق دفتر سفارش و بدترین پر کردن قابل قبول است، نه فقط "آیا نشانگر تغییر کرده است؟" در AMMها مانند Uniswap، این به معنای احترام به چرخه عمر تراکنش است، جایی که تأخیر تأیید و جلو افتادن می‌تواند یک مبادله عادی را به یک مبادله بد تبدیل کند. ربات یک پیرو کامل قوانین است. اگر قوانین به اجرای قیمت ندهند، به طور کامل شما را به چاله خواهد برد.

منابع

Outlook India

BTSE

کمیسیون بورس و اوراق بهادار ایالات متحده (نامه نظر Uniswap Labs)

Reddit r/TradingView

[@portabletext/react] Unknown block type "span", specify a component for it in the `components.types` prop

[@portabletext/react] Unknown block type "span", specify a component for it in the `components.types` prop

[@portabletext/react] Unknown block type "span", specify a component for it in the `components.types` prop

[@portabletext/react] Unknown block type "span", specify a component for it in the `components.types` prop

[@portabletext/react] Unknown block type "span", specify a component for it in the `components.types` prop

[@portabletext/react] Unknown block type "span", specify a component for it in the `components.types` prop

[@portabletext/react] Unknown block type "span", specify a component for it in the `components.types` prop

[@portabletext/react] Unknown block type "span", specify a component for it in the `components.types` prop

[@portabletext/react] Unknown block type "span", specify a component for it in the `components.types` prop

[@portabletext/react] Unknown block type "span", specify a component for it in the `components.types` prop

[@portabletext/react] Unknown block type "span", specify a component for it in the `components.types` prop

[@portabletext/react] Unknown block type "span", specify a component for it in the `components.types` prop

[@portabletext/react] Unknown block type "span", specify a component for it in the `components.types` prop

[@portabletext/react] Unknown block type "span", specify a component for it in the `components.types` prop

[@portabletext/react] Unknown block type "span", specify a component for it in the `components.types` prop

[@portabletext/react] Unknown block type "span", specify a component for it in the `components.types` prop

  • [@portabletext/react] Unknown block type "span", specify a component for it in the `components.types` prop
  • [@portabletext/react] Unknown block type "span", specify a component for it in the `components.types` prop
  • [@portabletext/react] Unknown block type "span", specify a component for it in the `components.types` prop
  • [@portabletext/react] Unknown block type "span", specify a component for it in the `components.types` prop

پرسش‌های متداول

تجارت خودکار ارزهای دیجیتال چگونه مرحله به مرحله کار می‌کند؟

نرم‌افزار داده‌های بازار یا داده‌های زنجیره‌ای را نظارت می‌کند، قوانین از پیش تعیین‌شده را اعمال می‌کند و سپس به‌طور خودکار سفارشات یا مبادلات را ارسال و مدیریت می‌کند. نتیجه واقعی به اجرا بستگی دارد: اینکه آیا سفارش در قیمت مورد انتظار پر می‌شود یا با لغزش مواجه می‌شود. در DEXها، تراکنش باید قبل از اجرای مبادله در زنجیره تأیید شود که این باعث تأخیر و ریسک پیش‌دستی می‌شود.

آیا یک ربات معاملاتی سودآور است اگر تست بازگشتی خوب به نظر برسد؟

یک تست بازگشتی سودآور می‌تواند در عمل شکست بخورد زیرا تست‌های بازگشتی اغلب فرض می‌کنند که پر شدن‌هایی را دریافت خواهید کرد که در واقع دریافت نمی‌کنید. لغزش، اسپردها و نقدینگی محدود می‌توانند قیمت‌های ورود و خروج را به اندازه‌ای تغییر دهند که لبه مدل‌شده را از بین ببرند. قبل از اعتماد به هر منحنی P&L، لغزش را به‌عنوان ورودی اصلی در نظر بگیرید.

لغزش در تجارت خودکار چیست و چرا این‌قدر مهم است؟

لغزش فاصله بین قیمت مورد انتظار هنگام قرار دادن یک معامله و قیمت واقعی اجرای آن است و می‌تواند مثبت یا منفی باشد. این موضوع برای ربات‌ها اهمیت بیشتری دارد زیرا لغزش کوچک در هر معامله در بسیاری از معاملات انباشته می‌شود. نوسانات، نقدینگی پایین و سفارشات بازار از عوامل رایج هستند، با علل خاص DEX مانند تأخیر در تأیید.

آیا ربات‌های DEX همانند ربات‌های CEX هستند؟

خیر. ربات‌های CEX در برابر یک دفتر سفارش معامله می‌کنند، جایی که محدودیت‌های اصلی عمق، اسپردها و نوع سفارش هستند. ربات‌های DEX AMM در برابر استخرهای نقدینگی از طریق تراکنش‌های زنجیره‌ای معامله می‌کنند، جایی که تأثیر قیمت، زمان تأیید و پیش‌دستی می‌تواند به‌طور قابل توجهی اجرای معامله را تغییر دهد.

چگونه می‌توانم لغزش را هنگام خودکار کردن تجارت ارزهای دیجیتال کاهش دهم؟

از سفارشات محدود به جای سفارشات بازار در CEXها استفاده کنید، بر روی جفت‌های با نقدینگی بالاتر تمرکز کنید و از لحظات با نوسانات بالا که قیمت‌ها فاصله می‌گیرند، اجتناب کنید. سفارشات بزرگ را به معاملات کوچکتر تقسیم کنید تا تأثیر قیمت را کاهش دهید. در DEXها، تحمل لغزش را به‌طور عمدی تنظیم کنید زیرا خیلی تنگ می‌تواند باعث شکست مبادلات و خیلی شل می‌تواند اجرای بد را قفل کند.