Нужно написать советник по MACD на MQL5

MQL5 Эксперты

Работа завершена

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

Техническое задание

Программа работает на основе двух MACD, один на старшем таймфрейме (ТФ)другой на младшем. Старший определяет тип сделок: sell/buy, младший дает точки входа и выхода.

 

Общий алгоритм

 

На старшем ТФ, далее в этом примере 4h, MACD в положительной зоне (далее “+”), значит все сделки на покупку.

 

Теперь, на графике 1h после любого входа MACD будь то в положительную зону, или отрицательную будут открываться сделки на покупку. С точностью на оборот происходить когда MACD на 4h в отрицательной зоне, то на графике 1h после любого входа MACD будь то в положительную зону, или отрицательную будут открываться сделки на продажу.

 

·         Вдобавок, когда старший MACD входит в положительную или отрицательную зону на 4H, то сделка так же открывается. Если гистограмма вошла в отрицательную зону на 4h, то открывает сделка на sell, с точностью на оборот с положительным исходом.

 

Таким образам и старший и младший MACD будут давать сигнал. Только сделки старшего будут соответствовать зоне, в которую индикатор входит. Т.е. если входит в отрицательную то sell, в положительную – buy, а младший каждый раз когда гистограмма меняет полярность, и будет одна и та же сделка, например, только buy или только sell.

 

Если у нас открыта любая сделка на 1h, и уже появился второй сигнал, то советник открывает сделку.

 

Если на 1h открыта сделка (сделки), и она(они) еще не дошла до sl или tp, а MACD на 4h дает сигнал на смену тенденции, то эта сделка (сделки) автоматически закрывается, не важно + она (они) дает или -.

 

ВАЖНО

 

Программа должна в первую очередь работать на платформе брокера https://www.binary.com, и именно на индексах волатильности.

 

Было бы замечательно, если бы вы Андрей подсказали, если видите, как программа могла бы лучше работать.

 

Основные настройки

 

MACD старший таймфрейм (ТФ) (определяет тип сделок sell/buy)

 

·         Таймфрейм

·         MACD бар – указание с какого бара будет даваться сигнал. Если 0, то вообще с этого таймфрейма не будут сигналы даваться, равносильно отключению, если 1, то с первого и т.д.

·         MACD bar open/close

 

 open – сигнал подается как только появляются первые признаки бара, и он еще не сформирован. Например, MACD 1h, первый признак бара может появиться на 20 минуте, и как только он появляется, то тут же открывается сделка.

Если close, то сделка открывается только после закрытия бара, т.е. если MACD 1h, то лишь когда этот час пройдет и бар сформируется, только тогда открытие происходит.

·         Profit ­ Указание прибыли, при достижении которого сделка закроется

·         Loss – Указание убытка, при достижении которого сделка закроется

·         Кнопка отключения первой сделки. В этом случае этот MACD дает только сигналы для младшего MACD

 

Примечание1

 

Не указывать всех настроек MACD (уровни, EMA и т.д.), так как торги пока будут по стандартным настройкам проходить.

 

Примечание2

 

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

 

MACD младший таймфрейм – дает точки входа.

 

 

·         Таймфрейм

 

·         Тренд/Коррекция

 

тренд

1.1MACD bar open/close

1.2MACD бар

коррекция

2.1MACD bar open/close

2.2MACD бар

 

Тут есть повтор, чтобы разделять сигналы, которые совпадают со старшим MACD, от сигналов на коррекцию. Т.е если на старшем MACD sell, то мы отдельно будем задавать с какого бара? и на каком этапе формирования бара входить в рынок, когда появился сигнал на младшем MACD так же sell, и когда buy.

 

·         Profit ­ Указание прибыли, при достижении которого сделка закроется

·         Loss – Указание убытка, при достижении которого сделка закроется

·         Magic Number – для использование сразу нескольких советников на одном и том же инструменте.

 

Дополнительные функции

 

 

Сделка с нулем

 

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

 

