Торговая панель для мт5

Specification

Панель получает данные об уровне входа и стоп-лоссе из отрезка, который появляется на графике вместе с панелью, при её разворачивании.
Работа и логика отрезка показана на видео:



Цвет отрезка красный.
Настройка свойств отрезка не нужна, не предусмотрена.
Стартовая длина отрезка = высоте торговой панели.
Края отрезка подписаны ENTRY и SL.
Линия ENTRY на графике - зелёный пунктир, линия SL - красный пунктир.
Положение концов отрезка ENTRY и SL относительно текущей цены на момент размещения ордеров через панель, должно автоматически сообщать панели в какую сторону мы открываемся:
ENTRY выше SL - размещаются ордера в покупку.
ENTRY ниже SL - размещаются ордера в продажу.
Положение концов отрезка также служит уровнями значений цены для расчёта риска на вход, если панель работает в режиме торговли от риска.
Такое информирование от отрезка как в видео о текущем моменте на графике не нужно:


Блок панели:

Кнопка STOP - включен режим открытия ордеров на пробой по маркету.
Кнопка LIMIT - включен режим открытия лимитных ордеров.
Кнопка STOPLIMIT - включен режим размещения лимитного ордера на пробой (стоп-цена = лимитной).
Строка QTY - в это поле руками вписывается цифра, равная количеству необходимых к открытию ордеров.
Кнопка SEND - отправляет ордера в терминал.
Кнопка "стрелка вверх" - сворачивает панель
Панель должна обрабатывать вводимые руками значения с разделителем в виде точки и запятой одинаково: 0,1 = 0.1

Торговая панель работает в двух режимах:

1 режим: включена кнопка %BALANCE - потери при стоп-лоссе в трейде = обозначенному % от депозита.
Значение % прописывается руками в поле рядом с кнопкой.
Объём входа определяется по зашитой логике расчёта риска на сделку, путём считывания значений с краёв отрезка на графике.
Рядом в строке %BALANCE нужно автоматически выводить в дополнительное окно SIZE расчётное значение возможного к открытию объёма.
Введённое руками значение со строки QTY будет сообщать панели, какое количество ордеров необходимо разместить с учётом совокупного риска.
Пример на скрине графика:

баланс 1983,02
в поле %BALANCE стоит 3
отрезок стоит на графике так, что потеря на сделку в 3% от баланса даёт нам возможность зайти в покупки объёмом в 0,4 лота
в поле QTY стоит 8
дальше включается формула, в результате которой происходит деление 0,4 на 8
Итого мы можем открыть объёмом в 0,05 лота 8 ордеров, нажав на кнопку SEND.
Панель также после этих расчётов для наглядности автозаполняет поле LOTSIZE значением 0,05

Не продумано, на усмотрение программиста:
Как округлять объём ордера/ордеров по этой логике и как оповещать о невозможности открыть трейд по текущему инструменту, если баланса не хватает.
Сообщать о невозможности открыть трейд, если расчётный объём от риска получился 0,01 допустим, а мы хотим открыть 5 ордеров (счёт у нас не центовый).
Либо в панели добавить какой-нибудь значок "алярма" и т.п. восклицательного знака об ошибке.

2 режим: включается кнопкой FIX.VOL
Это означает, что объём входа ордера/ордеров определяется вручную и прописывается в поле руками.
Положения концов отрезка в этом режиме служат только для сообщения панели значений цены для входа и где будет стоп-лосс.
В таком режиме значение поля LOTSIZE = значению прописанному в поле FIX.VOL (заполняется автоматически самой панелью).


Общие положения для обоих режимов:
Строка QTY - должно быть условие, что с пустым полем панель не отправит в терминал ничего, должно быть прописано руками целое число от 1.
Все ордера открываются по одной цене вне зависимости от режима объёма.

Уровень тейк-профита всем ордерам выставляется сеткой по логике:
1 ордер имеет ТП = размеру стопа
2 ордер имеет ТП = 2 размера стопа
3 ордер имеет ТП = 3 размера стопа
и т.д.
Уровень стоп-лосса выставляется всем ордерам на одном уровне, считанном с крайней точки отрезка (SL)

Панель не должна быть громоздкой, чем меньше, тем лучше.
Цветовые решения панели максимально приближенные к макету в превалирующих ч/б тонах, но кнопки панели при их состоянии нажатости должны явно отличаться от не нажатых.
Размер кнопок/окошек панели в 1,5 раза больше базового текста и размера вкладок терминала:


В свёрнутом режиме панели на её плашке должны быть размещены 2 кнопки:
- кнопка "стрелка вниз" - разворачивает панель
- кнопка DELL.ALL - её нажатие без разворачивания панели удалит все отправленные, но ещё не исполненные ордера


В свёрнутом виде соответственно панель имеет толщину одной такой строки развёрнутой панели.
Панель должна сворачиваться автоматически при нажатии кнопки SEND и принудительно кнопкой на самой панели (стрелка вверх рядом с кнопкой SEND).
В терминале одновременно открыто много окон с графиками, в каждом окне должна работать без конфликтов своя панель.
При сворачивании панель не должна запоминать в каком режиме она работала: все поля пустые, кнопки отжатые при новом разворачивании панели.
Наличие панели на графике должно уметь прописываться в шаблон - при загрузке шаблона графика, панель тоже должна появляться на нём в свёрнутом состоянии.
Левый верхний угол окна графика - место панели в режиме ожидания.
Панель при разворачивании из состояния ожидания изначально должна центроваться в окне графика по ширине/высоте окна графика.
Развёрнутую панель после должно быть можно двигать по окну графика.

Первично отрезок центруется:
- по высоте: на текущей цене, с таким положением его концов: ENTRY вверху, SL снизу.
- по ширине: с отступом вправо на +2 свечи от текущей.

\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
При заказе программ на MQL4/MQL5 (а также на других языках программирования) считается стандартом, что Исполнитель предоставляет Заказчику все исходные коды, созданные во время выполнения работы. Тем не менее, Заказчик должен явно в Техническом задании прописать этот момент. - прописываем: предоставить

Также желательно в ТЗ указать, имеет ли право Исполнитель использовать наработки по данному заказу для использования в других коммерческих проектах или для публикации собственных продуктов в Маркете. - указываем: не имеет право

Responded

1
Developer 1
Rating
(57)
Projects
89
43%
Arbitration
4
0% / 100%
Overdue
3
3%
Working
2
Developer 2
Rating
(3)
Projects
1
0%
Arbitration
5
0% / 100%
Overdue
0
Free
3
Developer 3
Rating
(296)
Projects
475
40%
Arbitration
105
40% / 24%
Overdue
80
17%
Busy
Published: 2 codes
4
Developer 4
Rating
(54)
Projects
102
23%
Arbitration
12
25% / 17%
Overdue
13
13%
Free
5
Developer 5
Rating
(20)
Projects
19
11%
Arbitration
23
4% / 83%
Overdue
3
16%
Free
Published: 7 codes
Similar orders
Нужно создать торговый советник для МТ5 для автоматической торговли золотом, серебром и нефти, газа. Торговля будет происходить на основании данных индикаторов, корреляции данных инструментов. Должна быть панель управления с настройками на английском языке

Project information

Budget
50+ USD
Deadline
to 12 day(s)