Статьи по программированию на языке MQL5

icon

Изучайте язык программирования торговых стратегий MQL5 по опубликованным здесь статьям, большая часть которых написана вами - членами сообщества. Все статьи разделены на категории для быстрого поиска ответа по тому или иному аспекту программирования: "Интеграция", "Тестер", "Торговые стратегии" и многое другое.

Следите за новыми публикациями и участвуйте в их обсуждении на форуме!

Новая статья
последние | лучшие
preview
От начального до среднего уровня: Массив (IV)

От начального до среднего уровня: Массив (IV)

В этой статье мы рассмотрим, как можно сделать нечто очень похожее на то, что реализовано в таких языках, как C, C++ и Java. Речь идет о передаче практически бесконечного числа параметров внутрь функции или процедуры. Хоть может показаться, что это довольно продвинутая тема, на мой взгляд, то, что здесь будет показано, сможет легко реализовать любой, кто понял предыдущие концепции. При условии, что они действительно были усвоены.
preview
Механизмы гейтинга в ансамблевом обучении

Механизмы гейтинга в ансамблевом обучении

В настоящей статье мы продолжаем наше исследование ансамблевых моделей, обсуждая концепцию ворот (gates), в частности, как они могут быть полезны при объединении выходных данных модели для повышения точности прогнозирования или обобщения модели.
preview
Интеграция MQL5 с пакетами обработки данных (Часть 4): Обработка больших данных

Интеграция MQL5 с пакетами обработки данных (Часть 4): Обработка больших данных

В статье рассматриваются передовые методы интеграции MQL5 с мощными инструментами обработки данных, а также уделяется внимание эффективной обработке больших данных для улучшения торгового анализа и принятия решений.
preview
Знакомство с языком MQL5 (Часть 13): Руководство для начинающих по созданию пользовательских индикаторов (II)

Знакомство с языком MQL5 (Часть 13): Руководство для начинающих по созданию пользовательских индикаторов (II)

Эта статья проведет вас через создание пользовательского индикатора Heikin Ashi с нуля и продемонстрирует, как интегрировать пользовательские индикаторы в советник. В статье рассматриваются расчеты индикаторов, логика исполнения сделок и методы управления рисками для улучшения автоматизированных торговых стратегий.
preview
Трейдинг с экономическим календарем MQL5 (Часть 5): Добавление в панель адаптивных элементов управления и кнопок сортировки

Трейдинг с экономическим календарем MQL5 (Часть 5): Добавление в панель адаптивных элементов управления и кнопок сортировки

В этой статье мы создадим кнопки для фильтров валютных пар, уровней важности, временных фильтров и функцию отмены для улучшения управления панелью. Кнопки будут запрограммированы на динамическую реакцию на действия пользователя, обеспечивая бесперебойное взаимодействие. Мы также автоматизируем их поведение, чтобы отражать изменения в реальном времени на панели. Это повысит общую функциональность, мобильность и оперативность панели.
preview
Искусство ведения логов (Часть 2): Форматирование логов

Искусство ведения логов (Часть 2): Форматирование логов

В данной статье мы изучим создание и применение программ форматирования для библиотек логов. Мы рассмотрим все этапы, от базовой структуры программы форматирования до примеров реализации таких программ на практике. К концу статьи вы получите все необходимые знания для форматирования логов в рамках библиотеки и поймете, как все работает за кулисами.
preview
Создание торговой панели администратора на MQL5 (Часть VIII): Панель аналитики

Создание торговой панели администратора на MQL5 (Часть VIII): Панель аналитики

В этой статье мы углубимся в добавление полезных торговых показателей в специализированное окно, интегрированное в панель администратора советника. Основное внимание уделено внедрению MQL5 для разработки аналитической панели. Подчеркивается ценность данных, которые она предоставляет администраторам. Панель в основном играет образовательную роль, позволяя извлекать из процесса разработки ценные уроки, приносящие пользу как начинающим, так и опытным разработчикам. В статье демонстрируются безграничные возможности, которые предлагает данная серия в плане предоставления передовых программных инструментов. Кроме того, мы рассмотрим реализацию классов PieChart и ChartCanvas в рамках продолжающегося расширения возможностей панели администратора.
preview
Нейросети в трейдинге: Гибридные модели прогнозирования с управляемой смесью распределений (Основные компоненты)

