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

MQL4 Experts

Tâche terminée

Temps d'exécution 2 jours

Spécifications

Функция.

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

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

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

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

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

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


Répondu

1
Développeur 1
Évaluation
(137)
Projets
167
35%
Arbitrage
11
91% / 0%
En retard
0
Gratuit
2
Développeur 2
Évaluation
(172)
Projets
186
32%
Arbitrage
5
60% / 20%
En retard
3
2%
Gratuit
Publié : 3 codes
3
Développeur 3
Évaluation
(173)
Projets
231
61%
Arbitrage
3
33% / 33%
En retard
6
3%
Gratuit
Publié : 1 code
4
Développeur 4
Évaluation
(588)
Projets
1064
50%
Arbitrage
39
28% / 41%
En retard
49
5%
Travail
Publié : 1 article, 8 codes
5
Développeur 5
Évaluation
(83)
Projets
154
29%
Arbitrage
1
100% / 0%
En retard
27
18%
Gratuit
6
Développeur 6
Évaluation
(1)
Projets
7
14%
Arbitrage
2
0% / 100%
En retard
0
Gratuit
Publié : 1 article
7
Développeur 7
Évaluation
(42)
Projets
112
56%
Arbitrage
2
50% / 0%
En retard
3
3%
Gratuit
Publié : 1 code
8
Développeur 8
Évaluation
(69)
Projets
146
34%
Arbitrage
13
8% / 62%
En retard
26
18%
Gratuit
Publié : 6 codes
9
Développeur 9
Évaluation
(296)
Projets
475
40%
Arbitrage
105
40% / 24%
En retard
80
17%
Occupé
Publié : 2 codes
10
Développeur 10
Évaluation
(144)
Projets
285
42%
Arbitrage
19
63% / 5%
En retard
29
10%
Gratuit
Publié : 2 codes
11
Développeur 11
Évaluation
(4)
Projets
12
0%
Arbitrage
0
En retard
3
25%
Gratuit
Commandes similaires
Требуется создать советник на основе разворотных паттернов, используя дополнительные индикаторы такие как скользящее среднее, отклонение от скользящей средней, угол наклона скользящей средней. Возможно будет добавлено что то еще по ходу работы
Суть ТС:Приход в POI старшего тф, вход в позицию на младшем тф Анализ графика начинается всегда со старшего тф. Должен быть понятный контекст для работы. Активы: EURUSD, XAUUSD POI старшего таймфрейма: Liquidity (1M, 1W, 1D, 4H, 1H) Imbalance (1M, 1W, 1D, 4H, 1H) Order Block (1M, 1W, 1D, 4H, 1H) HTF Fractals (1M, 1W, 1D, 4H, 1H) Всегда дожидаться цену в POI старшего таймфрейма. Вход в позицию: Слом LTF структуры на

Informations sur le projet

Budget
30+ USD
Délais
à 10 jour(s)