[QUOTE=kira-h;924880]وعليكم السلام
لم افهم الشرح تماما لكن ارفق الكود للمراجعة[/QUOTE

تحياتي أستاذ الكود كما كتبته سينفذ الخطوات التالية :
1- تقسيم رأس المال إلى 60 قسم ووضع عداد للصفقات يبدأ من الصفر كالتالي :
2-
أصبح رأس المال مقسم ل 60 جزء قيمة كل جزء هي (بفرض رأس المال 1000$ ستكون قيمة الجزء الواحد 16$)

3- عند بداية عمل الإكسبرت تكون قيمة العداد step هي صفر

4- في أول صفقة تكون قيمة اللوت هي قيمة الجزء الواحد مقسومة على عدد نقاط الستوب - وبعد كود فتح الصفقة نزيد العداد 1


5- المشكلة في الصفقات التالية لأن قيمة اللوت تحدد من ربح آخر صفقة مقسومة على نقاط الستوب - عملت الدالة التالية لتحديد حجم اللوت وفيها الحالات التالية :
الأولى : step يساوي الصفر ( يكون اللوت قيمة الجزء على نقط الستوب )
الثانية step لا يساوي الصفر و آخر صفقة مغلقة رابحة ( يكون اللوت هو ربح آخر صفقة مقسوم على نقط الستوب )
الثالثة step لا يساوي الصفر و آخر صفقة مغلقة كانت خاسرة (هنا المشكلة ) يجب أن ينفذ الإكسبرت مايلي :
أولا - إنقاص step واحد
ثانيا : فحص ال step إن أصبح صفر تكون قيمة اللوت : جزء رأس المال مقسوم على نقط الستوب مثل الحالة الأولى
ثالثا : إن كان ال step لم يصبح صفر ... ينظر للصفقة المغلقة الثانية إن كانت رابحة : يكون اللوت هو قيمة ربح الصفقة على نقاط الستوب - إن كانت خاسرة يعيد وينقص ال step ويفحص ربح الصفقة السابقة .... حتى يصل لصفقة رابحة أو يصل ال step للصفر (الكود الذي كتبته كالتالي :




مع جزيل الشكر