Нейросети в трейдинге: Гибридные модели прогнозирования с управляемой смесью распределений (Основные компоненты)

В статье представлена практическая реализация модуля адаптивного прогнозирования, объединяющего подходы Lattice и Tail-Aware моделирования для финансовых временных рядов. Читатель увидит, как система адаптивно выбирает архетипы рынка, оценивает релевантность экспертов и формирует взвешенные прогнозные распределения с учётом тяжёлых хвостов и локальных экстремумов.
preview
Управление рисками (Часть 4): Завершение ключевых методов класса

Управление рисками (Часть 4): Завершение ключевых методов класса

Эта статья — четвертая часть нашей серии статей об управлении рисками в MQL5, где мы продолжаем изучать продвинутые методы защиты и оптимизации торговых стратегий. Заложив важные основы в предыдущих статьях, теперь мы сосредоточимся на завершении всех оставшихся методов, которые были отложены в третьей части, включая функции для проверки достижения определенных уровней прибыли или убытков. Кроме того, в статье будут представлены новые ключевые события, обеспечивающие более точное и гибкое управление.
preview
Возможности Мастера MQL5, которые вам нужно знать (Часть 62): Использование паттернов ADX и CCI с обучением с подкреплением TRPO

Возможности Мастера MQL5, которые вам нужно знать (Часть 62): Использование паттернов ADX и CCI с обучением с подкреплением TRPO

Осцилляторы ADX и CCI — это индикаторы следования за трендом и импульса, которые можно использовать в паре при разработке советника. Мы продолжаем тему, начатую в предыдущей статье, рассмотрением того, как обучение и обновление разработанной нами модели в процессе эксплуатации могут осуществляться благодаря обучению с подкреплением. Мы используем алгоритм, который еще не рассматривали в этой серии, известный как оптимизация политики доверенных регионов (Trusted Region Policy Optimization, TRPO). Как всегда, сборка советника с помощью Мастера MQL5 позволяет нам гораздо быстрее настраивать наши модели для тестирования таким образом, чтобы их можно было распространять и тестировать с различными типами сигналов.
preview
Алгоритм оптимизации динго — Dingo Optimization Algorithm (DOA)

Алгоритм оптимизации динго — Dingo Optimization Algorithm (DOA)

В статье представлен новый метаэвристический метод, основанный на охотничьих стратегиях австралийских динго: групповой атаке, преследовании и поиске падали. Посмотрим, как алгоритм оптимизации динго (DOA) покажет себя алгоритмически.
preview
Нейросети в трейдинге: Спайковая архитектура пространственно-временного анализа рынка (SDformerFlow)

Нейросети в трейдинге: Спайковая архитектура пространственно-временного анализа рынка (SDformerFlow)

В статье представлена адаптация spiking-архитектуры SDformerFlow к задачам плотного анализа микродвижений цены. Пространственно-временная структура обеспечивает высокую детализацию, а спайковая логика — экономичность вычислений и способность работать в условиях разреженных, импульсных данных. В результате перед трейдером открывается инструмент, который фиксирует малейшие сдвиги ликвидности и формирует основу для более точных и стабильных решений в реальном времени.
preview
Машинное обучение и Data Science (Часть 37): Использование моделей свечных графиков и ИИ в трейдинге

Машинное обучение и Data Science (Часть 37): Использование моделей свечных графиков и ИИ в трейдинге

Свечные модели помогают трейдерам понимать психологию рынка и выявлять тренды на финансовых рынках. Они позволяют принимать более обоснованные торговые решения, которые могут привести к лучшим результатам. В этой статье мы рассмотрим, как использовать свечные паттерны в сочетании с моделями искусственного интеллекта для достижения оптимальных результатов в трейдинге.
preview
Создание торговой панели администратора на MQL5 (Часть VI): Панель управления торговлей (II)

