Требуется помощь в написании блока советника!

 

Всем добрый день!

Дорогие MQLчане :))...

Облазил весь интернет и не смог найти решение вот такой задачи...

есть советник, и нужно сделать так чтобы как только откроется последний бар, перед закрытием рынка, советник закрыл все позиции и продолжил торговлю уже после открытия..

Блок закрытия написан, то есть когда мне нужно просто отправляю на него "closeall()", но какое должно быть условия чтобы это реализовать?

Работа со временем совсем ни как для меня не поддается для понимания... Может быть кто нибудь пользуется такой штукой?

Еще раз повторю чтоб было понятнее... 

если открылся последний часовой бар перед закрытием рынка

, то все закрываем (блок закрытия есть)...

и этот час не торгуем, а открываемся уже только после открытия рынка..

Спасибо, заранее, за помощь, добрым людям!!!

 
Castyell:

Всем добрый день!

Дорогие MQLчане :))...

Облазил весь интернет и не смог найти решение вот такой задачи...

есть советник, и нужно сделать так чтобы как только откроется последний бар, перед закрытием рынка, советник закрыл все позиции и продолжил торговлю уже после открытия..

Блок закрытия написан, то есть когда мне нужно просто отправляю на него "closeall()", но какое должно быть условия чтобы это реализовать?

Работа со временем совсем ни как для меня не поддается для понимания... Может быть кто нибудь пользуется такой штукой?

Еще раз повторю чтоб было понятнее... 

если открылся последний часовой бар перед закрытием рынка

, то все закрываем (блок закрытия есть)...

и этот час не торгуем, а открываемся уже только после открытия рынка..

Спасибо, заранее, за помощь, добрым людям!!!

А зачем именно открытие бара, таймфрейм  часовой можно так попробовать:

 bool wen()
  {
   bool Exist=true;
   if(5==DayOfWeek() && TimeHour(TimeCurrent())>=23)
     {
      Exist=False;
     }
   return(Exist);
  }
//-------
      if(!wen())
        {
         -----
        }
      if(wen())
        {
         ----
        }
 
Castyell:

Всем добрый день!

Дорогие MQLчане :))...

Облазил весь интернет и не смог найти решение вот такой задачи...

есть советник, и нужно сделать так чтобы как только откроется последний бар, перед закрытием рынка, советник закрыл все позиции и продолжил торговлю уже после открытия..

Блок закрытия написан, то есть когда мне нужно просто отправляю на него "closeall()", но какое должно быть условия чтобы это реализовать?

Работа со временем совсем ни как для меня не поддается для понимания... Может быть кто нибудь пользуется такой штукой?

Еще раз повторю чтоб было понятнее... 

если открылся последний часовой бар перед закрытием рынка

, то все закрываем (блок закрытия есть)...

и этот час не торгуем, а открываемся уже только после открытия рынка..

Спасибо, заранее, за помощь, добрым людям!!!

bool trade;
if(DayOfWeek()==5&&Hour()>=22){closeall();trade=false;}else{trade=true;}//Если пятница и час больше или равен 22-закрываем позиции ,запрещаем торговлю
if (trade==true)//если торговля разрешена
{
// ваш код
}

Одновременно)

 
Nikolay Gaylis:


Всем спасибо!   Оказывается что ни чего сложного :))    Век живи и век учись... Очень помогли!
 

 
Castyell:


Всем спасибо!   Оказывается что ни чего сложного :))    Век живи и век учись... Очень помогли!
 

обратите внимание на свеже-испечённые (что-то я не припомню их ещё год назад, явно новые, могут подглючивать) SymbolInfoSessionQuote , SymbolInfoSessionTrade потому как просто проверяя время на "пятница, 23.00" есть значительный шанс остаться с открытыми ордерами на новый год или пятничный праздник.