Написать на MQL5 дашборд для мониторинга котировок

MQL5 指标 自定义图形

工作已完成

执行时间5 天
员工反馈
Отличное сотрудничество! Заказчик знает, что ему нужно.Оценка 5.

指定

Нужно написать советник, который будет мониторить котировки в наглядной форме.

Параметры советника:

- Refresh time (seconds) - по умолчанию 5
- Alert Warning time (seconds) - по умолчанию 60
- Alert Error time (seconds) - по умолчанию 600
- Alert Critical time (seconds) - по умолчанию 3600

Советник при старте должен:

- Добавить все имеющиеся символы в маркет вотч и отсортировать из по Path

- Убрать график с окна (или открыть новое пустое окно) и на нём нарисовать “кирпичиками” все инструменты, внутри каждого “кирпичика” должно быть его название. Размеры “кирпичика” должны вычисляться динамически исходя из количества инструментов и размеров окна. Заполняться экран кирпичиками должен рядами слева направо, и далее сверху вниз в соответствии с отсортированным маркет вотчем.

Вот примерно так, только ширина кирпичиков должна быть пропорциональна длине названия символа - чтобы их больше помещалось на экран. И внутри кирпичика должно быть написано название инструмента (например EURUSD)



- При наведении на “кирпичик” мышью должно в попапе или в статусной строке показываться его Path и время последней котировки (HH:MM)

- При дабл клике на “кирпичик” он должен “выключаться” - помечаться фиолетовым цветом (позже будет написано зачем). Повторное нажатие должно “включать” его обратно. При этом в файле disabled.txt должна добавляться или удаляться строка с именем этого инструмента.

Каждые N секунд (параметр Refresh time) советник должен:

- Смотреть последнее время котировки у всех инструментов

- если кирпичик “выключен” - пропускать его

- Проверять котировочную сессию у инструмента, если текущее время вне сессии - красить “кирпик” в серый цвет

- Если время последней котировки по символу отстаёт от текущего времени не больше чем на “Alert Warning time” секунд - покрасить кирпичик символа в зелёный цвет и остановить имеющиеся алерты по данному символу (см. далее про остановку алертов)

- Если время отстаёт больше чем на “Alert Warning time” - покрасить кирпичик в жёлтый цвет и запустить алерт по данному символу с Severity = Warning (см. далее про запуск алертов)

- Если время отстаёт больше чем на “Alert Error time” - покрасить кирпичик в оранжевый цвет и запустить алерт с Severity = Error

- Если время отстаёт больше чем на “Alert Critical time” - покрасить кирпичик в красный цвет и запустить алерт с Severity = Critical

Запуск алерта:

- если уже есть такой алерт с таким же severity - ничего не делаем

- если есть такой алерт по данному символу с другим северити - убираем алерт и продолжаем

- добавляем в файл alerts.txt строку “<symbol> <severity> <timespamp>”, например EURUSD WARNING 1642760162 , где число - время в формате количества секунд с 1970-01-01

- Шлём пуш сообщение “ALERT EURUSD WARNING”

Остановка алерта

- Убираем из файла alerts.txt строку с данным алертом

- Шлём пуш сообщение “RESOLVED EURUSD WARNING”


Замечание по работе:

- Эксперт должен быть написан на чистом MQL5 без использования DLL

- Скорее всего будет 2-3 разумных итерации по внешнему виду дашборда

- Разумные корректировки и дополнения по ТЗ приветствуются

反馈

1
开发者 1
等级
(198)
项目
291
24%
仲裁
6
17% / 33%
逾期
4
1%
空闲
2
开发者 2
等级
(57)
项目
89
43%
仲裁
4
0% / 100%
逾期
3
3%
工作中
3
开发者 3
等级
(473)
项目
1139
44%
仲裁
51
31% / 33%
逾期
501
44%
空闲
4
开发者 4
等级
(5)
项目
5
20%
仲裁
0
逾期
0
空闲
相似订单
Нужно разработать торгового советника для MetaTrader 5. Логика стратегии: работа на M1 (таймфрейм изменяемый) уровни Fibonacci задаются вручную (0 и 100) вход осуществляется в зоне 0–38.2 Fibonacci используется RSI BUY — RSI ≤ 30 SELL — RSI ≥ 70 дополнительный сигнал — пересечение RSI и его скользящей средней Функции управления позицией: Stop Loss за сигнальной свечой Break Even два типа Trailing Stop (обычный и

项目信息

预算
300+ USD
截止日期
 5  15 天