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

Trabajo finalizado

Plazo de ejecución 2 días

Tarea técnica

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

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

Принцип работы советника прост: советник открывает первую позицию на покупку или продажу, в зависимости от выставленных настроек, но при этом реализована возможность открыть первую позицию вручную. Если вручную, то советник модернизирует ордер: устанавливает 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 (или другой день и время, установленные пользователем в настройках советника).

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


Archivos adjuntos:

Han respondido

1
Desarrollador 1
Evaluación
(93)
Proyectos
111
17%
Arbitraje
6
33% / 17%
Caducado
5
5%
Libre
Ha publicado: 1 ejemplo
2
Desarrollador 2
Evaluación
(87)
Proyectos
131
22%
Arbitraje
7
57% / 0%
Caducado
33
25%
Libre
Ha publicado: 1 ejemplo
3
Desarrollador 3
Evaluación
(241)
Proyectos
387
51%
Arbitraje
14
14% / 14%
Caducado
43
11%
Libre
Ha publicado: 1 artículo, 1 ejemplo
4
Desarrollador 4
Evaluación
(52)
Proyectos
81
35%
Arbitraje
3
67% / 33%
Caducado
8
10%
Libre
5
Desarrollador 5
Evaluación
(361)
Proyectos
644
26%
Arbitraje
92
72% / 14%
Caducado
12
2%
Trabaja
Ha publicado: 1 ejemplo
6
Desarrollador 6
Evaluación
(229)
Proyectos
339
49%
Arbitraje
21
5% / 33%
Caducado
24
7%
Libre
7
Desarrollador 7
Evaluación
(618)
Proyectos
1429
59%
Arbitraje
31
81% / 0%
Caducado
10
1%
Libre
8
Desarrollador 8
Evaluación
(69)
Proyectos
146
34%
Arbitraje
13
8% / 62%
Caducado
26
18%
Libre
Ha publicado: 6 ejemplos
9
Desarrollador 9
Evaluación
(20)
Proyectos
19
11%
Arbitraje
23
4% / 83%
Caducado
3
16%
Libre
Ha publicado: 7 ejemplos

Información sobre el proyecto

Presupuesto
30+ USD
Plazo límite de ejecución
a 10 día(s)