گرمای تابستان — همه‌چیز آب می‌شود، حتی قیمت‌های ما.−25%−۲۵٪ روی هر پلن سالانه، تا ۳۱ اوتدیدن پلن‌ها
EQVPS

اجرای Freqtrade روی یک VPS: نیازمندی‌ها، راه‌اندازی با Docker و محدودیت‌های صادقانه

13 تیر 1405 · 5 دقیقه مطالعه · EQVPS Team

یک ربات ترید روی لپ‌تاپ شما به یک دلیل کسل‌کننده ایده بدی است: لپ‌تاپ شما شبانه‌روزی آنلاین نیست، اما بازارها هستند. وسط یک ترید درِ لپ‌تاپ را ببندید و ربات از مدیریت یک پوزیشن باز دست می‌کشد. Freqtrade — ربات ترید متن‌باز و محبوب مبتنی بر Python — برای اجرای بدون نظارت ساخته شده، که دقیقاً همان چیزی است که یک VPS کوچک برایش هست. در ادامه می‌بینید واقعاً به چه چیزی نیاز دارد، چطور آن را با Docker راه‌اندازی کنید، و محدودیت‌های صادقانه‌ای که هیچ‌کس تا وقتی به آن‌ها برنخورید نمی‌گوید.

چرا یک سرور، نه دستگاه شما

دو دلیل، هر دو عملی:

این همان منطقی است که پشت اجرای هر ربات ترید روی یک VPS قرار دارد — Freqtrade فقط نیازمندی‌ها را ملموس می‌کند.

واقعاً به چه چیزی نیاز دارد

خود Freqtrade سبک است، اما درباره بار کاری واقع‌بین باشید:

راه‌اندازی با Docker Compose

Docker نگهداری‌شده‌ترین و کم‌دردسرترین راه برای اجرای Freqtrade است. روی یک جعبه تازه:

sudo apt update && sudo apt install -y docker.io docker-compose-v2
mkdir ~/ft && cd ~/ft
docker run --rm -v "$(pwd)/user_data:/freqtrade/user_data" \
  freqtradeorg/freqtrade:stable create-userdir --userdir user_data

فایل compose رسمی را بگیرید و یک پیکربندی را به‌صورت تعاملی بسازید (درباره صرافی، مبلغ استیک و dry-run از شما می‌پرسد):

curl -s https://raw.githubusercontent.com/freqtrade/freqtrade/stable/docker-compose.yml -o docker-compose.yml
docker compose run --rm freqtrade new-config --config user_data/config.json

اول dry-run — همیشه

هرگز یک استراتژی تازه را به پول واقعی وصل نکنید. Freqtrade به‌طور پیش‌فرض روی dry-run (ترید کاغذی) است و باید آن را همان‌جا نگه دارید تا وقتی استراتژی برای مدتی روی داده‌های بازار زنده خودش را ثابت کند. در config.json:

{
  "dry_run": true,
  "dry_run_wallet": 1000
}

آن را اجرا کنید و تماشا کنید:

docker compose up -d
docker compose logs -f

سیاست restart: unless-stopped در فایل compose، معادل systemd شما در اینجاست — Docker پس از یک کرش یا یک ری‌بوت سرور، ربات را برمی‌گرداند، بدون هیچ مرحله دستی. (اگر ترجیح می‌دهید آن را بیرون از Docker اجرا کنید، یک واحد systemd با Restart=always همان کار را انجام می‌دهد — همان اصل زنده نگه داشتن هر رباتی.)

کلیدهای API صرافی — بخشی که آدم‌ها را می‌گزد

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

کلیدها را در config.json نگه دارید، آن را غیرقابل‌خواندن برای همه کنید (chmod 600)، و کانتینر را به‌عنوان یک کاربر غیر root اجرا کنید. و اول جعبه را قفل کنید — چک‌لیست امنیتی VPS جدید ده دقیقه می‌برد و درهایی را که مهم‌اند می‌بندد.

از user_data بکاپ بگیرید

استراتژی‌ها، پیکربندی و تاریخچه تریدِ شما همگی در user_data قرار دارند. این همان چیزی است که نمی‌خواهید از دستش بدهید:

