Скачать MetaTrader 5
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
В сервисе Фриланс участвуют тысячи разработчиков. Присоединяйся!
Dmitry Koshelev
122
Dmitry Koshelev 2012.04.03 19:12 

Недавно написал советника. А он не заключает сделки на продажу.Не могу найти ошибку! Помогите, пожалуйста! Я ещё новичок!

Вот код:

extern double  Lots        = 0.1;
       double  sl          = 40;
       double  tp          = 10;
       double  Bal         = 0;
//+------------------------------------------------------------------+
int init()
  {
//----
Comment("   Лот = ", Lots); 
Bal=AccountBalance();

OrderSend("EURUSD",OP_SELL,Lots,Bid,3,Bid+sl*Point,Bid-tp*Point,0,0,0,0);

OrderSend("GBPUSD",OP_BUY,Lots,Ask,3,Ask-sl*Point,Ask+tp*Point,0,0,0,0);
 
while (OrderSelect(SELECT_BY_POS,MODE_TRADES)>0)
{
}

if(Bal>AccountBalance())
{
OrderSend("EURUSD",OP_SELL,Lots,Bid,3,Bid+sl*Point,Bid-tp*Point,0,0,0,0);

OrderSend("GBPUSD",OP_BUY,Lots*2,Ask,3,Ask-sl*Point,Ask+tp*Point,0,0,0,0); 
}

Bal=AccountBalance();
Comment("   Лот = ", Lots);
 
while (OrderSelect(SELECT_BY_POS,MODE_TRADES)>0)
{
}

if(Bal>AccountBalance())
{
OrderSend("EURUSD",OP_SELL,Lots*5,Bid,3,Bid+sl*Point,Bid-tp*Point,0,0,0,0);

OrderSend("GBPUSD",OP_BUY,Lots*5,Ask,3,Ask-sl*Point,Ask+tp*Point,0,0,0,0);  
}

Bal=AccountBalance();
Comment("   Лот = ", Lots);
 
while (OrderSelect(SELECT_BY_POS,MODE_TRADES)>0)
{
}

if(Bal>AccountBalance())
{
OrderSend("EURUSD",OP_SELL,Lots*13,Bid,3,Bid+sl*Point,Bid-tp*Point,0,0,0,0); 

OrderSend("GBPUSD",OP_BUY,Lots*12,Ask,3,Ask-sl*Point,Ask+tp*Point,0,0,0,0);  
}
Comment("   Лот = ", Lots);
 
while (OrderSelect(SELECT_BY_POS,MODE_TRADES)>0)
{
}

//----
return(0);
}

Советник открывает сделку sell EURUSD и сделку buy GBPUSD. Ждет их закрытия, проверяет с каким результатом были закрыты сделки. Если с отрицательным, то опять открывает сделку sell EURUSD и сделку buy GBPUSD, но лот на сделке buy GBPUSD в два раза больше предыдущего. Потом если не угадал, то открывает сделки опять. Потом еще раз. Если с положительным то начинает все сначала.

Файлы:
adjrqrtp.mq4 3 kb
Сергей
728
Сергей 2012.04.03 19:19  
А где функция start()? :)))
Евгений
367
Евгений 2012.04.03 19:22  
Весь код - сплошная ошибка. Учебник, Документация.
/
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий