النتائج 1 إلى 5 من 5
الموضوع: سؤال برمجي للخبراء
- 28-01-2011, 04:45 AM #1
سؤال برمجي للخبراء
معلوم ان دالة GlobalVariableGet تستخدم في حفظ اخر عمل يقوم به الإكسبيرت
اردت ان افتح صفقة عكسية بعد إغلاق الامر الحالي بمعنى لو كان بيع وتم إغلاقه افتح شراء
لكن كيف يكون ذلك ان لم تكون الصفقات وحيدة .. بل مهدجة
- 02-02-2011, 03:44 PM #2
رد: سؤال برمجي للخبراء
بالنسبة للداله GlobalVariableGet فهي تستخدم لمعرفة قيمة تم حفظها سابقها لكن GlobalVariableSet فهي التي تستخدم لحفظ قيمة معينه وليس شرط حفظ آخر عمل يقوم به الإكسبرت
سؤالك يحتاج إلى توضيح أكثر
بكل حال ليس شرط إستخدام الداله GlobalVariable لكن حاول تبسيط الكود بشكل أكبر يمكنك إستخدام أمري البيع والشراء في نفس الشرط كمثال
كود PHP:if(A>B){
//Close Buy Order
//Open Sell Order
}
- 02-02-2011, 03:55 PM #3
- 02-02-2011, 06:23 PM #4
رد: سؤال برمجي للخبراء
الاخ العزيز
كما قال لك الاخ أسامة GlobalVariableGet
تستعمل لأسترجاع اخر قيمة مخزنة في متغير كلي global
لتنفيذ صفقة عكسية للأخر صفقة من الافضل أستعمال
[ LastClosedTicket
مثال
كود PHP:int LastClosedTicket=0; datetime LastClosedTime;
for(int pos=0; pos < HistoryTotal(); pos++) if (
OrderSelect(pos, SELECT_BY_POS, MODE_HISTORY) // Only orders
&& OrderCloseTime() > lastClosedTime // not yet processed,
&& OrderMagicNumber() == magic.number // w/ my magic number,
&& OrderSymbol() == Symbol() // and my pair.
&& OrderType() <= OP_SELL){ // Avoid cr/bal http://forum.mql4.com/32363
LastClosedTicket = OrderTicket(); LastClosedTime = OrderCloseTime();
}
if (LastClosedTicket > 0 && OrderSelect(LastClosedTicket, SELECT_BY_TICKET, MODE_HISTORY)){
if (OrderType() == OP_BUY) {...
}
- 03-02-2011, 12:36 AM #5