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

CIsSession - класс для установки временных интервалов (сессий) - библиотека для MetaTrader 5

Просмотров:
2711
Рейтинг:
(34)
Опубликован:
2015.12.02 10:25
Обновлен:
2016.11.22 07:33
\MQL5\Include\ \MQL5\Experts\
Нужен робот или индикатор на основе этого кода? Закажите его на бирже фрилансеров Перейти на биржу

Решил опубликовать этот класс после ознакомления с этой публикацией. Тема, на мой взгляд, интересная. Мой подход тоже не решает всех вопросов. Поэтому предлагайте, что можно улучшить.

Пример использования класса старался сделать по аналогии с этим вариантом. Так проще увидеть плюсы и минусы.

Плюсы, замеченные мной:

  1. Возможность стандартного ввода даты и времени. Смотрите картинку. Меньше вероятность ошибиться.
  2. Сохраняется возможность оптимизации промежутков времени в тестере стратегий.
  3. Можно оперативно менять все настройки в любом месте программы.
  4. Больше вариантов использования. Об этом после картинки.
  5. Проще использовать в коде. Как минимум, мне проще.

Варианты установки времени

1. Дневная сессия. Например, разрешает торговлю каждые сутки в установленном промежутке времени. Условия:

  • Дата начала и конца сессии равны 1970.01.01.
  • Время начала сессии меньше времени конца сессии.

2. Ночная сессия. Например, разрешается торговля через ночь: сегодня начинаем, а завтра завершаем. И так каждые сутки. Условия:

  • Дата начала и конца сессии равны 1970.01.01.
  • Время начала сессии больше времени конца сессии.

3. Внутри диапазона дат. Например, разрешается торговля от даты начала сессии до даты конца сессии. Условия:

  • Дата начала сессии меньше даты конца сессии.
  • Время любое, но оно тоже учитывается.

4. Вне диапазона дат. Дата начала сессии больше даты конца сессии. Таким образом, разрешается торговля до даты конца сессии и после даты начала новой сессии. Условия:

  • Дата начала сессии больше даты конца сессии.
  • Время любое, но оно тоже учитывается.

5. Установка запрета/разрешения торговать в тот или иной день недели. Достаточно для каждого дня недели установить в параметрах "true", если хотите торговать. Или "false" для запрета торговли.

6. Можно менять все настройки в любом месте программы с помощью методов Init().


P.S. Класс создавался под MetaTrader 5, но он работает и в MetaTrader 4. Единственная разница в том, что тестер стратегий MetaTrader 4 не поддерживает оптимизацию временных промежутков в формате datеtime. Но это решается путем замены во входных параметрах эксперта datеtime на long.

TradeState - переключатель торгового режима эксперта в зависимости от времени TradeState - переключатель торгового режима эксперта в зависимости от времени

Класс ограничивает торговлю эксперта по времени. Обладает гибкими возможностями конфигурирования, позволяя задавать произвольное количество временных зон, а также разрешать торговлю только по определенным дням недели.

Интерес (sentiment) Интерес (sentiment)

Робот, торгующий на открытом интересе рынка.

ATR_3XMA ATR_3XMA

Три разнопериодных сглаженных Average True Range в одном окне.

Go_HTF Go_HTF

Индикатор Go с возможностью изменения таймфрейма индикатора во входных параметрах.