Советник по трем индикаторам – SRoc, ZigZag и %W

MQL4 Experts

Job finished

Execution time 38 days

Specification

Техзадание на советника SWZ



  1. Общее описание


    1. Советник будет работать на терминале MT4, 4-5-значные котировки, подстраивается автоматически;

    2. Стратегия трендовая по трем индикаторам –  SRoc, ZigZag и %W. По SRoc и ZigZag определяется тренд, по %W открывается/закрывается ордер.

    3. Торговля по одной валюте, на график которой установлен советник. Параллельно на другой валютной паре может работать такой же советник, но с другими параметрами, и они не должны мешать друг другу.

    4. Работает на текущем таймфрейме и любой валюте.

    5. Сигнал на открытие и закрытие ордера учитывается только после закрытия свечи.

    6. Скриншот открытия и закрытия сделок здесь.


  1. Условия открытия и закрытия ордеров на покупку.


    1. Сначала определяется восходящий тренд при помощи индикаторов SRoc и ZigZag. Тренд является восходящим при возникновении одного из двух условий:

  • SRoc на текущей вершине ZigZag выше, чем на предыдущей или

  • SRoc на текущей впадине ZigZag выше, чем на предыдущей

На скриншоте моменты проверки этих условий отмечены вертикальными оранжевыми линиями.

    1. Если условия п.2.1 выполнены, дожидаемся, когда %W пересечет уровень -80 сверху вниз. Открывается первый ордер (на скриншоте отмечено красной стрелкой вверх). Открытие ордера возможно также, если на текущей свече %W выше уровня -80, но на предыдущей свече был ниже.

    2. Второй и последующие ордера открываются в качестве доливки каждый раз, как только %W опускается ниже уровня -80. Каждый ордер открывается только один раз, когда %W<-80. Следующие ордера открываются только если %W поднимается выше уровня -80 и потом опять опускается ниже. В данном примере открыто 3 сделки на покупку;

    3. Все ордера на покупку закрываются при обратном сигнале индикаторов, т.е. сначала SRoc и ZigZag показывают тренд вниз (описано в п. 3.1). На скриншоте тренд вниз определяется по двум впадинам на ZigZag в 18.00 и 19.25. Потом ждем, когда %W пересечет уровень -20 (произошло в 19.50) и закрываем все сделки.


  1. Условия открытия и закрытия ордеров на продажу противоположные.


    1. Определяется нисходящий тренд при помощи индикаторов SRoc и ZigZag. Тренд является нисходящим при возникновении одного из двух условий:

  • SRoc на текущей вершине ZigZag ниже, чем на предыдущей или

  • SRoc на текущей впадине ZigZag ниже, чем на предыдущей

На скриншоте моменты проверки этих условий отмечены вертикальными оранжевыми линиями.

    1. Если условия п.3.1 выполнены, дожидаемся, когда %W пересечет уровень -20 снизу вверх. Открывается первый ордер (на скриншоте отмечено красной стрелкой вниз в 19.50 одновременно с закрытием ордеров на покупку). Открытие ордера возможно также, если %W на текущей свече ниже уровня -20, но на предыдущей свече был выше.

    2. Второй и последующие ордера открываются  в качестве доливки каждый раз, когда %W поднимается выше уровня -20. Каждый ордер открывается только один раз, когда %W выше уровня -20. Следующие ордера открываются только если %W опускается ниже уровня -20 и потом опять поднимается выше. В данном примере открыто 4 сделки на продажу;

    3. Все ордера на продажу закрываются при обратном сигнале индикаторов, т.е. сначала SRoc и ZigZag показывают тренд вверх (п.2.1). На скриншоте тренд вверх определился по двум вершинам на ZigZag в 22.00 и 23.00. Потом ждем, когда %W пересечет уровень -80.


  1. Мани- и риск-менеджмент.


    1. При достижении определенного уровня профита (параметр Breakeven)  стоп лосс переносится  в безубыток плюс/минус (для покупки/продажи) несколько пунктов (параметр  ProfitLock);

    2. Как только появляется сигнал на разворот тренда по индикаторам SRoc и ZigZag стоп лосс также переносится в безубыток:

  • для покупки: под последним минимумом ZigZag минус несколько пунктов (параметр  ProfitLock)

  • для продажи: над последним максимумом ZigZag плюс несколько пунктов (параметр  ProfitLock)

    1. Перенос в безубыток по п.4.1 и 4.2 производится по принципу “что случилось раньше”, т.е. если раньше наступили условия п.4.1, то перенос в безубыток осуществляется по нему, если 4.2 - то соответственно, тоже.

    2. Стоп лосс не переносится против позиции, если, например, случилась ситуация, когда п.4.1 и 4.2 противоречат друг другу.

    3. Динамический лот. Размер лота определяется параметром Lot/1000, т.е.размер лота на 1000 единиц эквити. Например, если Lot/1000=0,1 применяются следующие соотношения:

