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

Sequence - библиотека для MetaTrader 5

Просмотров:
1514
Рейтинг:
(13)
Опубликован:
2020.10.12 20:06
Обновлен:
2022.11.12 12:38
\MQL5\Experts\ \MQL5\Include\fxsaber\
Нужен робот или индикатор на основе этого кода? Закажите его на бирже фрилансеров Перейти на биржу

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


Пример.

    #include <fxsaber\Sequence.mqh> // Последовательный запуск расчетов в параллельно-выполняющихся программах
    
    int OnInit()
    {
      SEQUENCE Sequence; // Последовательный запуск расчетов
      
      if (Sequence.Init()) // Дожидаемся освобождения вычислительных ресурсов.
      {
        Sleep(1000); // Тяжелые расчеты.
        Print((string)ChartID() + " - " + __FUNCTION__);
      }
      
      return(!EventSetMillisecondTimer(100));
    }
    
    void OnTimer()
    {
      static datetime PrevCalcTime = 0;
      static int Amount = 0; // Количество расчетов
    
      SEQUENCE Sequence; // Последовательный запуск расчетов
        
      if ((TimeLocal() - PrevCalcTime >= 10) && // Если пришло время делать расчеты
          Sequence.IsFree())                    // и вычислительные ресурсы свободны
      {
        PrevCalcTime = TimeLocal();
        
        Sleep(1000); // Тяжелые расчеты.
        Print((string)ChartID() + " - " + __FUNCTION__ + ": " + (string)Amount++);
      }
    }

    Запустив этот советник на нескольких чартах, можно будет видеть (в Журнале), что все они выполняются последовательно.


    Сценарии использования.

    • Автооптимизация в нескольких запущенных советниках.
    • Одновременный запуск нескольких советников (например, при запуске Терминала).
    • Снижение нагрузки VPS при работе нескольких советников.

    Особенности.

    Библиотека использует графики, на которых работают соответствующие программы. Поэтому не будет работать с Индикаторами без чартов и Сервисами.

    iWPR EA iWPR EA

    Стратегия по индикатору iWPR (Williams’ Percent Range, %R)

    iADXWilder Two Positions Light iADXWilder Two Positions Light

    Упрощенная стратегия по индикатору iADXWilder (Average Directional Movement Index Wilder, ADX Wilder)

    Position Close Partial Position Close Partial

    Советник - утилита: производится частичное закрытие позиций по текущему символу

    Yuraz_CH_moex Yuraz_CH_moex

    Достаточно простой индикатор , который рассчитывает процент CH% изменения за день , для инструментов из MarketWatch. Индикатор аналогичен Yuraz_CH но разработан с учетом работы на биржевом рынке.