هل ترغب في التعمق أكثر في أطر التداول مفتوحة المصدر؟ استعرض مراجعاتنا ومقارناتنا التفصيلية الآن.
لماذا تتبع الاتجاه؟
قبل أن أبدأ في بناء أي روبوت، أردت اختيار استراتيجية بسيطة، قوية، ومجربة. واستراتيجية تتبع الاتجاه تلبي هذه الشروط — فهي تعتمد على زخم السعر وتعمل عبر مختلف الأسواق. الفكرة الأساسية:
اشترِ عندما يكون السعر أعلى من المتوسط المتحرك، وبيع عندما يكون أسفله.
وبناءً على ذلك، قمت ببناء خط كامل باستخدام أدوات مفتوحة المصدر فقط.
الأدوات التي استخدمتها
- Backtrader – لاختبار الاستراتيجية وتطبيق المنطق
- CCXT – للوصول إلى واجهة برمجة التطبيقات للتداول الحي (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()
حافظتُ على بساطة الكود: ادخل صفقة شراء عندما يتجاوز السعر متوسط 50، واغلق الصفقة عندما يهبط تحته.
2. اختبار الاستراتيجية (Backtesting)
باستخدام بيانات تاريخية من Binance (تم تحميلها عبر CCXT)، اختبرت المنطق على مدى عدة أشهر من بيانات BTC/USDT. وقيّمت المؤشرات التالية:
- نسبة الفوز/الخسارة
- أقصى تراجع (Drawdown)
- معامل الربحية (Profit Factor)
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 لفصل الشاشة
دروس مستفادة
- الاستراتيجيات البسيطة تنجح عند تطبيق إدارة مخاطر جيدة
- أدوات مفتوحة المصدر قوية، لكنها تتطلب تصحيح أعطال يدوي
- التسجيل (Logging) والاختبار أساسيان عند التعامل بأموال حقيقية
هل تريد بناء روبوتك الخاص؟
إذا كنت مهتمًا ببناء روبوت تتبع اتجاه خاص بك باستخدام Backtrader أو تريد مراجعتنا التفصيلية عنه، اطلع على:
مراجعة إطار Backtrader ودليل الاستخدام