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

SerialMA_EA - эксперт для MetaTrader 5

Просмотров:
1825
Рейтинг:
(14)
Опубликован:
2018.02.27 14:41
\MQL5\Indicators\
Нужен робот или индикатор на основе этого кода? Закажите его на бирже фрилансеров Перейти на биржу

В основе сигналов советника лежит индикатор SerialMA;

Индикатор постоянно увеличивает свой период расчета, начиная от пересечения ценой его линии и до следующего пересечения. На каждом пересечении индикатор начинает расчет своего периода заново, с минимального значения.

Советник использует это его свойство:

  • Если цена закрытия свечи на сигнальном баре выше линии индикатора на сигнальном баре, и при этом точка индикатора на предыдущем от сигнального бара расположена на линии индикатора, то это сигнал на открытие длинной позиции;
  • Если цена закрытия свечи на сигнальном баре ниже линии индикатора на сигнальном баре, и при этом точка индикатора на предыдущем от сигнального бара расположена на линии индикатора, то это сигнал на открытие короткой позиции.

В советнике можно выбрать два режима открытия позиций:

  • На каждом сигнале открывается одна соответствующая позиция. Противоположная позиция закрывается;
  • Позицию можно открыть только одну в одну сторону на первом сигнале. При этом противоположная позиция закрывается, все остальные сигналы пропускаются до появления противоположного сигнала, на котором позиция разворачивается (свинг).
Советник предназначен для работы на счетах с хэджингом. При запуске на неттинговом счете советник выдаст об этом предупреждение и выгрузится.

Для работы советника требуется, чтобы скомпилированный файл SerialMA.ex5 был установлен в стандартный каталог индикаторов терминала (Папка_вашего_терминала\MQL5\Indicators).

Советник позволяет включить/отключить разрешение на открытие длинных или коротких позиций, а также реверсировать сигналы индикатора - открывать вместо покупок продажи, и наоборот. Так же можно задать стоп лосс и тейк профит в пунктах. При ошибочно заданных размерах стоп лосс или тейк профит советник их автоматически корректирует под минимальный размер StopLevel, установленный для символа.

Советник также скорректирует лот при неверно указанном значении. Если же лот слишком большой при открытии позиции, то советник выставит его таким, чтобы позицию можно было открыть. Если нет денег на открытие даже минимальным лотом, то сигнал будет пропущен.

Стоит понимать, что этот советник предназначен для учебных целей.

Советник имеет двенадцать настраиваемых параметров:

  • Experts magic number - уникальный идентификатор (магик) позиций советника;
  • Mode of opening positions - режим открытия позиций (на каждом сигнале или всегда только одна позиция);
  • Long positions is enabled - разрешение на открытие длинных позиций;
  • Short positions is enabled - разрешение на открытие коротких позиций;
  • Reverse trade - выбор "реверса" сделок (Yes, No): для Yes при сигнале на открытие длинной позиции будет открываться короткая, и наоборот;
  • Lots - объем открываемых позиций;
  • Stop loss in points - размер StopLoss открываемой позиции в пунктах;
  • Take profit in points - размер TakeProfit открываемой позиции в пунктах;
  • Slippage of price - величина дозволенного проскальзывания цены при открытии позиции;
  • Multiplier spread for stops - число, на которое советник будет умножать спред при расчете корректной дистанции стоп-приказов(*);
  • Waiting for environment update (in seconds) - время ожидания в секундах обновления торгового окружения(**);
  • Number of attempts to get the state of the environment - количество попыток получения точного торгового окружения(***).
* При выставлении стоп лосс или тейк профит (а так же отложенных ордеров) существует минимально разрешенная дистанция установки стоп-приказов - StopLevel. Т.е., стоп лосс или тейк профит (или отложенный ордер) должны быть выставлены не ближе этой дистанции к цене. Если же StopLevel задан нулевым, то, в основном, это не говорит об его отсутствии, а говорит о том, что StopLevel плавающий. В этом случае минимальной дистанцией чаще всего является спред*2, но иногда двойного спреда не достаточно. Поэтому и введен параметр - число, на которое советник будет умножать спред для расчета минимальной дистанции установки стопов.
** При отправке торгового приказа на сервер, иногда происходит задержка исполнения, которая может привести к неверному подсчету количества рыночных позиций. При обнаружении такого "неопределенного" состояния, советник ждет заданное количество секунд и заново повторяет чтение окружения.
*** Количество таких попыток ожидания в течении одного тика задается в настройках. Когда все попытки получения точного окружения исчерпаны, советник выходит из обработки и ждет следующего тика. На нем он повторит эти попытки в случае, если ко времени прихода нового тика торговое окружение не обновилось.

Для проверки стратегии был проведен тест с настройками по умолчанию на промежутке дат с 2017.01.04 по 2018.02.09. К сожалению, с настройками по умолчанию советник не показал никаких интересных результатов, поэтому был проведен тест в режиме реверса сделок. Тут результаты были получше. Так как советник получает сигналы от динамически рассчитываемой скользящей средней, то и нет параметров для оптимизации. Но есть возможность поразмыслить, что можно добавить. Например, трейлинг стопов открытых позиций.

Рис.1,2 Результаты теста.

UmnickTrader UmnickTrader

MQL5-реализация адаптивного советника UmnickTrade.

Patterns_EA Patterns_EA

Советник по тридцати популярным свечным паттернам.

Sar_HTF Sar_HTF

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

OpenTime 2 OpenTime 2

Позиции открываются внутри двух временных интервалов. Закрытие по времени. Трейлинг.