Группа "Стол заказов MQL"

Рейтинг 2153



РЕКОМЕНДУЮ



Не работает подскажите как исправить

Не могу понять что сделать, что бы открывался ордер на новой свече. Вроде все компилируется без ошибок, но чего то не хватает.
В общем не работает, так как хотелось бы. Не первый раз с такой проблемой сталкиваюсь.

static long lngTime = 0;            // Фиксируем время для открытия позиции в период закрытия старой/открытие новой свечи

//datetime t=0;          // Фиксируем время для открытия позиции в период закрытия старой/открытие новой свечи
//--------------------------------------------------------------------
void OnTick()
     
{     
   for (int i=0; i<OrdersTotal(); i++)
      if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
         if (OrderSymbol()==Symbol() && Magic==OrderMagicNumber()) return;
   double RSI0  = iRSI(NULL,0,period_RSI,PRICE_CLOSE,0);
   double MFI0  = iMFI(NULL,0,period_MFI,0);
   double DEM0  = iDeMarker(NULL,0,period_DEM,0);

// Появился новый бар
    
   if(Time[0] != lngTime) // ждём появления нового бара
   {
      lngTime = Time[0];
     
   double SL=0,TP=0;
   if (RSI0 < RSIbuy_level && MFI0 == MFIbuy_level && DEM0 == DEMbuy_level && Open[1]>Close[1])
   
   {
      if (OrderSend(Symbol(),OP_BUY, Lot(),NormalizeDouble(Ask,Digits),slippage,0,0,Expiration,Magic,Blue)==-1) Print(GetLastError());
   }
   if (RSI0 > RSIsell_level && MFI0 == MFIsell_level && DEM0 == DEMsell_level && Open[1]<Close[1])
   
   
   {
      if (OrderSend(Symbol(),OP_SELL,Lot(),NormalizeDouble(Bid,Digits),slippage,0,0,Expiration,Magic,Red)==-1) Print(GetLastError());
   }
 }
}
  • 0
  • Просмотров: 1854
  • 12 июня 2017, 21:54
  • Syte
Понравилcя материал? Не забудьте поставить плюс и поделиться в социальной сети!

Вступите в группу "Стол заказов MQL", чтобы следить за обновлениями
ПРИСОЕДИНИТЬСЯ К ГРУППЕ
присоединиться
  Предыдущая запись в группе
Прошу поправить индикаторы под MT4
Следующая запись в группе  
прикрепить алерт
11 июня 2017
13 июня 2017

Брокер для ваших роботов, 15 лет на рынке

Комментарии (1)

+
0

datetime t=0;

if(t!=Time[0])
{
...//открытие по сигналу
t=Time[0];
}
avatar

  35  AM2 Сообщений: 16471 - Андрей

  • 13 июня 2017, 07:02

Зарегистрируйтесь или авторизуйтесь, чтобы оставить комментарий