Создание торговой панели администратора на MQL5 (Часть VI): Панель управления торговлей (II)

В этой статье мы улучшим панель управления торговлей нашей многофункциональной панели администратора. Мы представим мощную вспомогательную функцию, которая упрощает код, улучшая его читаемость, удобство обслуживания и эффективность. Мы также продемонстрируем, как легко интегрировать дополнительные кнопки и улучшить интерфейс для решения более широкого спектра торговых задач. Независимо от того, управляете ли вы позициями, корректируете ордера или упрощаете взаимодействие с пользователем, это руководство поможет вам разработать надежную и удобную панель управления торговлей.
preview
Нейросети в трейдинге: Возмущённые модели пространства состояний для анализа рыночной динамики (Энкодер)

Нейросети в трейдинге: Возмущённые модели пространства состояний для анализа рыночной динамики (Энкодер)

В статье представлен практический подход к реализации модуля P-SSE для анализа потоков рыночных данных в реальном времени. Продуманное использование стека исторических состояний позволяет каждому срезу рынка обрабатываться лишь один раз, исключая дублирование вычислений и ускоряя онлайн-анализ. Представленные решения обеспечивают высокую точность, устойчивость модели и эффективность обработки, делая фреймворк мощным инструментом для анализа микроимпульсов на финансовых рынках.
preview
От новичка до эксперта: Подтверждение зон спроса и предложения через статистические данные

От новичка до эксперта: Подтверждение зон спроса и предложения через статистические данные

Сегодня мы раскрываем часто упускаемую из виду статистическую основу, стоящую за торговыми стратегиями, основанными на спросе и предложении. Используя комбинацию MQL5 и Python в рамках рабочего процесса Jupyter Notebook, мы проводим структурированное, основанное на данных исследование, направленное на преобразование визуальных рыночных предположений в измеримые результаты. В данной статье описан весь исследовательский процесс, включая сбор данных, статистический анализ на основе Python, разработку алгоритма, тестирование и окончательные выводы. Для подробного ознакомления с методологией и результатами исследования, прочтите полную статью.
preview
Оптимизация на основе биогеографии — Biogeography-Based Optimization (BBO)

Оптимизация на основе биогеографии — Biogeography-Based Optimization (BBO)

Оптимизация на основе биогеографии (BBO) — элегантный метод глобальной оптимизации, вдохновленный природными процессами миграции видов между островами архипелагов. В основе алгоритма лежит простая, но мощная идея: решения с высоким качеством активно делятся своими характеристиками, решения низкого качества активно заимствуют новые черты, создавая естественный поток информации от лучших решений к худшим. Уникальный адаптивный оператор мутации, обеспечивает превосходный баланс между исследованием и эксплуатацией, BBO демонстрирует высокую эффективность на различных задачах.
preview
Нейросети в трейдинге: Агрегация движения по времени (Окончание)

Нейросети в трейдинге: Агрегация движения по времени (Окончание)

Представляем фреймворк TMA — интеллектуальную систему, способную прогнозировать рыночную динамику с достаточной точностью. В этой статье мы собрали все компоненты в единую архитектуру и превратили её в полноценного торгового агента, который анализирует рынок и принимает решения в реальном времени.
preview
Моделирование рынка (Часть 11): Сокеты (V)

Моделирование рынка (Часть 11): Сокеты (V)

Мы приступаем к реализации связи между Excel и MetaTrader 5, но сначала необходимо понять некоторые важные моменты, так вам не придется ломать голову, пытаясь понять, почему что-то работает или нет. И прежде, чем вы нахмуритесь, глядя на интеграцию Python и Excel, давайте посмотрим, как с помощью xlwings можно (в некоторой степени) управлять MetaTrader 5 через Excel. То, что мы покажем здесь, будет в основном сконцентрировано на образовательных задачах. Но не думайте, что мы можем делать только то, что будет рассмотрено здесь.
preview
От начального до среднего уровня: Определения (II)

От начального до среднего уровня: Определения (II)

