The0: دليل عملي لتشغيل بوتات التداول الخوارزمي على خادمك الخاص
Show HN: The0 – self-hosted runtime for trading bots, bring your own language
خريطة الصفحة
اختر القسم الذي تحتاجه الآن
- ما هو The0؟ شرح مبسط للمشروع
- من يحتاج The0 ومن لا؟
- المميزات الرئيسية لـ The0
- المتطلبات الأساسية قبل البدء
- التركيب خطوة بخطوة (تقريبي)
- شرح ملف .env والإعدادات
- تشغيل البوت الأول
- أخطاء شائعة وحلولها
- استخدامات عملية في السوق السعودي/الخليجي
- هل يستحق The0 التجربة؟ تقييم صريح
- بدائل The0: مقارنة مع QuantConnect وMetaTrader
- أسئلة شائعة
قبل أن تطبق
الفكرة التي تمنع التسرع
تعتقد أن المشاريع الجديدة على GitHub لا تصلح إلا للمطورين المتقدمين؟ لكن The0 يثبت العكس: مشروع ناشئ يمكن لأي مطور متوسط تجربته.
أسئلة التشخيص السريع
قبل أن تطبق، اعرف أين تقف بالضبط
- هل لديك خبرة في إدارة خوادم Linux وDocker؟
- هل أنت مطور متوسط أو متقدم في Node.js أو Python؟
- هل تفضل التحكم الكامل في بيئة التشغيل بدلاً من الخدمات السحابية؟
- هل أنت مستعد لمواجهة README غير مكتمل ووثائق ناقصة؟
- هل تخطط لاستخدام API وسيط تداول حقيقي (مثل Binance)؟
- هل ميزانيتك تسمح باستئجار VPS (5-10 دولار شهرياً)؟
- هل لديك استراتيجية تداول خوارزمي جاهزة للاختبار؟
نظام التشغيل: Input → Process → Output
لوحة قياس النجاح
لا تعتمد على الانطباع؛ اختر مؤشراً تراجعه
ظهر مشروع The0 على Hacker News تحت عنوان "Show HN: The0 – self-hosted runtime for trading bots, bring your own language". الفكرة: منصة مفتوحة المصدر لتشغيل بوتات التداول الخوارزمي على خادمك الخاص، مع دعم كتابة البوتات بأي لغة برمجة. هذا المقال يشرح لك ما هو The0، وكيف تجربه (بخطوات تقريبية لأن README غير واضح)، وما هي حدوده.
ما هو The0؟ شرح مبسط للمشروع
The0 هو مشغل (runtime) لبوتات التداول الخوارزمي، يمكنك تثبيته على خادمك الخاص (VPS أو سيرفر منزلي). الفكرة الأساسية: تكتب البوت بأي لغة تريدها، وThe0 يتولى تشغيله 24/7، وإعادة تشغيله إذا تعطل، وتسجيل أخطائه. المشروع جديد (صفر نجوم على GitHub وقت كتابة المقال) وREADME غير مكتمل، لكن بنيته واضحة لمن يعرف Node.js وDocker.
من يحتاج The0 ومن لا؟
يناسبك إذا: مطور متوسط أو متقدم، تريد تجربة استراتيجيات تداول خوارزمي دون دفع اشتراك شهري لخدمات مثل QuantConnect، وتفضل التحكم الكامل في بيئة التشغيل. لا يناسبك إذا: مبتدئ في البرمجة، أو تبحث عن حل جاهز بواجهة رسومية، أو تحتاج دعماً فنياً فورياً.
المميزات الرئيسية لـ The0
- مفتوح المصدر ومجاني تماماً
- يدعم أي لغة برمجة (نظرياً) عبر واجهة REST أو WebSocket
- تشغيل ذاتي (self-hosted) على خادمك
- إدارة دورة حياة البوت (جدولة، إعادة تشغيل، تسجيل)
المتطلبات الأساسية قبل البدء
- خادم (VPS) بنظام Linux (Ubuntu 20.04+) مع Node.js 18+ وDocker
- حساب في وسيط تداول يوفر API (مثل Binance، Alpaca)
- معرفة أساسية بكتابة بوتات التداول (Python أو JavaScript)
التركيب خطوة بخطوة (تقريبي)
ملاحظة: README المشروع غير واضح، لذا الخطوات التالية مبنية على تحليل بنية المستودع. قد تختلف التفاصيل.
- استنساخ المستودع:
git clone https://github.com/alexanderwanyoike/the0.git - تثبيت الاعتماديات:
cd the0 && npm install - إعداد ملف .env (انظر القالب أدناه)
- بناء صورة Docker (إذا وجد Dockerfile):
docker build -t the0 . - تشغيل الحاوية:
docker run -d -p 3000:3000 --env-file .env the0
شرح ملف .env والإعدادات
أنشئ ملف .env في جذر المشروع بالمحتوى التالي (القيم تقريبية):
PORT=3000 DB_TYPE=sqlite DB_PATH=./data/the0.db BROKER_API_KEY=your_api_key BROKER_API_SECRET=your_api_secret BROKER_BASE_URL=https://paper-api.alpaca.markets
تشغيل البوت الأول
بعد تشغيل The0، يمكنك إرسال بوتك عبر API. مثال باستخدام curl:
curl -X POST http://localhost:3000/bots \
-H "Content-Type: application/json" \
-d '{"name":"my-bot","language":"python","script":"print('hello')"}'ملاحظة: هذا مثال تخميني؛ قد تختلف الواجهة.
أخطاء شائعة وحلولها
استخدامات عملية في السوق السعودي/الخليجي
مثال: مطور سعودي يريد اختبار استراتيجية تداول على زوج BTC/USDT باستخدام بيانات Binance. يمكنه تشغيل The0 على خادم رخيص (5 دولار شهرياً) وربطه بـ Binance Testnet API، ثم كتابة بوت بلغة Python يجلب البيانات ويطبق استراتيجية المتوسطات المتحركة.
هل يستحق The0 التجربة؟ تقييم صريح
المشروع واعد لكنه في مرحلة مبكرة جداً. README غير مكتمل، ولا توجد وثائق واضحة. إذا كنت مطوراً صبوراً وتحب الاستكشاف، فقد تجد فيه أداة مفيدة. أما إذا كنت تبحث عن حل جاهز، فانتظر نضج المشروع أو استخدم البدائل.
بدائل The0: مقارنة مع QuantConnect وMetaTrader
أسئلة شائعة
هل The0 مجاني تماماً؟
نعم، المشروع مفتوح المصدر ومجاني. لكنك تتحمل تكلفة الخادم.
ما هي لغات البرمجة التي يدعمها The0؟
نظرياً أي لغة يمكنها التواصل عبر HTTP/WebSocket. README يذكر "bring your own language".
هل يمكن تشغيل The0 على سيرفر رخيص مثل DigitalOcean؟
نعم، يكفي خادم بذاكرة 1GB ومعالج واحد.
ما الفرق بين The0 وQuantConnect؟
QuantConnect منصة متكاملة مع بيانات ووسيط، بينما The0 مجرد مشغل لبوتاتك على خادمك.
هل The0 مناسب للمبتدئين في التداول الخوارزمي؟
لا، يتطلب خبرة في البرمجة وإدارة الخوادم.
كيف أتأكد من أن البوت يعمل 24/7؟
استخدم Docker مع سياسة إعادة تشغيل، أو استخدم systemd.
هل يوجد دعم عربي للمشروع؟
لا، المجتمع صغير والدعم بالإنكليزية فقط.
Playbook التطبيق
خطوات عملية مرتبة من التشخيص إلى النتيجة
استنساخ المستودع
لماذا؟ للحصول على كود المشروع محلياً
كيف؟ git clone https://github.com/alexanderwanyoike/the0.git
الناتج: مجلد the0 يحتوي على ملفات المشروع
تثبيت الاعتماديات
لماذا؟ لتجهيز بيئة Node.js
كيف؟ cd the0 && npm install
الناتج: تثبيت جميع الحزم المطلوبة
إعداد ملف .env
لماذا؟ لتحديد إعدادات التشغيل والمفاتيح
كيف؟ أنشئ ملف .env بالمحتوى: PORT=3000, DB_TYPE=sqlite, DB_PATH=./data/the0.db, BROKER_API_KEY=..., BROKER_API_SECRET=..., BROKER_BASE_URL=...
الناتج: ملف .env جاهز
بناء صورة Docker
لماذا؟ لحزم التطبيق في حاوية
كيف؟ docker build -t the0 .
الناتج: صورة Docker باسم the0
تشغيل الحاوية
لماذا؟ لبدء تشغيل The0
كيف؟ docker run -d -p 3000:3000 --env-file .env --restart unless-stopped the0
الناتج: الحاوية تعمل على المنفذ 3000
إرسال البوت الأول
لماذا؟ لاختبار تشغيل بوت بسيط
كيف؟ curl -X POST http://localhost:3000/bots -H 'Content-Type: application/json' -d '{"name":"my-bot","language":"python","script":"print('hello')"}'
الناتج: استجابة تؤكد إنشاء البوت
قوالب جاهزة للنسخ
حوّل القراءة إلى تنفيذ سريع
PORT=3000 DB_TYPE=sqlite DB_PATH=./data/the0.db BROKER_API_KEY=your_api_key BROKER_API_SECRET=your_api_secret BROKER_BASE_URL=https://paper-api.alpaca.markets
مصفوفة الأخطاء
اعرف أين يتعثر الناس وكيف تتجنب ذلك
شجرة القرار
ماذا تفعل حسب حالتك؟
إذا: إذا كنت مطوراً صبوراً وتحب الاستكشاف
إذن: جرب The0 على حساب تجريبي (Testnet)
إذا: إذا كنت مبتدئاً أو تبحث عن حل جاهز
إذن: انتظر نضج المشروع أو استخدم QuantConnect أو MetaTrader
خطة تطبيق 7 أيام
جدول صغير يمنع التسويف
- اليوم 1: استنساخ المستودع وتثبيت الاعتماديات
- اليوم 2: إعداد ملف .env وبناء صورة Docker
- اليوم 3: تشغيل الحاوية واختبار الاتصال
- اليوم 4: كتابة بوت بسيط بلغة Python وإرساله عبر API
- اليوم 5: ربط The0 بحساب تجريبي (Testnet)
- اليوم 6: اختبار استراتيجية تداول بسيطة (مثل المتوسطات المتحركة)
- اليوم 7: مراقبة الأداء وتوثيق الأخطاء
حقائق سريعة تحفظها
نقاط مختصرة ترجع لها لاحقاً
1. The0 مشروع مفتوح المصدر برخصة MIT.
2. يدعم أي لغة برمجة عبر REST/WebSocket.
3. يتطلب Node.js 18+ وDocker.
4. README المشروع غير مكتمل وقت كتابة المقال.
5. يمكن تشغيله على VPS رخيص (1GB RAM).
6. لا يوفر بيانات سوقية أو واجهة رسومية.
7. المجتمع صغير جداً (0 نجوم على GitHub).
8. مناسب للمطورين المتوسطين والمتقدمين فقط.
9. البدائل: QuantConnect (اشتراك) وMetaTrader (مجاني مع عمولات).
أسئلة شائعة
إجابات مباشرة على ما يبحث عنه الزائر
مصطلحات سريعة
تعريفات مختصرة تمنع الالتباس
بيئة تشغيل تنفذ الكود وتدير دورة حياته.
استضافة التطبيق على خادمك الخاص بدلاً من خدمة سحابية.
خادم خاص افتراضي، يمكن استئجاره من مزودين مثل DigitalOcean.
بيئة اختبار للوسيط تستخدم أموالاً وهمية.
أداة لتغليف التطبيقات في حاويات مستقلة.
أسئلة مرتبطة يبحث عنها الناس
استخدمها كمسارات متابعة داخل نفس الموضوع
لماذا هذا المرجع يتجاوز الموضوع نفسه؟
تحول القارئ: من مطور يبحث عن حل تداول خوارزمي مجاني إلى شخص جرب The0 وقرر ما إذا كان مناسباً له
- إدارة الخوادم (DevOps)
- برمجة Python للتداول
- أمن API keys
كيف تستخدم هذا المرجع لاحقاً؟
القيمة الحقيقية تظهر عند العودة والتطبيق
لا تتعامل معه كمقال يُقرأ مرة واحدة. استخدمه كلوحة تشغيل: ارجع للتشخيص عند ظهور المشكلة، وللقوالب عند التطبيق، ولمؤشرات القياس عند المراجعة.
The0 مشروع واعد لكنه في بدايته. إذا كنت مطوراً صبوراً وتحب الاستكشاف، فجربه على حساب تجريبي. أما إذا كنت تبحث عن حل جاهز، فانتظر نضج المشروع أو استخدم البدائل. شاركنا تجربتك في التعليقات.
خطة تحديث هذا الدليل
حتى يبقى المرجع صالحاً مع الوقت
- تحقق من تحديثات مستودع The0 على GitHub شهرياً.
- راجع حالة المجتمع (نجوم، Issues) كل 3 أشهر.
- حدّث ملف .env عند تغيير مفاتيح API.
- أضف أمثلة بوتات جديدة بناءً على طلبات المستخدمين.

التعليقات (0)
لا توجد تعليقات بعد. كن أول من يبدأ النقاش 👇