Плагин риск менеджер для MT5

MQL5 Indikatoren Experten C++ C#

Auftrag beendet

Ausführungszeit 166 Tage

Spezifikation

Плагин риск менеджер для MT5

 

Термины:

Capital, $ – размер первоначального капитала торгового счета в долларах. Является переменной для плагина, устанавливается для группы счетов или конкретных МТ5 счетов.

Equity, $ – плавающая прибыль/убыток. Значение получать от сервера по конкретному счету.

Max daily loss, % - ежедневный лимит потерь. Является переменной для плагина, устанавливается для группы счетов или конкретных МТ5 счетов.

Max week loss, % - недельный лимит потерь. Является переменной для плагина, устанавливается для группы счетов или конкретных МТ5 счетов.

Max loss, % - максимальный лимит потерь за весь период. Является переменной для плагина, устанавливается для группы счетов или конкретных МТ5 счетов.

Max Exposure, LOT - максимальный одномоментный совокупный размер позиций. Является переменной для плагина, устанавливается для группы счетов или конкретных МТ5 счетов.

Time Liquidation of positions, sec – время в секундах до наступления Закрытия рынков, в которое в конце торговой недели должны быть принудительно закрыты открытые позиции. Является переменной для плагина, устанавливается для группы счетов или конкретных МТ5 счетов.

 

Описание:

Реализовать плагин, который блокирует для торговли МТ5 счета и закрывает открытые позиции по заданным в параметрах плагина критериям.

Критерии:

- превышен Ежедневный лимит потерь (Max daily loss, %);

- превышен Недельный лимит потерь (Max week loss, %);

- превышен Максимальный лимит потерь за весь период (Max loss, %);

 

Если счету меньше 30 дней

 

Ежедневный лимит потерь (Max daily loss, %):

Лимит потерь рассчитывается исходя из размера первоначального капитала (Capital), поэтому:

-если Equity на конец предыдущего торгового дня МЕНЬШЕ Capital, то сравнивать текущий Equity с Equity на конец предыдущего торгового дня;

-если Equity на конец предыдущего торгового дня БОЛЬШЕ ИЛИ РАВНО Capital, то сравнивать текущий Equity с Capital;

-в первый день сравнивать текущий Equity с Capital;

 

Недельный лимит потерь (Max week loss, %)

-если Equity на начало текущей торговой недели МЕНЬШЕ Capital, то сравнивать текущий Equity с Equity на начало текущей торговой недели;

-если Equity на начало текущей торговой недели БОЛЬШЕ ИЛИ РАВНО Capital, то сравнивать текущий Equity с Capital;

-в первую неделю сравнивать с Capital.

 

Максимальный лимит потерь за весь период (Maxx loss, %) – сравнивает текущий Equity c Capital установленного по счету или группе счетов.

 

Если счету больше 30 дней

Сравнивать не с Capital, а с Equity на конец 30-го календарного дня

 

Если счету больше 60 дней

Сравнивать не с Capital, а с Equity на конец 60-го календарного дня и т.д. с интервалом в 30 дней.

 

Плагин должен запрещать открывать позицию сверх установленного по каждой группе счетов или конкретного МТ5 счета - Максимального одномоментного совокупного размера позиции (Max Exposure, LOT);

Плагин должен в конце торговой недели Закрыть открытые позиции согласно времени закрытия рынков, за X секунд (переменная Time Liquidation of positions, sec) до закрытия.

Отчет времени вести исходя из даты регистрации счета в МТ5, параметр Зарегистрирован.

Настройки в виде переменных Max daily loss/Max week loss/Maxx loss, Max Exposure, Time Liquidation of positions должны задаваться для группы счетов или конкретного МТ5 счета.

Значение Equity в конце каждого дня для каждого счета необходимо записывать и хранить в отдельной базе MySQL. Параметр конец дня должен запрашиваться из МТ5 сервера.

При наступлении события «Блокировка счета», отправить запрос на отправку письма Клиенту. Адрес и порт почтового сервера должны быть вынесены в переменные (Mail server). Для вызова процедуры используется gRPC. Заказчик передает протофайл по запросу Исполнителя.

Переменные для плагина должны задаваться через Добавление\Изменение Параметров в Настройках платформы MetaTrader 5 Administrator.

