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

Работа завершена

Время выполнения 166 дней

Техническое задание

Плагин риск менеджер для 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

 

 

 

 


Откликнулись

1
Разработчик 1
Оценка
(17)
Проекты
21
14%
Арбитраж
1
0% / 100%
Просрочено
0
Свободен
2
Разработчик 2
Оценка
(21)
Проекты
28
32%
Арбитраж
1
100% / 0%
Просрочено
1
4%
Свободен
3
Разработчик 3
Оценка
(250)
Проекты
399
38%
Арбитраж
82
41% / 20%
Просрочено
69
17%
Занят
4
Разработчик 4
Оценка
(336)
Проекты
620
38%
Арбитраж
39
23% / 64%
Просрочено
93
15%
Свободен
5
Разработчик 5
Оценка
(30)
Проекты
45
16%
Арбитраж
2
0% / 100%
Просрочено
4
9%
Свободен
6
Разработчик 6
Оценка
(58)
Проекты
76
33%
Арбитраж
9
78% / 11%
Просрочено
7
9%
Свободен
7
Разработчик 7
Оценка
(15)
Проекты
20
15%
Арбитраж
3
0% / 67%
Просрочено
2
10%
Свободен
8
Разработчик 8
Оценка
(1)
Проекты
1
0%
Арбитраж
0
Просрочено
0
Свободен
Похожие заказы
У меня не сложная задача! Мне нужна исправить ошибку в индикаторе, чтобы после появления стрелки индикатора в терминале мт4 приходило уведомление Алерта в направления стрелки до начала открытие новой свечи за 10 секунд. Ошибку этого индикатора надо исправить таким образом, чтобы приходила уведомления не на открытие третьей свечи, а-на открытие второй свечи за 10 секунд до открытия
Нужно написать простой советник основанный на свечном анализе под Байбит.Нужно, чтобы советник давал исключительно сигналы,открываемся и выставляем стоп и тейк руками. Также сигналы должны приходить в ТГ. Торговля будет вестись на Байбит бессрочными фьчамиТЗ готово

Информация о проекте

Бюджет
1500 - 2700 USD
Исполнителю
1350 - 2430 USD
Сроки выполнения
до 30 дн.