النتائج 1 إلى 8 من 8
- 19-03-2010, 06:22 PM #1
استفسار ... غلق الأوردرات المنفذة و حذف المعلقة
الســلام عليــكم و رحمة الله و بركاته..
سؤالي هو كيف أعمل كود يحذف الأوامر المعلقة أو يغلق الأوامر المنفذة بدون ما أعمل لووب..
بمعنى آخر ، إذا تحققت الشروط الأساسية ، يقوم الإكسبيرت بفتح أمر معلق
إذا لم يتفعل هذا الأمر (order) ، ينحذف مباشرة إذا تحقق شرط آخر
أي أن استراتيجية الإكسبيرت لا ترسل أمر دون حذف السابق..
أرجو أن يكون الموضوع مفهوم
- 20-03-2010, 03:34 PM #2
رد: استفسار ... غلق الأوردرات المنفذة و حذف المعلقة
إستخدم هذا الكود ولا تنسى طبعا إضافة شروط حذف الأمر المعلق إلى هذا الكود وإلا فإن أي أمر معلق تضعه فسوف يتم حذف مباشرة إذا وضعت الكود بدون تحديد
كود PHP:for (int cnt = 0 ; cnt < OrdersTotal() ; cnt++)
{
OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
if (OrderMagicNumber() == MagicNumber && OrderSymbol()==Symbol())
{
if (OrderType()>OP_SELL)
{OrderDelete(OrderTicket())
}
}}
آخر تعديل بواسطة MR.dollar ، 20-03-2010 الساعة 03:37 PM
- 20-03-2010, 06:18 PM #3
- 20-03-2010, 10:54 PM #4
- 21-03-2010, 10:22 AM #5
- 21-03-2010, 10:09 PM #6
- 22-03-2010, 07:50 PM #7
- 22-03-2010, 09:27 PM #8
رد: استفسار ... غلق الأوردرات المنفذة و حذف المعلقة
يوجد أكثر من طريقة لعمل التريلينج ستوب وأكثر من كود لكن جميع الأكواد تدور حول فكرة واحدة
إذا كان السعر الحالي أكبر من سعر فتح الصفقة + التريلينج ستوب المحدد
نقوم بعمل Order Modify للصفقة ونبدأ في تحريك الأستوب
بالنسبة لي أستخدم هذا الكود في إكسبرتاتي
كود PHP:if(TrailingStop>0)MoveTrailingStop();
كود PHP:void MoveTrailingStop()
{
int cnt,total=OrdersTotal();
for(cnt=0;cnt<total;cnt++)
{
OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
if(OrderType()<=OP_SELL&&OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNumber)
{
if(OrderType()==OP_BUY)
{
if(TrailingStop>0&&NormalizeDouble(Ask-TrailingStep*point,digits)>NormalizeDouble(OrderOpenPrice()+TrailingProfit*point,digits))
{
if((NormalizeDouble(OrderStopLoss(),digits)<NormalizeDouble(Bid-TrailingStop*point,digits))||(OrderStopLoss()==0))
{
OrderModify(OrderTicket(),OrderOpenPrice(),NormalizeDouble(Bid-TrailingStop*point,digits),OrderTakeProfit(),0,Blue);
return(0);
}
}
}
else
{
if(TrailingStop>0&&NormalizeDouble(Bid+TrailingStep*point,digits)<NormalizeDouble(OrderOpenPrice()-TrailingProfit*point,digits))
{
if((NormalizeDouble(OrderStopLoss(),digits)>(NormalizeDouble(Ask+TrailingStop*point,digits)))||(OrderStopLoss()==0))
{
OrderModify(OrderTicket(),OrderOpenPrice(),NormalizeDouble(Ask+TrailingStop*point,digits),OrderTakeProfit(),0,Red);
return(0);
}
}
}
}
}
}
المواضيع المتشابهه
-
سؤال عن الأوامر المعلقة ؟
By فراس in forum استفسارات وأسئلة المبتدئينمشاركات: 3آخر مشاركة: 13-09-2010, 11:38 AM -
الاوامر المعلقة
By صاحب قرار in forum سوق تداول العملات الأجنبية والسلع والنفط والمعادنمشاركات: 1آخر مشاركة: 15-09-2009, 12:36 PM -
الى عشاق الاوامر المعلقة
By za3eem in forum توقعات وتوصيات سوق العملاتمشاركات: 7آخر مشاركة: 16-07-2009, 04:12 PM -
استفسار بخصوص الاوامر المعلقة ؟؟؟
By okno11 in forum استفسارات وأسئلة المبتدئينمشاركات: 4آخر مشاركة: 23-07-2008, 03:13 AM