Пример, сделка на покупку, tp 150 pp, а цена выросла на 100 пп. (которые заданы в настройках) и затем снизилась к 20 пп, которые то же заданы, и по достижению этой величины происходит закрытие сделки. Т.е. При таком раскладе высока опасность, что настроение на рынке поменялось, и сейчас будет минус, а мы закрываемся с небольшим плюсом.

 

·         Сделка с нулем – вкл/выкл

·         Предел (значение в пунктах от уровня открытия) – расстояние, по достижению которого активируется данная опция

·         Уровень закрытия (значение в пунктах от уровня открытия) – установить уровень, по достижению которого в случае отката цена закроется

 

Первая отрицательная или нулевая

 

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

 

Примечание3

 

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

 

·         Тут должна быть функция вкл/выкл

 

отрицательные подряд сделки

 

Если идут, например, ряд отрицательных подряд сделок на младшем ТФ, то советник игнорирует все последующие сделки на младшем таймфрейме, и включается только после получения сигнала на старшем.

 

·         Тут должна быть функция вкл/выкл

·         Количество отрицательных сделок, которые запускают эту функцию

 

Количество сделок, после которого все прекращается. Т.е если я укажу 1, то как только появится хотя бы одна минусовая сделка, за ней не будут открываться никакие, пока не получим новый сигнал от старшего MACD. Если укажу 4, то только после 4-х отрицательных сделок все прекращается.

 

Примечание 4

 

Тут к отрицательным относится и сделки с нулем (или минимальной прибылью)

 

Примечание5

 

Если у нас есть уже одна отрицательная сделка, и у нас открыта сделка, и уже появился сигнал на открытие следующей, то советник открывает эту новую сделку. Но если предыдущая закрывается с минусом, то советник вот эту последнюю сразу закрывает, неважно с + она или с - на тот момент.

 

Примечание6

 

Здесь учитывается и первая сделка, которая идет на младшем таймфрейме после первой отрицательной или нулевой на старшем.

 

Пример. Предположим самая первая сделка, которая открывается на старшем ТФ, отрицательная или нулевая, затем на младшем ТФ появляется сигнал, по предыдущему пункту советник сделку не открывает в реале, а виртуально, держит ее у себя ее в “уме». Т.е, он как бы отслеживает, если бы он здесь открыл бы ее, куда она пойдет, если плюсом закроется, то он со второй сделки на младше ТФ уже начинает входить в рынок, а если эта сделка закрылась минусом, то значит советник игнорирует все сделки на младшем таймфрейме, пока не получит сигнал от MACD на старшем.

 

 

Примечание7

 

Если идет сделка на младшем ТФ, которая отрицательная, а за ней следует сделка на старшем ТФ, и она также отрицательная, то в этом случае правило «Две отрицательные подряд сделки»  не работает. Т.е. советник позволяет открыть первую сделку на младшем ТФ, и вот если она отрицательная, то никаких больше сделок. Т.е в этом случае допускаются три отрицательные сделки подряд. Если у нас три открытые сделки, и идет следующий сигнал на старшем MACD, и он также отрицательный, то все повторяется. Советник позволяет открыть и вторую сделку, и того у нас выходит уже 5 сигналов, и так до бесконечности.

 

Реверс

 

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

 

Функции

 

·         Вкл/выкл

·         Объем сделки

·         Profit ­ Указание прибыли, при достижении которого сделка закроется

·         Loss – Указание убытка, при достижении которого сделка закроется

·         Количество сделок

 

Количество сделок, после которого начинается реверс. Т.е если я укажу 1, то как только появится хотя бы одна минусовая сделка, за после нее происходит реверс. Если укажу 4, то только после 4-х отрицательных сделок начнется реверс.

 

Примечание8

 

И Реверс и Отрицательные подряд сделки могут работать вместе. Главное чтобы реверс начинался с меньшего количества отрицательных сделок. Например, он начинается с 2, а отрицательные подряд сделки с 4.

 

 

 

·         На экране чтобы была Кнопка Запуск

 