По завершению работ необходимо передать исходный код Заказчику.

 

Пример настроек плагина

Параметр

Значение

BD

Address, user, password, database name

Mail server

Ip_adress:port

Groups 1

null

Logins 1

5000302

Max daily loss 1, %

4

Max week loss 1, %

7

Max loss 1, %

12

Max Exposure 1, LOT

6

Time Liquidation of positions 1, sec

300

Capital 1, USD

10000

Groups 2

ArumTrade\real\riskmanager\group1

Logins 2

null

Max daily loss 2, %

5

Max week loss 2, %

9

Max loss 2, %

13

Max Exposure 2, LOT

6

Time Liquidation of positions 2, sec

350

Capital 2, USD

15000

Groups 3

Logins 3

….

 

Groups X

ArumTrade\real\riskmanager\gr\*

Logins X

null

Max daily loss X, %

5

Max week loss X, %

9

Max loss X, %

12

Max Exposure X, LOT

6

Time Liquidation of positions X, sec

300

Capital X, USD

15000

 

 

Пример структуры таблицы базы MySQL

Логин МТ5

Дата + время

Значение equity

 

 

 

 


Bewerbungen

1
Entwickler 1
Bewertung
(17)
Projekte
21
14%
Schlichtung
1
0% / 100%
Frist nicht eingehalten
0
Frei
2
Entwickler 2
Bewertung
(21)
Projekte
28
32%
Schlichtung
1
100% / 0%
Frist nicht eingehalten
1
4%
Frei
3
Entwickler 3
Bewertung
(251)
Projekte
402
38%
Schlichtung
82
41% / 20%
Frist nicht eingehalten
70
17%
Arbeitet
4
Entwickler 4
Bewertung
(336)
Projekte
620
38%
Schlichtung
39
23% / 64%
Frist nicht eingehalten
93
15%
Frei
5
Entwickler 5
Bewertung
(30)
Projekte
45
16%
Schlichtung
2
0% / 100%
Frist nicht eingehalten
4
9%
Frei
6
Entwickler 6
Bewertung
(58)
Projekte
76
33%
Schlichtung
9
78% / 11%
Frist nicht eingehalten
7
9%
Frei
7
Entwickler 7
Bewertung
(15)
Projekte
20
15%
Schlichtung
3
0% / 67%
Frist nicht eingehalten
2
10%
Frei
8
Entwickler 8
Bewertung
(1)
Projekte
1
0%
Schlichtung
0
Frist nicht eingehalten
0
Frei
Ähnliche Aufträge
1) Необходимо полностью изучить алгоритм работы индикатора. У индикатора есть логика каким образом видит свечи на графике и принимает решения отправлять уведомления или нет. На основании этого и нужна отталкиваться, чтобы решить Т3. 2) НЕОБХОДИМО СДЕЛАТЬ ТАКИМ ОБРАЗОМ, ЧТОБЫ СУЩЕСТВУЮЩИЙ ИНДИКАТОР ВЫДАВАЛ СИГНАЛ НА 3 СВЕЧУ КАК В ОРИГИНАЛЕ, ЕДИНСТВЕННОЕ НУЖНА ИЗМЕНИТЬ ИНДИКАТОР ТАКИМ ОБРАЗОМ, ЧТОБЫ ИНДИКАТОР ОПЕРЕДИЛ
Нужно переписать советник с МТ4 на МТ5 + минимальная модернизация - изменить комментарии сделок на yanebot - вместо отложенных ордеров чтоб советник открывал сделки по сигналам (сейчас он выставляет отложки и ждет исполнения) - Lotsize Calculation method - по умолчанию изменить на третий вариант Чтоб конечный результат соответствовал требованиям mql маркета
У меня не сложная задача! Мне нужна исправить ошибку в индикаторе, чтобы после появления стрелки индикатора в терминале мт4 приходило уведомление Алерта в направления стрелки до начала открытие новой свечи за 10 секунд. Ошибку этого индикатора надо исправить таким образом, чтобы приходила уведомления не на открытие третьей свечи, а-на открытие второй свечи за 10 секунд до открытия

Projektdetails

Budget
1500 - 2700 USD
Für die Entwickler
1350 - 2430 USD
Ausführungsfristen
bis 30 Tag(e)