Советник, торгующий выход цены из заданного диапазона

MQL4 Experts

Job finished

Execution time 4 days
Feedback from customer
Good developer!

Specification

Общее описание задачи:

Советник, торгующий выход цены из заданного диапазона, с увеличением лота после ложных пробоев – серия до прибыльной сделки. Помимо торгового режима, необходима возможность тестирования на истории (по множеству заданных условий [дата и ценовой диапазон], заданных в отдельном файле.

 

Технические требования к советнику:

  • Советник для MT4
  • Подходящий для работы через VPS

 

Список входных параметров (можно все на английском):

Режим работы

  • Торговля в реальном времени
  • Тестирование (для Тестера Стратегий)

Далее для режима торговли в реальном времени:

  • Диапазон сопротивления (технически он будет выставляться выше текущей цены)
    • Верхняя граница (цена)
    • Нижняя граница (цена)
  • Диапазон поддержки (технически он будет выставляться ниже текущей цены)
    • Верхняя граница (цена)
    • Нижняя граница (цена)
  • Тейк-профит (в пунктах)
  • Шкала увеличения лота (для следующий ордеров из серии до тейк-профита, после ложного пробоя = стоп-лосса)
    • Шаг 1 (он используется для установки первых отложенных ордеров)
    • Шаг 2 (после получения 1-го стоп-лосса)
    • Шаг 3 (после получения 2-го стоп-лосса)
    • Шаг …
    • Шаг 50

 

Далее для режима тестирования на истории (в Тестере Стратегий):

Все то же самое, только диапазоны будут задаваться не как цена, а подтягиваться из отдельного файла. После закрытия серии сделки текущему, открывается следующая серия – по следующему диапазону (и опять с 1-го шага лота).


Данные в файле в следующем формате (например, xlsx):

#

Дата начала

Дата конца

Верхняя граница

Нижняя граница

1

2023.01.01 10:00

2023.01.05 10:00

4320

4310

 

 

 

 

100

 

 

 

 


 

Пример работы советника в режиме торговли:


  1. Начало работы и серии – в советнике заданы диапазоны поддержки / сопротивления и тейк-профит. Советник выставляет ордера:
    • a. Sell-limit (4195; TP:4165; SL: 4205)
    • b. Buy- Stop (4205; TP:4235; SL: 4195)
    • c. Buy-limit (4160; TP:4190; SL: 4150)
    • d. Sell-Stop: (4150; TP:4120; SL:4190)
  2. Срабатывает Sell-limit (4195) – диапазон сопротивления. “Зеленые” ордера с. и d. удаляются.
  3. По ордеру Sell-limit (4195) срабатывает стоп-лосс (на 4205). При этом:
    • Открывается уже установленный ордер Buy-Stop (4205)
    • Выставляется Sell-Stop на уровень, где был a. Sell-Limit (4195) – с теми же параметрами, но с лотом шага 2 (по заданной шкале увеличения лота)
  4. Цена достигает уровня take-profit – оставшийся Sell-Stop удаляется

 

Примечания:

  • Stop-loss устанавливается всегда для каждого ордера – на уровне противоположной границы диапазона.
  •  В данном примере потребовалось пройти всего 2 шага до сделки по тейк-профиту. В случае, когда цена продолжает движение в рейнжде, шаги увеличения лота соответственно увеличиваются для каждого нового ордера
  • После того, как закроется по стоп-лоссу ордер по последнему заполненному шагу шкалы лотов (Шкала увеличения лота) – сделки больше не открываются
  • В случае, если диапазон в советнике выставлен так, что цена уже в нем находится – то сразу выставляются buy/sell-stop ордеры на границах этого диапазона (вместо limit)

 

Иллюстрация примера торговли (отдельно отрисовывать уровни советнику не нужно)



 

Пример работы советника в режиме тестирования (по заданным диапазонам из файла):

  1. Точка (1) – начало тестирования – соответствует первому диапазону из файла. На картинке ниже визуализированы диапазоны из файла - a, b, c, d – для примера (take-profit по всем – одинаковый, заданный в поле take-profit cоветника). Советнику отрисовывать их не нужно.
  2. Проходит тестирование торговли от диапазона а. После достижения take-profit (линия и x на рисунке) – советник ждет начала следующего диапазона (b) – и начинает новую серию, с первого шага увеличения лота
  3. После тестирования диапазонов b, c и d – тестирование завершается

 

Примечания:

  • Если take-profit по текущей серии еще не достигнут, а уже начинается новый диапазон – то этот новый диапазон пропускается.
  • Количество диапазонов для тестирования соответствует заполненному в файле

 



Responded

1
Developer 1
Rating
(361)
Projects
644
26%
Arbitration
92
72% / 14%
Overdue
12
2%
Working
Published: 1 code
2
Developer 2
Rating
(54)
Projects
102
23%
Arbitration
12
25% / 17%
Overdue
13
13%
Free
3
Developer 3
Rating
(1)
Projects
1
0%
Arbitration
0
Overdue
0
Free
4
Developer 4
Rating
(13)
Projects
31
23%
Arbitration
8
25% / 63%
Overdue
5
16%
Free
5
Developer 5
Rating
(298)
Projects
477
40%
Arbitration
105
40% / 24%
Overdue
81
17%
Loaded
Published: 2 codes

Project information

Budget
100+ USD
Deadline
from 1 to 3 day(s)