Нажатие на нее все запускает, а повторное нажатие закрываем все ордера, если такие открытые есть, и ставит на паузу всю работу.

 

 

 


Откликнулись

1
Разработчик 1
Оценка
(28)
Проекты
60
42%
Арбитраж
1
0% / 100%
Просрочено
5
8%
Свободен
2
Разработчик 2
Оценка
(322)
Проекты
470
41%
Арбитраж
77
12% / 64%
Просрочено
76
16%
Работает
Похожие заказы
#### Описание задачи: Необходимо разработать торгового бота на языке программирования MQL4 для работы в терминале MetaTrader 4. Бот должен использовать уровни, нанесенные на график с помощью объектов типа `trendline` и `rectangle`, и работать согласно заданным правилам. #### Правила работы бота: 1. **Определение уровней**: - Объекты `trendline` и `rectangle` имеют строку в поле `Имя`, содержащую команду для бота
Есть советник MT 5 для Мосбиржи с простой стратегией основанной на двух скользящих средних: на нижней МА покупка, на верхней МА продажа. Нужно исправить две вещи: 1. Сейчас на покупку выставляются лимитные ордера, а продажа набранной позиции осуществляется тейк-профитом. Нужно изменить советник, так, чтобы закрывалась позиция также лимитным ордером, а не тейк-профитом. Здесь нужно учесть что закрытие может быть
Есть советник, нужно только поменять название,описание, сделать привязку к счету, чтобы была защита,чтобы мы могли клиенту давать советник, и была привязка к 1-3 счетам только. Если возможно , сделать привязку к времени, чтобы была привязка лицензии еще на время, например на месяц, 2-3 по ценам договоримся отдельно
Нужен эксперт который будет проверять есть ли интернет соединение, есть ли связь с брокером, есть ли обновления котировок если нет то реконнект аккаунта через интервал времини. терминалов можеть быть дестяки открыто в каждом терминале свой реконнект MQL5 expert цена вопросы? конверт mql5 на mql5 смотреть файл
Нужен советник который может скачать файл с любым расширением (png, jpg, exe и т.д.) по заданной ссылке и сохранить в указанную папку. Без использования сторонних библиотек, только WinAPI. Файл советника нужен с открытым исходным кодом
Куплю Вашего прибыльного советника дорого Должна быть возможность протестировать его на истории и реальные статистические показатели РЕАЛЬНОГО счета Желательно не мартингейл, после тестирования и предоставления статистики счета предложу свою цену
Тех задания 1. Открывает сделки по сигналу индикатора. Перед открытием смотреть на фильтр и если фильтр тоже в этом направлении то открывает сделку если фильтр показывает тренд в противоположенную сторону то не открывает сделку. 2. Можно было выбирать торговлю но БООМ или КРАШ. 3. Стоплос 2 типа по пипсам и по кирпичикам. (при закрытие по кирпичикам если фильтр меняет тренд то задаем N кирпичиков после смени тренда
Необходимо разработать ПО для торговли на финансовых рынках с возможностью подключения к различным брокерам и управлением торговыми операциями по нашим сигналам. Сигналы поступают в табличку формата .csv, которая находится на удаленном сервере. Видим это примерно так: в нашу таблицу поступает сигнал negative (на продажу) или positive (на покупку) актива. Клиент получает этот сигнал и заданным количеством лотов
Это будет сеточный робот с набором 25-30 функций . К нему идет утилита ( торговая панель ) . Система будет работать как в автономном режиме , так и полу автономном , где трейдер задает точку входа, а робот ее завершает. Нужен опытный и быстрый мастер с реализацией чистого кода . Важна быстрая обратная связь, ходьбы 1-3 раза в день
Нужна консультация, а именно разъяснение механизма отключения сервера брокера на выходные дни и как это влияет на советника, слабые стороны. Что можно сделать с советником чтобы предотвратить сбой алгоритмов в будущем

Информация о проекте

Бюджет
40+ USD
Исполнителю
36 USD
Сроки выполнения
от 7 до 10 дн.