Ставь лайки и следи за новостями
Поставь на него ссылку - пусть другие тоже оценят
Оцени его работу в терминале MetaTrader 5
- Просмотров:
- 1947
- Рейтинг:
- Опубликован:
- 2020.03.10 13:25
-
Нужен робот или индикатор на основе этого кода? Закажите его на бирже фрилансеров Перейти на биржу
Принцип работы
На баре может быть только одна сделка 'вход в рынок' (это внутренний параметр, он не вынесен во входные параметры и это не имеет отношения к параметру ' Only one positions'). При работе в режиме 'внутри бара' ('Search signals, in seconds' больше или равно '10') текущий бар - бар #0, при работе в режиме 'только в момент рождения нового бара' ( 'Search signals, in seconds' меньше, чем '10') текущий бар - бар #1.
ВНИМАНИЕ: пересечение может проверяться на символе отличном от текущего! Например советник стоит на EURUSD,
а сигнал проверяется на USDJPY. При нахождении пересечения на USDJPY, позиция будет открыта на EURUSD!
Также обратите внимание, что в OnInit перед созданием хендлов индикаторов, делается проверка наличия символа индикатора и делается попытка добавить символ индикатора в "Обзор рынка":
ResetLastError(); //--- check if symbol is selected in the MarketWatch if(!(bool)SymbolInfoInteger(Inp_MA_Symbol,SYMBOL_SELECT)) { if(GetLastError()==ERR_MARKET_UNKNOWN_SYMBOL) { printf(__FUNCTION__+": Unknown symbol '%s'",Inp_MA_Symbol); return(INIT_PARAMETERS_INCORRECT); } if(!SymbolSelect(Inp_MA_Symbol,true)) { printf(__FUNCTION__+": Adding symbol '%s' error %d",Inp_MA_Symbol,GetLastError()); return(false); } } //--- create handle of the indicator iMA
Советник работает по сигналам на пересечение от двух индикаторов iMA (Moving Average, MA). Индикаторы обозначаются как 'Fast' и 'Slow'. Параметры индикаторов полностью настраиваемые:
- 'MA: symbol' - название символа, общий параметр для 'Fast' и 'Slow'
- 'MA: timeframe' - таймфрейм, общий параметр для 'Fast' и 'Slow'
- 'MA Fast: averaging period' - период усреднения для 'Fast'
- 'MA Slow: averaging period' - период усреднения для 'Slow'
- 'MA Fast: horizontal shift' - смещение индикатора по горизонтали для 'Fast'
- 'MA Slow: horizontal shift' - смещение индикатора по горизонтали для 'Slow'
- 'MA Fast: smoothing type' - тип сглаживания для 'Fast'
- 'MA Slow: smoothing type' - тип сглаживания для 'Slow'
- 'MA Fast: type of price' - тип цены для 'Fast'
- 'MA Slow: type of price' - тип цены для 'Slow'
Тип торгового сигнала (тип пересечения) можно выбрать из следующих типов:
- 'Simple intersection' - простое пересечение, никаких дополнительных условий. Текущий бар выбирается автоматически в зависимости от значения параметра 'Search signals, in seconds'
- 'Intersection on the current candle' - пересечение на текущей свече (текущий бар всегда #0)
- 'Intersection on a previous candle' - пересечение на предыдущей свече (текущий бар всегда #1)
Также можно настраивать минимальную высоту пересечения - через параметр 'Minimum Intersection height'.
Подробнее о настройках советника:
Торговые настройки
В советнике можно как включать, так и выключать Stop Loss, Take Profit и Trailing Stop. Для отключения выбранный параметр установить в "0.0".
Трейлинг и поиск торгового сигнала может срабатывать или через N- секунд или только в момент рождения нового бара. Интервал Трейлинга в секундах задаётся в Trailing, in seconds, а интервал поиска торговых сигналов в Search signals, in seconds. Для этих двух параметров общее правило: если интервал задать меньше, чем "10" - это означает работу ТОЛЬКО в момент рождения нового бара, если же интервал задать ровно или более "10" - это означает работу каждые "N" секунд.
Дополнительные возможности
- Only one positions - в рынке всегда только одна позиция
- Reverse - переворот торгового сигнала
- Close opposite - закрытие позиций противоположных торговому сигналу, причём сначала идёт гарантированное закрытие противоположной позиции и только потом открытие новой позиции в направлении сигнала
Обратите внимание: торговый сигнал имеет наивысший приоритет! Ограничить его исполнение можно только при помощи параметра Only one positions. Если Only one positions равен "true" и количество позиций открытых этим советником на данном символе больше "1" - тогда торговый сигнал игнорируется.
Параметр Close opposite равен "true": сначала ЗАКРЫВАЕМ противоположную позицию, потом отрабатываем торговый сигнал.
Управление размером позиции (расчёт лота)
Лот может быть как постоянный (Money management установить в Constant lot и задать размер лота в The value for "Money management") так и динамический - в процентах риска на сделку ( Money management установить в Risk in percent for a deal и задать процент риска в The value for "Money management"). Также можно задать постоянный лот равный минимальному лоту - Money management установить в Lots Min.

Пример для расчёта размера лота если задан Стоп лосс (в Points) и задан допустимый убыток в деньгах депозита

Стратегия на индикаторе iBands (Bollinger Bands, Bands) и пользовательском индикаторе Silence. Используется мартингейл

Эта библиотека даёт возможность работать с COM-объектами, предоставленными некоторыми приложениями. Например: Excel, Word, Mathcad, Matlab. А также объект ADODB для работы с базами данных через драйвер ODBC. Библиотека работает и в MT4 и в MT5.

Индикатор отображает на текущем таймфрейме High и Low вчерашнего бара D1