السلام عليكم و رحمة الله و بركاته
ممكن من الاخوة المبرمجين الكود التالى
اغلاق الصفقات المفتوحة و المعلقة عند الوصول الى سعر اكبر من TP
و شكرا
الكود يتم التحكم به عن طريقة الماجيك نمبر
Printable View
السلام عليكم و رحمة الله و بركاته
ممكن من الاخوة المبرمجين الكود التالى
اغلاق الصفقات المفتوحة و المعلقة عند الوصول الى سعر اكبر من TP
و شكرا
الكود يتم التحكم به عن طريقة الماجيك نمبر
كود:#include <stderror.mqh>
#include <stdlib.mqh>// ErrorDescription function
//----
extern int magic=1234;//your magic number
extern double TP=250.50;//your variable name TP required profit
//----
void do(){if(profit_detector()>TP)Delete();}//main function
//----
double profit_detector()//function calculates profit
{
double profit=0.0;
for(int i=0;i<OrdersTotal();i++)
{
if(OrderSelect(i,SELECT_BY_POS)==true)
{
if(OrderSymbol()==Symbol() && OrderMagicNumber()==magic)
{
profit+=OrderProfit();
}
}
}
}
//----
void Delete()//function delete all orders
{
for(int i=OrdersTotal()-1;i>=0;i--)
{
if(OrderSelect(i,SELECT_BY_POS)==true)
{
if(OrderSymbol()==Symbol() && OrderMagicNumber()==magic)
{
bool ret=false;
int number=0;
while(ret==false && number<100 )
{
while(!IsTradeAllowed())Sleep(500);
RefreshRates();
ret=OrderDelete(OrderTicket());
if(ret==false){Print("Error Delete Pending ",ErrorDescription(GetLastError()));number++;}
}
}
}
}
}
بارك الله فيك اخى