Смотри, как бесплатно скачать роботов
Ищи нас в Telegram!
Ставь лайки и следи за новостями
Интересный скрипт?
Поставь на него ссылку - пусть другие тоже оценят
Понравился скрипт?
Оцени его работу в терминале MetaTrader 5
Библиотеки

Day Of Week - библиотека для MetaTrader 5

Просмотров:
3154
Рейтинг:
(34)
Опубликован:
2013.01.22 05:06
Обновлен:
2016.11.22 07:33
\MQL5\Include\ \MQL5\Scripts\
Нужен робот или индикатор на основе этого кода? Закажите его на бирже фрилансеров Перейти на биржу

Функция "Day of Week", предназначена для определения числа нужного нам месяца по данным недели и дня недели внутри этого месяца. Например, нам нужна третья пятница февраля 2000 года, или четвёртая среда ноября 1998 года. Функция позволяет определить число искомого дня.

Идея создания этой функции пришла тогда, когда я писал индикатор и мне попадалось много дат, связанных с определёнными днями недели в месяце. Например, есть даты такие как день Мартина Лютера Кинга, который отмечается в третий понедельник января. При помощи стандартных функций я не смог найти именно этот день. Так как он повторяется каждые 28 лет, была идея конечно просто занести данные на ближайшие 10 лет и не создавать эту функцию, но я люблю сложности, поэтому и решил все таки её сделать. 

Параметры функции:

  • int year - год,
  • int month - месяц, 
  • int day_o_w - день недели который нужен (Понедельник=1, Вторник=2,..., Воскресенье=7),
  • int sequence - день недели по счёту в этом месяце (от 1 до 5, при вводе пятого дня если его нет в этом месяце выводится предыдущий, то есть четвёртый).

Пример использования функции в коде:

Требуется: вторая пятница февраля 1980 года.

Код для получения этого числа: 

int day=func_day_o_w(1980,2,5,2);

Требуется: последний четверг декабря 2013 года

Код для получения этого числа:

int day=func_day_o_w(2013,12,4,5);

Так же прикреплен скрипт "DayOfWeek.mq5", который использует эту функцию, чтобы найти дату по первому примеру (вторая пятница февраля 1980 года)

Входные параметры:

 

Результат:

 

Проверим результат, использовав панель времени в ОС Windows:

 

MaxMinRange MaxMinRange

Две гистограммы для определения текущей ситуации на рынке

RoundPriceAlert RoundPriceAlert

Индикатор, подающий сигналы при круглых значениях цены

Range Range

Индикатор Range расчитывает индекс расширения диапазона и отображает диапазон изменения цены на текущем баре.

Exp_ColorCoppock Exp_ColorCoppock

Торговая система с использованием осциллятора ColorCoppock.