Нужен советник на MQL5.

MQL5 EA

작업 종료됨

실행 시간 27 일
피고용인의 피드백
Хороший заказ. Было сложно, но интересно. Заказчик с сильными идеями. Рекомендую к сотрудничеству!
고객의 피드백
Благодарю Владимира за погружение в идею и за предложения/улучшение как кода так и визуальной составляющей. Сильный разработчик, рекомендую.

명시

Необходима разработка эксперта на языке MQL5.

Данная идея одна из вариаций сеточной стратегии. 

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

Далее расписываю саму логику робота. 

Бот работает на паре EURJPY.

При запуске ищется базовый уровень. Базовый уровень - это цена до второго знака после запятой. На питоне этот поиск выглядел следующим образом: бралась цена bid (у нее три знака после запятой), например 148.671, округлял её до двух ближайших потенциальных уровней, в нашем примере это 148.67 и 148.68 и ждал, когда цена bid коснётся одного из них. Возможно, поиск базового уровня можно организовать намного проще. Базовый уровень ищется один раз при запуске советника, больше к этому не возвращаемся.


У бота есть несколько линий:

Базовая линия (базовый уровень, base_line) – линия бота, от которой ведутся все расчеты.

Order_line – линия, на которой бот входит в сделку по limit или по stop. Находится на +-40 пунктов от базовой линии.

TakeProfit_line – при достижении этой линии должен срабатывать TakeProfit и выставляться ордер на Order_line. Находится на +-60 пунктов от базовой линии.

New base_line – обновление базового уровня, на +-500 пунктов от базовой линии.



Далее для простоты объяснения, приведу пример на базовом уровне 150.00 и только на сделках Buy. Сторона Sell делает все то же самое, только зеркально.


После нахождения базового уровня (150.00), бот выставляет ордер на покупку Buy_limit на order_line (149.60). В данный момент у бота есть два варианта:

Вверху его ждёт новый базовый уровень на +500 пунктов (155.00)

Внизу будет вход по order_limit на 40 пунктов от базовой линии (149 60). 


При достижении нового уровня, можно сказать что бот начинает круг заново, единственное, ему нужно удалить предыдущий выставленный ордер. У бота не может быть открыто несколько сделок или выставлено несколько ордеров! Либо один ордер, либо одна открытая сделка. 

При достижении order_limit открывается сделка с тейкпрофитом на TakeProfit_line и стоплоссом (про стопы далее будет подробнее).


При достижении тейкпрофита закрывается сделка в плюс. Два дальнейших варианта:

Сверху новый базовый уровень на +500 пунктов (155.00)

Снизу выставляется ордер на Order_line, то есть назначение -60 от базовой линии (149.60). 


При достижении стопа:

Выставляется ордер стоп на уровень Order_line сверху.

Снизу ждёт новый уровень на -500 базовый уровень на 145.00.



Одной из особенностей данного бота является разное значение стопа. Первый стоп равен 15, второй – 30, третий – 15. Далее бот должен принимать значения по этому кругу. 

15 – 30 – 15 – 15 – 30 – 15. 

При достижении нового базового уровня или тейка, стоп должен начинать круг заново с 15.



Теперь к главному. Таких базовых уровней должно быть 100. Через 5 пунктов каждый. То есть при первом базовом уровне на 150.00 следующий уровень будет либо на 150.05 либо 149.95. Логика новых уровней ничем не отличается, у каждого есть свой Order_line, TakeProfit_line и New base_line. Уровни должны быть адаптивны, если рынок пойдет в одну сторону, уровни должны открываться через 5 пунктов вплоть до 154.95 если рынок пойдет строго вверх или 145.05 если вниз. Уровни друг от друга не зависят и никак не влияют друг на друга. Если получится регулировать количество уровней переменной – будет супер. 


Еще прошу добавить комментарии к сделкам и ордерам. В комментариях нужно указать базовую линию, например 150.00. Этого достаточно. Также, прошу добавить логи, которые сохраняются в отдельный файл. В логах достаточно добавить время, тип сделки (открытие, стоп, тейк, выставление ордера, новый уровень) и базовый уровень бота с кем это произошло.


В результате должен получиться советник, который при запуске находит базовый уровень и выставляет 2 ордера один buy limit другой sell limit (на + и - 40 соответственно). Далее опустившись или поднявшись на 5 пунктов найдется новый базовый уровень и снова выставятся два ордера также по +-40 уже от этого базового уровня. Далее открытые сделки будут закрываться по стопа или тейкам, а новый уровни будут находиться.



Прикладываю блок схему для сделок Buy:

Вложение 1


Линии для Buy выглядят следующим образом:

Вложение 2



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

Вложение 3


Линии для Sell выглядят следующим образом:

Вложение 4




응답함

1
개발자 1
등급
(34)
프로젝트
35
20%
중재
2
0% / 100%
기한 초과
1
3%
무료
2
개발자 2
등급
(92)
프로젝트
110
17%
중재
6
33% / 17%
기한 초과
5
5%
작업중
게재됨: 1 코드
3
개발자 3
등급
(7)
프로젝트
7
86%
중재
0
기한 초과
0
무료
4
개발자 4
등급
(112)
프로젝트
132
56%
중재
1
0% / 0%
기한 초과
0
무료
5
개발자 5
등급
(198)
프로젝트
254
20%
중재
22
50% / 18%
기한 초과
0
로드됨
6
개발자 6
등급
(41)
프로젝트
45
38%
중재
1
0% / 0%
기한 초과
0
무료
7
개발자 7
등급
(572)
프로젝트
664
32%
중재
42
45% / 45%
기한 초과
12
2%
로드됨
8
개발자 8
등급
(174)
프로젝트
233
61%
중재
3
33% / 33%
기한 초과
6
3%
무료
게재됨: 1 코드

프로젝트 정보

예산
100+ USD
기한
에서 1  3 일