tar czf ft-backup-$(date +%F).tar.gz user_data

آن را به‌طور دوره‌ای از سرور بیرون بکشید (یا به فضای ذخیره‌سازی شیئی). از دست دادن دیتابیس ترید یعنی از دست دادن تاریخچه عملکردتان؛ از دست دادن یک استراتژی تنظیم‌شده یعنی انجام دوباره بهینه‌سازی.

محدودیت‌های صادقانه

نتیجه نهایی

Freqtrade روی یک VPS راه‌اندازی درست برای ربات زنده است: یک Micro با ۵ دلار برای یک استراتژی متمرکز، یک Small با ۸ دلار اگر جفت‌ارزهای زیادی اجرا می‌کنید، Docker Compose با restart: unless-stopped برای آپ‌تایم، و یک کلید API فقط-ترید و IP-whitelist شده تا یک نشتی نتواند شما را خالی کند. بک‌تست و hyperopt سنگین را روی لپ‌تاپتان نگه دارید، از user_data بکاپ بگیرید، و بگذارید سرور همان یک کاری را که در آن خوب است انجام دهد — آنلاین ماندن در حالی که بازار حرکت می‌کند. ثبت‌نام فقط با ایمیل است و شما با USDC یا USDT پرداخت می‌کنید؛ یک IP اختصاصی تنها ارتقایی است که اینجا ارزشش را دارد، صرفاً برای whitelist کلید API.


آماده استقرار هستید؟ Freqtrade روی یک پلن Micro راحت است؛ برای بک‌تست‌های سنگین‌تر یا جفت‌ارزهای زیاد، به Small ارتقا دهید.

سؤالات متداول

Freqtrade روی یک VPS چقدر RAM نیاز دارد؟

برای یک ربات زنده یا dry-run، 2 گیگابایت یک پایه راحت است — خود Freqtrade سبک است، اما ایمیج Docker به‌علاوه چند جفت‌ارز و اندیکاتور به فضای آزاد نیاز دارند. 1 گیگابایت می‌تواند برای یک استراتژی روی چند جفت‌ارز کار کند، اما 2 گیگابایت (Micro با ۵ دلار) کف ایمن‌تری است. بک‌تست و hyperopt داستان دیگری‌اند — آن‌ها حافظه‌خور و CPU‌خور هستند و باید روی دستگاه خودتان اجرا شوند، نه روی سرور.

آیا می‌توانم روی VPS بک‌تست و hyperopt انجام دهم؟

می‌توانید، اما معمولاً نباید. بک‌تست روی بازه‌های طولانی و hyperopt به CPU وابسته و جهشی‌اند — آن‌ها هسته‌ها را برای دقیقه‌ها یا ساعت‌ها اشغال می‌کنند. روی یک پلن مشترک و برست‌محور این بار کاری اشتباهی است (و بار پیوسته ۱۰۰٪ با سیاست استفاده قابل‌قبول تداخل دارد). بهینه‌سازی سنگین را محلی انجام دهید، سپس استراتژی تنظیم‌شده را برای اجرای زنده به VPS بفرستید.

چطور کلید API صرافی‌ام را روی یک سرور ایمن نگه دارم؟

کلید را فقط با دسترسی ترید بسازید — هرگز برداشت را فعال نکنید. اگر صرافی شما از IP whitelisting پشتیبانی می‌کند، کلید را به IP سرور قفل کنید، که دلیلی واقعی برای استفاده از یک پلن دارای IP اختصاصی است (یک پلن NAT، IP خروجی نود را به اشتراک می‌گذارد). کلید را در پیکربندی Freqtrade روی یک فایل قابل‌خواندن توسط root و غیرقابل‌خواندن برای همه نگه دارید، و ربات را به‌عنوان یک کاربر غیر root اجرا کنید.

چرا ربات را روی VPS اجرا کنم به‌جای لپ‌تاپم؟

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

← بازگشت به وبلاگ← پلن‌ها و قیمت‌ها

نظرات

هنوز نظری نیست. اولین نفر باشید.

یک نظر بگذارید

نظرات پیش از نمایش بررسی می‌شوند.