Посмотрите здесь Учебник по MQL4 Стандартные функции Дата и время
Посмотрите здесь Учебник по MQL4 Стандартные функции Дата и время
Это есть и в справочнике МетаЭдитора.
Мне надо не количество секунд, прошедших после 00:00 1 января 1970 года, которое каждый день новое.
И не время с начала работы работы советника.
Мне нужна постоянная величина определяющая 00:00 текущего дня.
iTime(Symbol(), PERIOD_D1, 0)
extern int BeginHour = 10; extern int EndHour = 20; if(Hour() >= BeginHour && Hour() < EndHour) { // можно работать }
Посмотрите здесь Учебник по MQL4 Стандартные функции Дата и время
Это есть и в справочнике МетаЭдитора.
Мне надо не количество секунд, прошедших после 00:00 1 января 1970 года, которое каждый день новое.
И не время с начала работы работы советника.
Мне нужна постоянная величина определяющая 00:00 текущего дня.
if (Minute()==0 && Hour()==0)
или
if (TimeHour(TimeCurrent())==0 && TimeMinute(TimeCurrent())==0)
Это есть и в справочнике МетаЭдитора.
Мне надо не количество секунд, прошедших после 00:00 1 января 1970 года, которое каждый день новое.
И не время с начала работы работы советника.
Мне нужна постоянная величина определяющая 00:00 текущего дня.
Это неправильный подход. Что, например, Вы будете делать, если Вам понадобится инициировать событие не в 00:00, а в 23:55 ? Такой постоянной величины уж точно нет. Любое событие нужно вычислять. В данном случае необходимо научиться пользоваться функциями даты и времени.
По указанной ссылке посмотрите пример timeevents.mq4. Там вычисляется
нечто подобное.
Спасибо Всем большое!!!
extern int BeginHour = 10; extern int EndHour = 20; if(Hour() >= BeginHour && Hour() < EndHour) { // можно работать }Это то, что надо
Спасибо Всем большое!!!
extern int BeginHour = 10; extern int EndHour = 20; if(Hour() >= BeginHour && Hour() < EndHour) { // можно работать }Это то, что надо
int work=1; if(DayOfWeek()==0 //воскресенье || DayOfWeek()==6 //суббота || DayOfYear()>357 //последние 8 дней в году || (Hour()<4 && DayOfWeek()==1) //понедельник до 4:00 || (Hour()>14 && Hour()<17) //каждый день между 14:00 и 17:00 || (Hour()==17 && Minute()<30) //каждый день между 17:00 и 17:30 ){ work=0; } if(work==1){ }
(Hour()<4 && DayOfWeek()==1) //понедельник до 11:00
вот тут вроде не до 11:00 (комент и код не соответсвуют), и если торговать USDGBP то ИХМО в 6:00 по гринвичу уже можно входить
.иможет вместо work=0 просто return
(Hour()<4 && DayOfWeek()==1) //понедельник до 11:00
вот тут вроде не до 11:00 (комент и код не соответсвуют), и если торговать USDGBP то ИХМО в 6:00 по гринвичу уже можно входить
.иможет вместо work=0 просто return
2. work - флаг (триггер) работы.
3. Всё это - лишь пример.
4. ЭТО РАБОТАЕТ (ПРОВЕРЕНО В ЖИВУЮ)!!!
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Подскажите пожалуйста.
Хочу советнику задать ограниченое время работы.
типа: if(TimeCurrent()>= "Время:00:00 текущего дня" +360)
Как запросить у сервера 00:00 текущего дня в минутах?