В этой статье мы продолжим знакомство с директивой #define, но на этот раз мы сосредоточимся на второй форме ее использования, то есть на создании макросов. Поскольку данная тема может быть немного сложной, мы решили использовать приложение, которое мы изучаем уже некоторое время. Надеюсь, вам понравится сегодняшняя статья.
preview
От новичка до эксперта: Создание анимированного советника для новостей в MQL5 (X) — Представление графика с несколькими символами для торговли на новостях

От новичка до эксперта: Создание анимированного советника для новостей в MQL5 (X) — Представление графика с несколькими символами для торговли на новостях

Сегодня мы разработаем систему просмотра нескольких диаграмм с использованием объектов диаграмм. Цель состоит в том, чтобы улучшить торговлю на новостях за счет применения алгоритмов на MQL5, которые помогают сократить время реакции трейдера в периоды высокой волатильности, такие как выход крупных новостей. В этом случае мы предоставляем трейдерам интегрированный способ мониторинга нескольких основных инструментов в рамках единого инструмента для торговли на новостях. Наша работа постоянно продвигается с появлением советника News Headline EA («Заголовки новостей»), который теперь обладает растущим набором функций, которые привносят действительное значение как для трейдеров, использующих полностью автоматизированные системы, так и для тех, кто предпочитает ручную торговлю с помощью алгоритмов. Ознакомьтесь с новыми знаниями, информацией и практическими идеями, перейдя по ссылке и присоединившись к настоящему обсуждению.
preview
Нейросети в трейдинге: Потоковые модели с остаточной высокочастотной адаптацией (Окончание)

Нейросети в трейдинге: Потоковые модели с остаточной высокочастотной адаптацией (Окончание)

Мы завершаем практическую интеграцию ResFlow в MQL5 через объект верхнего уровня CNeuronResFlow. Он объединяет LTR на базе EVA-Flow и HTR, формирует контекст и карты признаков, синхронизирует временные масштабы и реализует прямой и обратный проход с OpenCL. Тестирование на исторических данных EURUSD H1 показало согласованность потоков и выявило риски внутрисделочных просадок. Материал поможет собрать, обучить и проверить модель в MetaTrader 5.
preview
От новичка до эксперта: Утилита для управления параметрами

От новичка до эксперта: Утилита для управления параметрами

Представьте, что вы преобразовали традиционные входные свойства советника или индикатора в интерфейс управления графиком в режиме реального времени. Это обсуждение основано на нашей фундаментальной работе над индикатором Market Period Synchronizer, что знаменует собой значительную эволюцию в том, как мы визуализируем рыночные структуры на старших таймфреймах (HTF) и управляем ими. Здесь мы превращаем эту концепцию в полностью интерактивную утилиту — информационная панель, которая обеспечивает динамический контроль и улучшенную многопериодную визуализацию ценового движения непосредственно на графике. Присоединяйтесь к нам, и мы узнаем, как это нововведение меняет способ взаимодействия трейдеров со своими инструментами.
preview
Разработка системы репликации (Часть 64): Нажатие кнопки воспроизведения в сервисе (V)

Разработка системы репликации (Часть 64): Нажатие кнопки воспроизведения в сервисе (V)

В данной статье мы рассмотрим, как исправить две ошибки в коде. Однако я постараюсь объяснить их так, чтобы вы, начинающие программисты, поняли, что не всегда всё происходит так, как вы предполагали. Но это не повод отчаиваться, это возможность учиться. Представленные здесь материалы предназначены только для обучения. Ни в коем случае не рассматривайте это приложение как окончательное, цели которого иные, кроме изучения представленных концепций.
preview
От начального до среднего уровня: Struct (III)

От начального до среднего уровня: Struct (III)

В этой статье мы рассмотрим, что такое структурированный код. Многие люди путают структурированный код с организованным кодом, однако между этими двумя понятиями есть разница. Об этом и будет рассказано в этой статье. Несмотря на кажущуюся сложность, которую вы почувствуете при первом знакомстве с этим типом написания кода, я постарался подойти к этому вопросу как можно проще. Но данная статья - лишь первый шаг к чему-то большему.
preview
Нейросети в трейдинге: Асинхронная обработка событий в потоковых моделях (Окончание)

