Нужно написать функцию, которая будет частично закрывать все открытые ордера одного направления

MQL4 Asesores Expertos

Trabajo finalizado

Plazo de ejecución 2 días

Tarea técnica

Функция.

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

Мне нужен код этой функции с объявлением глобальных переменных в случае необходимости.

Подробности.

·         Процент, на который мы частично закрываем ордер объявляем в настройках.

Input int PartForClose = 10;      Допустим, так.

Однако, необходимо с каждым новым частичным закрытием закрывать на одинаковую величину. Поэтому PartForClose – есть не просто процент от оставшегося объема, а процент от первичного объема открытия ордера. Как вариант, можно первичный объем прописать в мэджике, и каждый раз при частичном закрытии ордера не нужно будет ничего вычислять. Это просто версия.

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

enum TradeDir

{

      BUY = 0,                               // Buy

      SELL = 1                                // Sell

};

PartialClose (const TradeDir dir)

{

 

}

·         Функция должна частично закрыть много ордеров, а за один проход это делать не совсем корректно. Вопрос: можно ли сделать так, чтобы в режиме тестера ордера частично закрывались именно за один проход. Чтобы тестер не растягивал закрытие n ордеров на n бар? Этот вопрос от моего незнания. Если нет – значит нет.

·         В глобальных переменных я опишу булевский флаг. Например,

bool ProcessingClose;

Когда приходит пора к частичному закрытию ордеров одного направления, я флаг активирую. Запускается функция как-то так:

If(ProcessingClose) PartialClose (BUY);

После того, как функция обработала и закрыла все ордера, она (функция) должна деактивировать флаг.


Han respondido

1
Desarrollador 1
Evaluación
(137)
Proyectos
167
35%
Arbitraje
11
91% / 0%
Caducado
0
Libre
2
Desarrollador 2
Evaluación
(172)
Proyectos
186
32%
Arbitraje
5
60% / 20%
Caducado
3
2%
Libre
Ha publicado: 3 ejemplos
3
Desarrollador 3
Evaluación
(174)
Proyectos
233
61%
Arbitraje
3
33% / 33%
Caducado
6
3%
Libre
Ha publicado: 1 ejemplo
4
Desarrollador 4
Evaluación
(589)
Proyectos
1066
50%
Arbitraje
39
28% / 41%
Caducado
49
5%
Trabaja
Ha publicado: 1 artículo, 8 ejemplos
5
Desarrollador 5
Evaluación
(83)
Proyectos
154
29%
Arbitraje
1
100% / 0%
Caducado
27
18%
Libre
6
Desarrollador 6
Evaluación
(1)
Proyectos
7
14%
Arbitraje
2
0% / 100%
Caducado
0
Libre
Ha publicado: 1 artículo
7
Desarrollador 7
Evaluación
(42)
Proyectos
112
56%
Arbitraje
2
50% / 0%
Caducado
3
3%
Libre
Ha publicado: 1 ejemplo
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
(298)
Proyectos
477
40%
Arbitraje
105
40% / 24%
Caducado
81
17%
Trabajando
Ha publicado: 2 ejemplos
10
Desarrollador 10
Evaluación
(144)
Proyectos
285
42%
Arbitraje
19
63% / 5%
Caducado
29
10%
Libre
Ha publicado: 2 ejemplos
11
Desarrollador 11
Evaluación
(4)
Proyectos
12
0%
Arbitraje
0
Caducado
3
25%
Libre
Solicitudes similares
Ищу для покупки исходный код адекватного торгового робота на долгосрок. Интересуют только прозрачные алгоритмы с понятным обоснованием входов и выходов. Сразу мимо: мартингейл, сеточники, усреднения убытков и торговля без стопов. Каждая сделка должна быть защищена расчетным или фиксированным Stop Loss. В приоритете системы, работающие по тренду, на пробой импульса или возврат к среднему. Чтобы начать предметный
Итак. Есть первый советник, хочу сделать дополнение к нему, но таким образом чтобы это был отдельный советник(ов). Делаю в целях защиты интеллектуальной собственности)) Чтобы был как пазл, один без другого(их) не работал. Вопросы. 1. Это возможно? 2. Что нужно для этого? 3. Какие подводные камни такого подхода

Información sobre el proyecto

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