Область применения торгового терминала МТ4 сокращается. Тенденция наметилась несколько лет назад и скорее всего планы по вытеснению МТ4 из практики трейдинга будут реализованы в полном объеме.
И при всем моем нежелании я все-таки взялся за переделку индикаторов SWT-на MQL5. Для человека, не являющегося программистом и не владеющего языком MQL5 задача непростая. Но меня спровоцировал мой коллега, который сказал, что с помощью ИИ-ассистента это делается на раз-два.
Я имел неосторожность поверить и дал DeepSeek простенькую задачку, с которой последний успешно справился.
Это событие дало мне большой заряд оптимизма, и я встрял в переделку кодов. Однако не тут-то было.
Лихой кавалерийский наскок и поиск легкого пути окончились неудачей. Началась рутина и традиционный путь разработки шаг за шагом с неработающим кодом и с вылавливанием ошибок.
Три ключевых индикатора, которые работают автономно, были в конце концов переведены на MQL5, заработали и работают отлично. Торговать вручную на МТ5 с поддержкой SWT-метода уже в принципе было можно.
Для ускорения оптимизации ТС делают следующее
Последний пункт называют алгоритмической оптимизацией.
А может ли реальная (вычислительная) оптимизация ускорить оптимизацию? Звучит, как масло масленное.
Ниже приведу пример, который, возможно, кого-то натолкнет на полезные идеи ускорения расчетов в своих ТС.
Хотелось привести не гипотетический, а реальный пример, но при этом лаконичный. И тут случай подвернулся.
Разбирался с особенностями DST/GMT-смещений в разных источниках котировок и календаря. Там многое завязано на первом/втором/последнем воскресенье месяца. Поэтому ядром подобных вычислений является расчет времени начала месяца. Вот эту функцию и попробуем ускорить.

На рынке случаются различные эпизоды с исполнением торговых ордеров. Наверное, важно уметь быстро разобраться в той или иной торговой ситуации. MT5 сохраняет довольно много информации в истории торговли, нужно только суметь посмотреть на нее под правильным углом.
Ниже на нескольких примерах покажем, как найти интересные ситуации частичного исполнения и какие существуют способы их представления.
Этот скрипт находит события, когда один и тот же отложенный ордер создает несколько позиций, жизни которых не пересекаются. Т.е. сначала открылась и закрылась одна позиция, затем — вторая и т.д. И все они происходят из одного и того же отложенного ордера за счет его частичных исполнений на Hedge-счете.
Семейство терминалов MetaTrader позволяет штатно визуализировать историю торговли открытого счета, бэктестов и Сигналов (мониторинг огромного числа торговых счетов).
Ниже пойдет речь об использовании готового инструмента, раскрывающего данные возможности, в рамках MetaTrader 5. При этом используемый подход может быть реализован и в MetaTrader 4.
Терминал позволяет автоматически отображать историю торговли на соответствующих графиках символов.
Визуализация дает примерно такую картинку.
Продолжаем давнюю тему исследований. На этот раз будем изучать совсем необычные для исследования данные. Они лежат на поверхности и знакомы даже ручным трейдерам, т.к. сталкиваются с ними ежедневно, но почти не обращают на них внимание. Помечены на картинке.

Теперь надписи на картинке в виде текста (авто-переводчикам) и некоторых подробностей.
1. Расчетный график, построенный Validate в конце своей работы.
Через каждые две недели автооптимизация за прошедшие два месяца. Кастомный критерий оптимизации, принудительный обрыв ГА через 2000 проходов.
Итого всего 15 оптимизаций в режиме по реальным тикам+пипсы. Полностью на все ушло ровно 19 минут.
Первый горб на графике во многом вызван тем, что не учитывалось смещение времени. Как только период смещения времени перестал попадать в интервал оптимизации, график сгладился.
2. Фактический график результата работы Validate.
Для MetaTrader 5 написана торговая библиотека MT4Orders.
Начиналось так.
// Список изменений: // 03.08.2016: // Релиз - писался и проверялся только на оффлайн-тестере.
Сегодня библиотеке ровно пять лет. Продолжает развиваться. Перечислим ее достижения.
Ведется постоянная работа над улучшением результатов торговли. Из всех FOREX-брокеров, что пробовал, лучший — RannForex. Объективно.
За несколько прошедших месяцев RannForex внес массу алгоритмических и инфрастуктурных изменений, что дало значительно лучшее исполнение.
Это же касается и MetaQuotes. MT5 (серверная часть) стал быстрее, что дало улучшение исполнения.
Позитивные изменения MT5+RannForex во многом были вызваны доскональными репортами, показывающими проблемы. Неправильно думать, что сливки в виде улучшенного исполнения своих ордеров у всех клиентов — это что-то само-собой разумеющееся.
