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

Тандем - эксперт для MetaTrader 5

Просмотров:
13590
Рейтинг:
(35)
Опубликован:
2012.08.15 07:01
Обновлен:
2016.11.22 07:33
Нужен робот или индикатор на основе этого кода? Закажите его на бирже фрилансеров Перейти на биржу

Для тех, кто не знаком с парным трейдингом, прошу ознакомиться с источниками, перечисленными в разделе Литература. Своими словами могу рассказать лишь следующее: 

Если сопоставить графики двух похожих активов путём наложения друг на друга, то будет заметно, что графики расходятся на определённое расстояние, а затем вновь сходятся. И такое поведение повторяется вновь и вновь. Почему бы его не использовать для зарабатывания денег?

 

Устанавливается советник на пару EURUSD H1. Коррелирующей парой по умолчанию выбрана GBPUSD (Переменная Symbol2 или "Косвенный инструмент"). Советник наблюдает за рынком именно по такой схеме, как я рассказал, но не путайте с синтетикой! Синтетический анализ основан на постоянном усреднении и притягивании "за уши" одного актива к другому. Здесь же обычное наложение графиков друг на друга. Но перед наложением мой советник определяет произвольную точку начала. Оттуда предполагается, что две пары пересеклись впервые. Затем масштабируем Symbol2 таким образом, чтобы его амплитуда колебаний цены примерно совпадала с амплитудой символа, на котором установлен советник. Собирается некоторая статистика за Range ("Область обучения") свечей. За этот период находятся максимальные раздвижки инструментов для того, чтобы потом при торговле, если произойдет раздвижка на долю CorrectLimit ("Корректировка сигнальной границы") от максимальной, то это приведёт к открытию новой позиции. Точнее, пары позиций, по одной на каждом инструменте. Если активы продолжают расходиться, то через такое же количество пунктов открывается второй тандем сделок. Максимальное количество таких парных сделок ограничивается переменной MaxDeals ("Максимальное количество сделок").

Переменная CorrectDist ("Коэффициент длины поиска раздвижек") изменяет значение обучаемого периода для более глубокого анализа.

Советник торгует на двух валютных парах как с прямой корреляцией, так и с обратной. За это отвечает переключатель Correlation ("Коэффициент корреляции"). Однако можно торговать и на одной паре, анализируя раздвижки двух пар. Например, вместо торговли на двух парах EURUSD и GBPUSD можно торговать на EURGBP. Для этого в переменную Cross ("На какой паре торговать вместо двух (кросс)") следует ввести "EURGBP" без кавычек. Если необходимо торговать на паре GBPEUR, то не забудьте указать советнику в переменной CrossType ("Прямой кросс-курс") значение false.

По истечении срока годности знаний, полученных при последнем обучении, происходит переобучение через Optimum ("Интервал переобучения") свечей.

В советнике предусмотрено 2 сигнала на закрытие всех сделок. При обратном схождении активов на долю CloseCorr ("Закрывать при уменьшении расхождения") от максимальной раздвижки и при достижении прибыли Profit % в открытых позициях.

Во включаемых файлах mqh находятся вспомогательные функции для правильной работы советника.
MyMQL_v2.1.mqh - функции для адаптации советника из языка программирования MQL4 в MQL5;
PrintLog.mqh - необходим для создания таблицы equity.csv в папке Files при тестировании советника. Таблица содержит хронологию изменения эквити счёта. Эту информацию можно использовать при детальном анализе просадок при тестировании и совмещать графики изменения эквити различных торговых систем. 

Тест с параметрами по умолчанию за 11 лет по ценам открытия баров на графике EURUSD H1:


Литература:

8 сентября 2012 г. - отредактирован код советника с учётом замечаний о возможных "дырах" в истории косвенного инструмента. 
SetSellStopLimitOrder SetSellStopLimitOrder

Данный скрипт предназначен для установки SellStopLimit ордера с фиксированными значениями уровней срабатывания, уровня стоп-лосса и уровня тейк-профита в пунктах от текущей цены и от цен срабатывания ордеров.

SetBuyStopLimitOrder SetBuyStopLimitOrder

Данный скрипт предназначен для установки BuyStopLimit ордера с фиксированными значениями уровней срабатывания, уровня стоп-лосса и уровня тейк-профита в пунктах от текущей цены и от цен срабатывания ордеров.

EMDcotir (Эмпирическая модовая декомпозиция) EMDcotir (Эмпирическая модовая декомпозиция)

Эмпирическая модовая декомпозиция текущего инструмента.

MA-Crossover_Alert MA-Crossover_Alert

Простейший семафорный индикатор с алертами и возможностью отправки сигналов на почтовый ящик