Нейросети в трейдинге: Асинхронная обработка событий в потоковых моделях (Окончание)

В статье реализован событийный фреймворк EVA-Flow на MQL5 с объектом верхнего уровня CNeuronEVAFlow, встроенным в иерархию потоковых нейронов. Показаны подготовка, кодирование, первичное приближение потока и декодирование в режиме реального времени. Тесты на исторических и независимых данных MetaTrader 5 подтвердили контролируемые риски и положительное матожидание, что делает архитектуру пригодной для практического использования в стратегиях.
preview
Моделирование рынка (Часть 16): Сокеты (X)

Моделирование рынка (Часть 16): Сокеты (X)

Мы близки к завершению данного испытания. Однако, прежде чем приступить, я хочу, чтобы вы попытались понять эти две статьи, данную и предыдущую. Так вы действительно поймете следующую статью, в которой я рассмотрю исключительно ту часть, которая касается программирования на MQL5. Но я также постараюсь сделать её понятной. Если вы не понимаете эти две последние статьи, то вам будет тяжело понять и следующую, потому что материалы накапливаются. Чем больше вещей нужно сделать, тем больше нужно создать и понять для достижения цели.
preview
Разработка системы репликации (Часть 70): Настройка времени (III)

Разработка системы репликации (Часть 70): Настройка времени (III)

В данной статье мы рассмотрим, как правильно и эффективно использовать функцию CustomBookAdd. Несмотря на кажущуюся простоту, она имеет множество нюансов. Например, позволяет сообщить указателю мыши, находится ли пользовательский символ на аукционе, торгуется ли он или рынок закрыт. Представленные здесь материалы предназначены только для обучения. Ни в коем случае нельзя рассматривать это приложение как окончательное, цели которого будут иные, кроме изучения представленных концепций.
preview
Тело в Connexus (Часть 4): Добавление поддержки тела HTTP-запроса

Тело в Connexus (Часть 4): Добавление поддержки тела HTTP-запроса

В настоящей статье мы рассмотрели концепцию тела в HTTP-запросах, которое необходимо для отправки таких данных, как JSON и обычный текст. Мы обсудили и объяснили, как правильно его использовать с соответствующими заголовками. Мы также ввели класс ChttpBody, входящий в библиотеку Connexus, который упростит работу с телом запросов.
preview
Знакомство с языком MQL5 (Часть 27): Освоение API и функции WebRequest в языке MQL5

Знакомство с языком MQL5 (Часть 27): Освоение API и функции WebRequest в языке MQL5

В этой статье рассматривается, как использовать функцию WebRequest() и API в языке MQL5 для взаимодействия с внешними платформами. Вы узнаете, как создать Telegram-бота, получать идентификаторы чатов и групп, а также отправлять, редактировать и удалять сообщения непосредственно из MetaTrader 5, и тем самым заложите прочный фундамент для интеграции API в ваши будущие проекты на языке MQL5.
preview
От новичка до эксперта: Разработка стратегии торговли по зонам ликвидности

От новичка до эксперта: Разработка стратегии торговли по зонам ликвидности

Торговля в зонах ликвидности обычно ведется путем ожидания возврата цены и повторного тестирования интересующей зоны, часто путем размещения отложенных ордеров в этих областях. В этой статье мы используем MQL5, чтобы воплотить эту концепцию в жизнь, демонстрируя, как такие зоны могут быть определены программно и как можно систематически применять управление рисками. Присоединяйтесь к обсуждению, поскольку мы исследуем как логику торговли на основе ликвидности, так и ее практическую реализацию.
preview
Ординальное кодирование номинальных переменных

Ординальное кодирование номинальных переменных

В настоящей статье мы обсудим и продемонстрируем, как преобразовать номинальные предикторы в числовые форматы, подходящие для алгоритмов машинного обучения, используя как Python, так и MQL5.
preview
Нейросети в трейдинге: Обучение глубоких спайкинговых моделей (SEW-ResNet)

