指定
Нужен Expert Advisor, который позволяет входить в рынок и закрывать позицию по нажатию определённых клавиш, с автоматической установкой SL/TP и отображением уровней на графике. Также EA должен позволять вручную двигать SL и TP по определённым клавишам. В техническом задании отображена клавиатура как основной источник ввода команд, но на данный будет использоваться Haute42 R16, который эмулирует нажатие кнопок клавиатуры. Следовательно, информация из старого задания о блокировки клавиш клавиатуры не является актуальной. Полагаю, что в ТЗ присутствуют пробелы, которые нужно закрыть в ходе общения с выбранным исполнителем перед тем как писать код. DLL для джойстика писать не нужно.
Обозначения клавиш ниже будут эмулированы на R16, что отражено схематично в PDF, которое прикреплено к заданию.
Требования:
-
Платформа: MetaTrader 5, язык MQL5
-
Тип инструмента: текущий символ (_Symbol)
-
Функциональность:
-
По LCtrl — открыть сделку Sell Market, SL = цена + 1 пункт (пятый знак), TP = цена − 20 пунктов (четвёртый знак)
-
По RCtrl — открыть сделку Buy Market, SL = цена − 1 пункт, TP = цена + 20 пунктов
-
По LShift — закрыть открытую сделку Sell
-
По RShift — закрыть открытую сделку Buy
-
По Arrow Up / Down — двигать SL на ±1 пункт (пятый знак)
-
По Page Up / Page Down — двигать TP на ±0.1 пункт (четвёртый знак)
-
По Esc — отключить скрипт (удалить все линии и надпись, отключить реакцию на клавиши)
-
-
На графике отображаются:
-
Серая пунктирная линия: цена входа
-
Оранжевая пунктирная: уровень безубытка (вход ± спред)
-
Красная штрих-пунктирная: SL (становится зелёной после пробития BE)
-
Штрих-пунктирная: TP
-
В правом верхнем углу: надпись “SCRIPT: ON” (зелёным), “SCRIPT: OFF” (красным)
-
-
Ограничение: одновременно может быть открыта только одна позиция (или Buy, или Sell)
-
Блокировка управления: во время работы игнорировать остальные клавиши, кроме вышеуказанных
-
SL и TP должны быть изменяемы по клавишам до закрытия позиции
-
После закрытия позиции все графические элементы удаляются