Эквити

Лот

100

0,01

500

0,05

1000

0,1

10000

1

    1. Если при определенных значениях Lot/1000 низкий уровень  эквити не позволяет установить нужный размер  лота, то лот определяется как минимальное значение, которое разрешает брокер, т.е. 0,01. Например, при эквити 50 и Lot/1000=0,1 размер лота должен быть 0,005, но такого нет, поэтому ставится 0,01.


  1. Входные параметры, которые задаются вручную:


Параметры

Ед. изм.

Описание



параметры SRoc






параметры ZigZag




%W Period


Период %W

UpperLevel%W


Верхний уровень %W

BottomLevel%W


Нижний уровень %W

SL

пункты

Уровень стоп-лосса

Breakeven

пункты

Уровень профита, при котором стоп переносится в безубыток

ProfitLock

пункты

Уровень профита, который добавляется к цене открытия при переносе стопа в безубыток

Lot/1000


Размер лота на 1000 единиц эквити

MaxOrders

штук

Максимальное количество открытых ордеров по текущему инструменту




Responded

1
Developer 1
Rating
(40)
Projects
106
52%
Arbitration
17
12% / 65%
Overdue
25
24%
Free
2
Developer 2
Rating
(473)
Projects
1139
44%
Arbitration
51
31% / 33%
Overdue
501
44%
Free
3
Developer 3
Rating
(36)
Projects
58
47%
Arbitration
1
0% / 100%
Overdue
0
Free
4
Developer 4
Rating
(394)
Projects
553
41%
Arbitration
30
57% / 3%
Overdue
57
10%
Working
Published: 11 codes
5
Developer 5
Rating
(618)
Projects
1429
59%
Arbitration
31
81% / 0%
Overdue
10
1%
Free
6
Developer 6
Rating
(241)
Projects
387
51%
Arbitration
14
14% / 14%
Overdue
43
11%
Free
Published: 1 article, 1 code
7
Developer 7
Rating
(574)
Projects
945
47%
Arbitration
309
58% / 27%
Overdue
125
13%
Free
8
Developer 8
Rating
(195)
Projects
395
28%
Arbitration
155
20% / 52%
Overdue
112
28%
Free
9
Developer 9
Rating
(49)
Projects
134
27%
Arbitration
62
13% / 53%
Overdue
58
43%
Free
Published: 321 articles, 1 code
10
Developer 10
Rating
(43)
Projects
73
23%
Arbitration
11
9% / 55%
Overdue
18
25%
Free
Published: 1 article, 1 code
11
Developer 11
Rating
(80)
Projects
117
67%
Arbitration
16
25% / 13%
Overdue
12
10%
Free
Published: 2 codes
12
Developer 12
Rating
(10)
Projects
19
21%
Arbitration
2
0% / 50%
Overdue
2
11%
Free
Published: 11 codes
13
Developer 13
Rating
(641)
Projects
866
48%
Arbitration
29
38% / 17%
Overdue
63
7%
Free
14
Developer 14
Rating
(10)
Projects
17
24%
Arbitration
7
14% / 86%
Overdue
1
6%
Free
15
Developer 15
Rating
(76)
Projects
136
45%
Arbitration
11
27% / 64%
Overdue
26
19%
Free
Published: 5 codes
16
Developer 16
Rating
(169)
Projects
460
41%
Arbitration
39
18% / 31%
Overdue
193
42%
Free
Published: 2 codes
17
Developer 17
Rating
(229)
Projects
339
49%
Arbitration
21
5% / 33%
Overdue
24
7%
Free
18
Developer 18
Rating
(281)
Projects
650
28%
Arbitration
112
19% / 62%
Overdue
319
49%
Free
19
Developer 19
Rating
(118)
Projects
217
49%
Arbitration
1
0% / 0%
Overdue
25
12%
Free
Published: 1 code
20
Developer 20
Rating
(37)
Projects
105
49%
Arbitration
6
0% / 17%
Overdue
21
20%
Free

Project information

Budget
Deadline
to 7 day(s)