Скачать MetaTrader 5
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Сделал скриншот в MetaTrader? Поделись им с друзьями!
bibuka
468
bibuka 2015.04.07 02:20 

Есть код перерыва, и советник ставит и закрывает ордера. Что изменить чтобы он просто не ставил лоты?

 input string     TimeStart = "00:00"; // Начало перерыва

input string    TimeFinish = "00:00"; // Окончание перерыва

 

 if(TimeF(TimeStart,TimeFinish) && TimeStart!=TimeFinish)ClosDel(Ord);

bibuka
468
bibuka 2015.04.07 02:23  
Я так понимаю что все дело в ClosDel(Ord), что поставить чтобы в перерыв просто не торговал, вообще был неактивный советник
Vitalii Ananev
7876
Vitalii Ananev 2015.04.07 08:12  
bibuka:

Есть код перерыва, и советник ставит и закрывает ордера. Что изменить чтобы он просто не ставил лоты?

 input string     TimeStart = "00:00"; // Начало перерыва

input string    TimeFinish = "00:00"; // Окончание перерыва

 

 if(TimeF(TimeStart,TimeFinish) && TimeStart!=TimeFinish)ClosDel(Ord);

Из вашего фрагмента кода совершенно не понятно, что делает советник.

Что возвращает функция  TimeF() и что делает функция ClosDel?

Что бы советник не "ставил лоты", просто не вызывайте функцию OrderSend()

bibuka
468
bibuka 2015.04.07 09:29  
А можно код написать чтобы с 22 до 3 советник не ставил лоты?
Vitalii Ananev
7876
Vitalii Ananev 2015.04.07 09:47  
bibuka:
А можно код написать чтобы с 22 до 3 советник не ставил лоты?

Вам нужны две функции TimeCurrent() (возвращает текущее время сервера) и TimeHour() (возвращает час заданного в параметрах функции времени).

В вашем случае:

if (TimeHour(TimeCurrent())>3 && TimeHour(TimeCurrent())<22 )
{
 //ставить лоты можно
  ....
}

 Как то так примерно.

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