Нейросети в трейдинге: Обучение глубоких спайкинговых моделей (SEW-ResNet)

Приглашаем к знакомству с фреймворком SEW-ResNet, который позволяет строить глубокие спайковые модели без проблем деградации и с эффективным управлением градиентами. В этой статье мы демонстрируем, как реализовать базовый спайковый нейрон и его алгоритмы средствами MQL5.
preview
Нейросети в трейдинге: Агрегация движения по времени (TMA)

Нейросети в трейдинге: Агрегация движения по времени (TMA)

Фреймворк TMA открывает новый взгляд на рыночную динамику, позволяя моделям улавливать не только состояние рынка, но и само течение времени. Его способность извлекать закономерности из непрерывного потока данных делает анализ глубже и точнее, чем при классических подходах. А рекуррентная адаптация превращает этот метод в практичный инструмент для работы с реальными котировками.
preview
Торговый инструментарий MQL5 (Часть 4): Разработка EX5-библиотеки для управления историей

Торговый инструментарий MQL5 (Часть 4): Разработка EX5-библиотеки для управления историей

Узнайте, как извлекать, обрабатывать, классифицировать, сортировать, анализировать и управлять закрытыми позициями, ордерами и историями сделок с помощью MQL5, создав обширную EX5-библиотеку управления историей с помощью подробного пошагового подхода.
preview
Автоматизация торговых стратегий на MQL5 (Часть 5): Разработка стратегии Adaptive Crossover RSI Trading Suite

Автоматизация торговых стратегий на MQL5 (Часть 5): Разработка стратегии Adaptive Crossover RSI Trading Suite

В этой статье мы разработаем систему Adaptive Crossover RSI Trading Suite, которая использует пересечения скользящих средних с периодами 14 и 50 в качестве сигналов, подтверждаемых фильтром RSI с периодом 14. Система включает в себя фильтр торговых дней, стрелки сигналов с пояснениями и дашборд для мониторинга в реальном времени. Такой подход обеспечивает точность и адаптивность автоматической торговли.
preview
Нейросети в трейдинге: Агрегация движения по времени (Основные компоненты)

Нейросети в трейдинге: Агрегация движения по времени (Основные компоненты)

В этой статье теория встречается с практикой. Мы реализуем ключевые модули фреймворка TMA — MPE и MPA. Здесь данные обретают смысл, а кросс-внимание превращается в инструмент точного анализа рыночной динамики. Минимум избыточных операций, максимум эффективности — шаг к интеллектуальному трейдингу нового поколения.
preview
Алгоритм эволюции элитных кристаллов — Elite Crystal Evolution Algorithm (CEO-inspired): Практика

Алгоритм эволюции элитных кристаллов — Elite Crystal Evolution Algorithm (CEO-inspired): Практика

Экспериментальное исследование на стандартных бенчмарк-функциях выявляет преимущества и ограничения прямой адаптации комбинаторных алгоритмов. Статья содержит детальное описание механизмов алгоритма ECEA и результатов его тестирования.
preview
Разработка системы репликации (Часть 59): Новое будущее

Разработка системы репликации (Часть 59): Новое будущее

Правильное понимание разных идей позволяет нам делать больше с наименьшими усилиями. В этой статье мы рассмотрим, почему необходимо настроить применение шаблона до того, как сервис начнет взаимодействовать с графиком. И что, если мы улучшим указатель мыши, чтобы иметь возможность делать больше вещей с его помощью?
preview
Разработка системы репликации (Часть 74): Новый Chart Trade (I)

Разработка системы репликации (Часть 74): Новый Chart Trade (I)

В этой статье мы изменим последний код, показанный в данной серии о Chart Trade. Эти изменения необходимы, чтобы адаптировать код к текущей модели системы репликации/моделирования. Представленные здесь материалы предназначены только для обучения. Ни в коем случае не рассматривайте его как окончательное приложение, целью которого не является изучение представленных концепций.