Обычный мартингейл, без сетки, после открытия первой сделки советник работает исключительно по отложенным ордерам.

Trabalho concluído

Tempo de execução 2 dias

Termos de Referência

Добрый день, уважаемые программисты.

Нужна помощь в написании советника.

Принцип работы советника прост: советник открывает первую позицию на покупку или продажу, в зависимости от выставленных настроек, но при этом реализована возможность открыть первую позицию вручную. Если вручную, то советник модернизирует ордер: устанавливает SL и TP (их размер одинаков и для последующих ордеров, и их можно задать в настройках).

Далее советник работает только отложенными ордерами. 

SL и TP выставляются вместе с отложенным ордером, а не после его открытия.


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

Советник с мартингейлом

Обычный мартингейл, без сетки, с упором на ясность кода и отказоустойчивость при работе на реальном счете (с занятым потоком, перезапуском терминала, в том числе после перезагрузки серверов). Советник работает только с ордерами своего magic.

Логика входа и работы

Советник открывает первую позицию на покупку или продажу, в зависимости от выставленных настроек, но при этом реализована возможность открыть первую позицию вручную. Если вручную, то советник модернизирует ордер: устанавливает SL и TP (их размер одинаков и для последующих ордеров и их можно задать в настройках).

Далее советник работает только отложенными ордерами.

SL и TP выставляются вместе с отложенным ордером, а не после его открытия.

В момент открытия позиции, на заданном расстоянии (равном SL) выставляется отложенный ордер в противоположном направлении объемом, равным n*размер предыдущего лота (можно задать в настройках коэффициент умножения, а также реализована возможность прописать вручную размер лота для каждой сделки), с заранее определенным SL и TP. При этом, на расстоянии равном ТР устанавливается отложенный ордер в том же направлении, что и первый ордер с установленным изначально лотом.

Как только сработал один из выставленных отложенных ордеров, оставшиеся тут же удаляются (советник проверяет, что приказ на удаление принят сервером, если нет - повторяет 5 раз) и выставляются новые: на уровнях SL и TP.

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

Таким образом, после закрытия позиции по SL советник выставляет отложенный ордер только в противоположном направлении (то есть после sell возможен только buy), если по ТР – наоборот – т.е. в направлении движения (после достижения ТР по sell - возможен только sell).

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

 

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

 

LOT=0.01; // Стартовый лот (он же лот первого отложенника после достижения любым ордером TP).

TP=5; // TP в пунктах

SL=5; // SL в пунктах

Magic  = 777; // магический номер

Slippage = 3; // Допустимое проскальзывание

Manual_LOT = true/false; // при true – пользователь сам прописывает размер лотов для каждого последующего ордера, при false – применяется K_Lot.

K_Lot = 3; // Коэффициент (множитель) для лота, который можно менять в настройках вручную (т.е.: если первый лот = 0.01, то второй = 0.03, третий = 0.09, четвертый 0.27 и т.д. );

Lot 1  = 0.01;      // Размер 1-го лота отложенного ордера

Lot 2  = 0.03;      // Размер 2-го лота отложенного ордера

Lot 3  = 0.09;      // Размер 3-го лота отложенного ордера

Lot 4  = 0.27;      // Размер 4-го лота отложенного ордера

Lot 5  = 0.81;      // Размер 5-го лота отложенного ордера

Lot 6  = 2.43;      // Размер 6-го лота отложенного ордера

Lot 7  = 7.29;      // Размер 7-го лота отложенного ордера

Lot 8  = 21.87;    // Размер 8-го лота отложенного ордера

Lot 9  = 65.61;    // Размер 9-го лота отложенного ордера

Lot 10 = 100.00; // Размер 10-го лота отложенного ордера

Lot 11 = 100.00; // Размер 11-го лота отложенного ордера

Lot 12 = 100.00; // Размер 12-го лота отложенного ордера

Lot 13 = 100.00; // Размер 13-го лота отложенного ордера

Lot 14 = 100.00; // Размер 14-го лота отложенного ордера

Lot 15 = 100.00; // Размер 15-го лота отложенного ордера

Время работы советника

Устанавливается пользователем: день недели, часы и минуты.

При этом, например, если советник должен прекратить торговлю в пятницу в 23.00, то это означает, что он не выставляет отложенные ордера после достижения тейк профита, т.е. только ордера на уровне стоп лоса: таким образом, в пятницу после 23:00 (или другого времени и дня, установленного пользователем) советник прекращает свою работу исключительно после достижения тейк профита и удаляет абсолютно все отложенные ордера.

Работу советник начинает ежедневно в 01:00 (или другой день и время, установленные пользователем в настройках советника).

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


Arquivos anexados:

Respondido

1
Desenvolvedor 1
Classificação
(93)
Projetos
111
17%
Arbitragem
6
33% / 17%
Expirado
5
5%
Livre
Publicou: 1 código
2
Desenvolvedor 2
Classificação
(87)
Projetos
131
22%
Arbitragem
7
57% / 0%
Expirado
33
25%
Livre
Publicou: 1 código
3
Desenvolvedor 3
Classificação
(241)
Projetos
387
51%
Arbitragem
14
14% / 14%
Expirado
43
11%
Livre
Publicou: 1 artigo, 1 código
4
Desenvolvedor 4
Classificação
(52)
Projetos
81
35%
Arbitragem
3
67% / 33%
Expirado
8
10%
Livre
5
Desenvolvedor 5
Classificação
(361)
Projetos
644
26%
Arbitragem
92
72% / 14%
Expirado
12
2%
Trabalhando
Publicou: 1 código
6
Desenvolvedor 6
Classificação
(229)
Projetos
339
49%
Arbitragem
21
5% / 33%
Expirado
24
7%
Livre
7
Desenvolvedor 7
Classificação
(618)
Projetos
1429
59%
Arbitragem
31
81% / 0%
Expirado
10
1%
Livre
8
Desenvolvedor 8
Classificação
(69)
Projetos
146
34%
Arbitragem
13
8% / 62%
Expirado
26
18%
Livre
Publicou: 6 códigos
9
Desenvolvedor 9
Classificação
(20)
Projetos
19
11%
Arbitragem
23
4% / 83%
Expirado
3
16%
Livre
Publicou: 7 códigos

Informações sobre o projeto

Orçamento
30+ USD
Prazo
para 10 dias