می‌خواهید بیشتر با چارچوب‌های معامله‌گری متن‌باز آشنا شوید؟ بررسی‌ها و مقایسه‌های دقیق ما را در اینجا ببینید.


چرا دنبال کردن روند؟

قبل از ساخت هر رباتی، می‌خواستم استراتژی‌ای داشته باشم که ساده، قابل اعتماد و اثبات شده باشد. دنبال کردن روند همه این شرایط را دارد — این روش بر اساس شتاب قیمت است و در بازارهای مختلف جواب می‌دهد. ایده اصلی ساده است:

وقتی قیمت بالاتر از میانگین متحرک بود خرید کنید و وقتی پایین‌تر بود بفروشید.

با این ذهنیت، من یک زنجیره کامل با استفاده از ابزارهای متن‌باز ساختم.


ابزارهایی که استفاده کردم

  • Backtrader – برای تست استراتژی و منطق آن
  • CCXT – برای دسترسی به API معاملات زنده (Binance)
  • Pandas/NumPy – برای پردازش داده‌ها
  • Python – برای کدهای چسبان و اسکریپت‌نویسی
  • Screen – برای اجرای ربات روی VPS یا Raspberry Pi

قدم به قدم: چگونه ساختم

1. منطق استراتژی (Backtrader)

class TrendStrategy(bt.Strategy):
    def __init__(self):
        self.sma = bt.indicators.SimpleMovingAverage(period=50)

    def next(self):
        if self.data.close[0] > self.sma[0] and not self.position:
            self.buy()
        elif self.data.close[0] < self.sma[0] and self.position:
            self.sell()

کد را ساده نگه داشتم: وقتی قیمت بالای SMA 50 بود وارد پوزیشن خرید شو و وقتی زیر آن رفت خارج شو.


2. تست استراتژی (Backtesting)

با استفاده از داده‌های تاریخی Binance (دانلود شده از طریق CCXT)، من منطق را روی ماه‌ها داده BTC/USDT آزمایش کردم و موارد زیر را ارزیابی کردم:

  • نسبت برد/باخت
  • بیشترین افت سرمایه
  • ضریب سود

3. اجرای زنده با CCXT

import ccxt

exchange = ccxt.binance({
    'apiKey': 'YOUR_API_KEY',
    'secret': 'YOUR_SECRET',
    'enableRateLimit': True
})

ticker = exchange.fetch_ticker('BTC/USDT')
print("قیمت فعلی بیت‌کوین:", ticker['last'])

وقتی از کارکرد ربات مطمئن شدم، قیمت‌ها و سفارش‌ها را به‌صورت زنده از طریق CCXT متصل کردم تا معاملات واقعی انجام شود.


4. استقرار (Deployment)

ربات را روی Raspberry Pi با استفاده از screen اجرا کردم تا ۲۴ ساعته و ۷ روز هفته فعال باشد:

screen -S trendbot
python3 bot.py
# Ctrl+A سپس D برای جدا کردن صفحه

درس‌های آموخته‌شده

  • استراتژی‌های ساده زمانی موثرند که با مدیریت ریسک خوب همراه باشند
  • ابزارهای متن‌باز قدرتمندند ولی نیازمند رفع اشکال دستی هستند
  • ثبت لاگ و تست، هنگام معامله با پول واقعی حیاتی است

می‌خواهید خودتان بسازید؟

اگر به ساخت ربات دنبال‌کننده روند خود با Backtrader علاقه‌مندید یا می‌خواهید بررسی دقیق آن را ببینید، به این صفحه مراجعه کنید:
بررسی و راهنمای استفاده از Backtrader