هذا الروبوت C (RSTI_Ausama)
هذا الروبوت C (روبوت) مكتوب بلغة C# باستخدام منصة cAlgo.API ومصمم للتداول الآلي في سوق الفوركس. يعتمد الروبوت على إشارات من المؤشرات الفنية (المتوسطات المتحركة البسيطة) لاتخاذ قرارات الشراء والبيع. فيما يلي شرح مفصل لمكونات الروبوت وكيفية عمله:
---
### 1. **المعلمات**
يتضمن الروبوت مجموعة من المعلمات القابلة للتخصيص لتكييف سلوك التداول الخاص به:
- **إعدادات RSTI**:
- `Source`: مصدر البيانات المستخدم للحسابات (مثل سعر الإغلاق).
- `Length`: طول الفترة للمتوسط المتحرك البسيط (SMA).
- `Signal Length`: طول الفترة لمتوسط الإشارة SMA.
- **إدارة المخاطر**:
- `اتجاه التداول`: اتجاه التداول (شراء فقط، بيع فقط، أو كلاهما).
- `حجم اللوت`: حجم اللوت المستخدم في الصفقات.
- `النسبة المستهدفة (%)`: النسبة المستهدفة لجني الأرباح.
- `النسبة الجزئية المستهدفة (%)`: النسبة لجني الأرباح الجزئي.
- `نسبة وقف الخسارة (%)`: النسبة لوقف الخسارة.
---
### 2. **المؤشرات الفنية**
يستخدم الروبوت المؤشرات الفنية التالية:
- **المتوسط المتحرك البسيط (SMA)**: متوسط متحرك بسيط يعتمد على سعر الإغلاق.
- **فرق SMA**: متوسط متحرك بسيط للفارق بين السعر وSMA.
- **فرق SMA المطلق**: متوسط متحرك بسيط للفارق المطلق.
- **إشارة SMA**: متوسط متحرك بسيط لإشارة القوة النسبية.
---
### 3. **الوظائف الرئيسية للروبوت**
#### أ. **OnStart()**
- يتم تنفيذ هذه الوظيفة عند بدء تشغيل الروبوت.
- تهيئة المؤشرات وحساب القيم الأولية للمتوسطات المتحركة.
- تخزين آخر قيمة إشارة (`_previousSignalValue`) للمقارنة لاحقًا.
#### ب. **OnBar()**
- يتم تنفيذ هذه الوظيفة عند إغلاق شريط جديد.
- تحديث المتوسطات المتحركة بناءً على البيانات الجديدة.
- التحقق من التغيرات في إشارة التداول:
- إذا تجاوزت الإشارة 60 (شراء) أو انخفضت تحت 40 (بيع)، يتم تنفيذ الصفقات.
- تحديث قيمة الإشارة السابقة (`_previousSignalValue`).
#### ج. **OnTick()**
- يتم تنفيذ هذه الوظيفة عند كل تغير في السعر (Tick).
- التحقق مما إذا تم الوصول إلى مستوى جني الأرباح الجزئي (`HandleCloseOnTPReached`).
#### د. **ExecuteTrades()**
- تنفيذ الصفقات بناءً على إشارة التداول:
- إذا كانت الإشارة أكبر من 60، يتم فتح صفقة شراء.
- إذا كانت الإشارة أقل من 40، يتم فتح صفقة بيع.
- حساب مستويات جني الأرباح ووقف الخسارة بناءً على النسب المحددة.
- تنفيذ الصفقات باستخدام `ExecuteMarketOrder`.
#### هـ. **HandleCloseOnTPReached()**
- التحقق مما إذا تم الوصول إلى مستوى جني الأرباح الجزئي:
- إذا وصلت الصفقة إلى مستوى الربح المحدد، يتم تقليل حجم المركز بنسبة 50٪.
#### و. **HandleCloseOnSignal()**
- إغلاق الصفقات إذا تغيرت إشارة التداول:
- إذا كانت الصفقة شراء وانخفضت الإشارة تحت 50، يتم إغلاق الصفقة.
- إذا كانت الصفقة بيع وارتفعت الإشارة فوق 50، يتم إغلاق الصفقة.
#### ز. **DrawSignalOnChart()**
- عرض قيمة الإشارة الحالية على الرسم البياني:
- إذا كانت الإشارة فوق 50، يتم عرضها باللون الأزرق.
- إذا كانت الإشارة تحت 50، يتم عرضها باللون الأحمر.
---
### 4. **إدارة المخاطر**
- يتم تحديد حجم اللوت (`LotSize`) بناءً على حجم الحساب.
- يتم تعيين مستويات الهدف (`TargetPercentage`) ووقف الخسارة (`StopLossPercentage`) كنسب مئوية من السعر الحالي.
- يتم تنفيذ جني الأرباح الجزئي (`Target Partial`) عند الوصول إلى مستوى معين.
---
### 5. **اتجاه التداول**
- يمكن تعيين اتجاه التداول باستخدام معلمة `TradeDirection`:
- `Both`: التداول في كلا الاتجاهين (شراء وبيع).
- `Buy_Only`: التداول فقط في اتجاه الشراء.
- `Sell_Only`: التداول فقط في اتجاه البيع.
---
### 6. **كيفية استخدام الروبوت**
1. أضف الروبوت إلى منصة cTrader.
2. اضبط المعلمات وفقًا لاستراتيجيتك (مثل حجم اللوت، الهدف، ومستويات وقف الخسارة).
3. شغّل الروبوت على الرسم البياني المطلوب.
4. سيفتح ويغلق الروبوت الصفقات تلقائيًا بناءً على إشارات التداول.
---
### 7. **نقاط القوة**
- يعتمد على إشارات واضحة من المتوسطات المتحركة.
- يوفر مرونة في تعيين اتجاه التداول وإدارة المخاطر.
- يدعم جني الأرباح الجزئي وإغلاق الصفقات بناءً على تغيرات الإشارة.
---
### 8. **نقاط الضعف**
- يعتمد بالكامل على المتوسطات المتحركة، والتي قد لا تكون فعالة في جميع ظروف السوق.
- يتطلب تحسين المعلمات لتناسب أزواج العملات والأطر الزمنية المحددة.
---
### 9. **نصائح للتحسين**
- اختبر الروبوت على بيانات تاريخية لتحسين المعلمات.
- أضف مؤشرات فنية إضافية لتحسين دقة الإشارة.
- راقب أداء الروبوت بانتظام وقم بإجراء التعديلات اللازمة.
---
هذا الروبوت هو أداة قوية للتداول الآلي، ولكن يجب استخدامه بحذر وفهم شامل لآلياته وإدارة المخاطر الخاصة به.