لكن قيمة NL لم تؤثر على حجم اللوت حتى مع زيادة الربح او زيادة الرصيد ، جربت حذف NL ولم تؤثر فـ قيمة اللوت وايضـا مع وجودها لم تؤثر فـ حجم اللوت !! ، ويبقى اللوت ثابت كما تم تحديده مسبقا من قيم Lot1 ، Lot2 ، Lot3 ، ...
Printable View
فكرة إخفاء الهدف والأستوب لوز هو أن تقوم بعمل داله لإغلاق الصفقات لكن ستضع بها شرط مقارنة السعر الحالي مع سعر فتح كل صفقه وإذا كان أكبر من الهدف يتم غلق الصفقه
راجع الإكسبرت المرفق
هذه شروط إغلاق الصفقات
كود PHP:if(HideSL&&StopLoss>0)
{
CloseBuyOrdersHiddenSL();CloseSellOrdersHiddenSL();
}
if(HideTP&&TakeProfit>0)
{
CloseBuyOrdersHiddenTP();CloseSellOrdersHiddenTP();
}
لن تقوم بزيادة حجم اللوت إلا إذا زاد الرصيد عن 50% ربح
فمثلا لو كان الرصيد الأساسي 3000 ثم أصبح 6000 بالتالي ستكون المعادله
أيكود PHP:NL=NormalizeDouble(AccountBalance()/(AccountBalance()-profitaccount()),0);
بالتالي قيمة NL=2 ويتم ضربها في حجم اللوت أي مضاعفة حجم اللوتكود PHP:6000/(6000-3000)=2
راجعت الإكسيبرت ولكن بعد وضع الشروط وإضافة الدوال للاكسيبرت المرفق لاحظت وجود خطأ فـ دوال إغلاق الصفقات ، فـ بعض الأحيـان لايتم الإغلاق على الهدف المحدد قد يزيد أو يقل بعض النقاط وحاولت وضع شرط إضافى للمقارنة ، إذا كان أكبر من أو يساوى الهدف يتم الإغلاق ، ولكن مازال الخطـأ موجود
كود PHP:Ask>=(OrderOpenPrice()+StopLoss*point)
قم بتغيير قيمة عدد نقاط إعادة التسعير Slippage
بدلا من 5 إجعلها رقم أصغركود PHP:OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(Bid,Digits),5*Q);
وقم بزيادة عدد محاولات الإغلاق
كود PHP:bool closed;
while(!closed)closed=OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(Bid,Digits),5*Q);
قمت بعمل التعديل المطلوب ولكن مازالت المشكلة كما هى ، ولى سؤال لماذا تم تغيير السليبج لرقم أصغر وما علاقة السليبج بمشكلة عدم إغلاق الصفقات بشكل صحيح .
ولاحظت إستخدام أوامر مثل
كود PHP:while(!closed)
كود PHP:if(!((StartHour < EndHour && TimeHour(TimeCurrent()) >= StartHour && TimeHour(TimeCurrent()) < EndHour) || (StartHour > EndHour && TimeHour(TimeCurrent()) >= StartHour ||
TimeHour(TimeCurrent()) < EndHour)))
ماذا تعنى إضافة علامة ! لكل من الأوامر السابقة
تقليل قيمة السليبج فهذا يعني أنك لا تريد من الإكسبرت إغلاق الصفقه في حال إعادة التسعير وتحرك السعر عن نقطة الإغلاق بفرق عدد نقاط السليبج المحدده
علامة ! تعني لا يتحقق
والكود
هو نفسهكود PHP:while(!closed)
سوف تلاحظ فرق الأكواد عن التجربه لايف ويجب أن تلاحظ أيضا ربما خطأ في بعض البيانات التاريخيه هو ما يسبب هذه الفجوات وبالتالي تجد أن الهدف أو الإستوب زادكود PHP:while(closed==false)
استاذ اسامة ، أريد كود يسمح بفتح صفقة واحدة فقط فـ اليوم للاكسيبرت المرفق ، حاولت التعديل ولكن لم أصل لنتيجة .
اريد عمل الاستوب لوس عبارة عن خط الكيجن فى الايشيموكو زائد خمس نقاط عند دخول الصفقة
وانهاء جميع عقود البيع عند افتتاح شمعه واغلاقها فوق التنكن
وشكرااااااااااااااا