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

MQL4 Experts

Job finished

Execution time 2 days

Specification

Функция.

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

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

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

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

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);

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


Responded

1
Developer 1
Rating
(137)
Projects
167
35%
Arbitration
11
91% / 0%
Overdue
0
Free
2
Developer 2
Rating
(172)
Projects
186
32%
Arbitration
5
60% / 20%
Overdue
3
2%
Free
Published: 3 codes
3
Developer 3
Rating
(174)
Projects
233
61%
Arbitration
3
33% / 33%
Overdue
6
3%
Free
Published: 1 code
4
Developer 4
Rating
(589)
Projects
1070
50%
Arbitration
39
28% / 41%
Overdue
49
5%
Free
Published: 1 article, 8 codes
5
Developer 5
Rating
(83)
Projects
154
29%
Arbitration
1
100% / 0%
Overdue
27
18%
Free
6
Developer 6
Rating
(1)
Projects
7
14%
Arbitration
2
0% / 100%
Overdue
0
Free
Published: 1 article
7
Developer 7
Rating
(42)
Projects
112
56%
Arbitration
2
50% / 0%
Overdue
3
3%
Free
Published: 1 code
8
Developer 8
Rating
(69)
Projects
146
34%
Arbitration
13
8% / 62%
Overdue
26
18%
Free
Published: 6 codes
9
Developer 9
Rating
(298)
Projects
478
40%
Arbitration
105
40% / 24%
Overdue
82
17%
Loaded
Published: 2 codes
10
Developer 10
Rating
(144)
Projects
285
42%
Arbitration
19
63% / 5%
Overdue
29
10%
Free
Published: 2 codes
11
Developer 11
Rating
(4)
Projects
12
0%
Arbitration
0
Overdue
3
25%
Free
Similar orders
# Technical Specification for Expert Advisor Development (MT5) **Project Name:** Grid Breakout EA **Platform:** MetaTrader 5 (MT5) **Account Mode in MT5:** Hedging (separate position accounting) ## 1. EA Operation Algorithm ### Step 1: Initialization and First Entry 1. If there are no open positions, the EA detects the current market Ask and Bid prices. 2. Two pending orders are placed in both directions from the
Нужно доработать существующий робот. Робот торгует по стратегии сетка, нужно добавить тралл, т.е. чтобы последний ордер сетки закрывался по траллу, при этом первый ордер сетки должен закрыться в убыток за счет одного или нескольких прибыльных ордеров
Перевести индикатор с pine script на mql5 и сделать из него советник. Индикатор платный, поэтому одно из условий сделки не распространять его и советник. Надеюсь на честность. Советник нужно сделать самый простой, условия входа выхода уже вписаны в индикатор. Нужно вставить блок мартингейла. Мкл попросил сделать описание из 30 слов:) вот сделал

Project information

Budget
30+ USD
Deadline
to 10 day(s)