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

icon

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

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

Новая статья
последние | лучшие
preview
Нейросети в трейдинге: Спайково-семантический подход к пространственно-временной идентификации (S3CE-Net)

Нейросети в трейдинге: Спайково-семантический подход к пространственно-временной идентификации (S3CE-Net)

Приглашаем к знакомству с фреймворком S3CE-Net и его механизмами SSAM и STFS, которые точно обрабатывают спайковые события с учётом каузальности. Модель лёгкая, параллельная и умеет выявлять сложные связи во времени и пространстве.
preview
Автоматизация торговых стратегий на MQL5 (Часть 4): Построение многоуровневой системы зонального восстановления

Автоматизация торговых стратегий на MQL5 (Часть 4): Построение многоуровневой системы зонального восстановления

В этой статье мы разработаем многоуровневую систему зонального восстановления в MQL5, которая использует RSI для генерации торговых сигналов. Каждый сигнал динамически добавляется в массив, что позволяет системе одновременно управлять несколькими сигналами в рамках логики зонального восстановления. Данный подход демонстрирует эффективную обработку сложных сценариев управления торговлей, сохраняя при этом масштабируемый и надежный дизайн кода.
preview
Автоматизация торговых стратегий на MQL5 (Часть 12): Реализация стратегии смягчения ордер-блоков (MOB)

Автоматизация торговых стратегий на MQL5 (Часть 12): Реализация стратегии смягчения ордер-блоков (MOB)

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

Создание самооптимизирующихся советников на MQL5 (Часть 5): Самоадаптирующиеся торговые правила

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

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

В данной статье показана практическая реализация фреймворка SEW ResNet средствами MQL5 с акцентом на прикладное применение в торговле. Двойной Bottleneck даёт возможность одновременно анализировать унитарные потоки и межканальные зависимости, не теряя градиентов при обучении. Спайковые активации с адаптивными порогами и гейты повышают устойчивость к шуму и чувствительность к новизне рынка. В тексте приведены детали реализации и результаты тестов.
preview
Разработка инструментария для анализа движения цен (Часть 10): Внешние библиотеки (II) VWAP

Разработка инструментария для анализа движения цен (Часть 10): Внешние библиотеки (II) VWAP

Освойте возможности VWAP с помощью нашего подробного руководства! Узнайте, как интегрировать анализ VWAP в вашу торговую стратегию, используя MQL5 и Python. Получите максимально полное представление о рынке и улучшите свои торговые решения уже сегодня.
preview
Автоматизация торговых стратегий на MQL5 (Часть 11): Разработка многоуровневой системы сеточной торговли

Автоматизация торговых стратегий на MQL5 (Часть 11): Разработка многоуровневой системы сеточной торговли

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

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

В этой статье мы рассмотрим, как реализовать расчет скользящей средней и какие меры предосторожности следует предпринять при выполнении данного расчета. Мы также поговорим о перегрузке функции OnCalculate, чтобы знать, когда и как работать с той или иной моделью.
preview
Разрабатываем менеджер терминалов (Часть 1): Постановка задачи

Разрабатываем менеджер терминалов (Часть 1): Постановка задачи

Как обеспечить возможность удобного контроля за несколькими терминалами, на которых торгуют советники, да ещё и на разных компьютерах? Попробуем создать веб-интерфейс по управлению запуском торговых терминалов MetaTrader 5 и просмотру детальной информации о работе каждого экземпляра.
preview
Генеративно-состязательные сети (GAN) для синтетических данных в сфере финансового моделирования (Часть 2): Создание синтетического символа для тестирования

Генеративно-состязательные сети (GAN) для синтетических данных в сфере финансового моделирования (Часть 2): Создание синтетического символа для тестирования

В этой статье мы создаем синтетический символ с использованием генеративно-состязательной сети (GAN), которая включает в себя генерацию реалистичных финансовых данных, имитирующих поведение реальных рыночных инструментов, таких как EURUSD. Модель GAN изучает закономерности и волатильность на основе исторических рыночных данных и создает синтетические ценовые данные с аналогичными характеристиками.
preview
Алгоритм голубых обезьян — Blue Monkey (BM) Algorithm

Алгоритм голубых обезьян — Blue Monkey (BM) Algorithm

В статье представлена реализация метаэвристического алгоритма Blue Monkey, основанного на моделировании социального поведения голубых мартышек. Рассматриваются ключевые механизмы алгоритма - групповая структура популяции, следование за локальными лидерами и обновление поколений через замену худших взрослых особей лучшими детёнышами, а также анализируются результаты тестирования.
preview
Автоматизация торговых стратегий на MQL5 (Часть 10): Разработка стратегии Trend Flat Momentum

Автоматизация торговых стратегий на MQL5 (Часть 10): Разработка стратегии Trend Flat Momentum

В настоящей статье мы разрабатываем советник на MQL5 для стратегии Trend Flat Momentum. Мы комбинируем пересечение двух скользящих средних с фильтрами импульса RSI и CCI для генерации торговых сигналов. Также рассказываем о тестировании на истории и потенциальных улучшениях для повышения эффективности в реальных условиях.
preview
От начального до среднего уровня: Индикатор (I)

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

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

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

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

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

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

Автоматизация торговых стратегий на MQL5 (Часть 9): Создаем советник для стратегии прорыва азиатской сессии

В данной статье мы создаем советник на MQL5 для стратегии прорыва азиатской сессии, вычисляя максимумы и минимумы сессии и применяя фильтрацию трендов с помощью скользящей средней. Реализуем динамический дизайн объектов, определяемые пользователем входные временные параметры и надежное управление рисками. Наконец, продемонстрируем методы тестирования на истории и оптимизации для доработки программы.
preview
Создание вероятностного рыночно-нейтрального робота на основе распределения доходностей

Создание вероятностного рыночно-нейтрального робота на основе распределения доходностей

Рыночно-нейтральная торговая стратегия на основе эмпирического распределения доходностей представляет альтернативу классическим методам технического анализа, заменяя прогнозирование направления цены статистическим размещением ордеров в точках вероятного достижения. Статья подробно разбирает математический аппарат расчета перцентилей, алгоритмы взвешивания объемов позиций по вероятности срабатывания и механизмы адаптации к изменению рыночных условий через экспирацию сетки. Приводится полная реализация на MQL5.
preview
От начального до среднего уровня: События (I)

От начального до среднего уровня: События (I)

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

Автоматизация торговых стратегий на MQL5 (Часть 8): Создание советника с помощью гармонических паттернов Butterfly

В настоящей статье мы создаём советника на MQL5 для определения гармонических паттернов Butterfly. Мы определяем точки разворота и проверяем уровни Фибоначчи для подтверждения паттерна. Затем визуализируем паттерн на графике и автоматически совершаем сделки при подтверждении.
preview
Как опубликовать код в CodeBase: Практическое руководство

Как опубликовать код в CodeBase: Практическое руководство

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

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

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

Автоматизация торговых стратегий на MQL5 (Часть 7): Создание советника по сеточной торговле с динамическим масштабированием лотов

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

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

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

Добавляем пользовательскую LLM в торгового робота (Часть 5): Разработка и тестирование торговой стратегии с помощью LLM(IV) — Тестирование торговой стратегии

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

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

Нейросети уже меняют подход к анализу рынков, а новые архитектуры открывают ещё больше возможностей. В статье мы завершаем работу с фреймворком SpikingBrain, который отрывает перед нами новые перспективы.
preview
Переходим на MQL5 Algo Forge (Часть 4): Работа с версиями и выпуск релизов

Переходим на MQL5 Algo Forge (Часть 4): Работа с версиями и выпуск релизов

Продолжим разработку проекта Simple Candles и Adwizard, описывая нюансы использования системы контроля версий и хранилища MQL5 Algo Forge.
preview
Алгоритм Поиска Ворона — Crow Search Algorithm (CSA)

Алгоритм Поиска Ворона — Crow Search Algorithm (CSA)

Алгоритм Поиска Ворона (CSA) — это элегантная метаэвристика, вдохновленная умением ворон прятать пищу и находить чужие тайники, которая решает задачи оптимизации через баланс между следованием за успешными решениями и случайным исследованием пространства поиска. Выясним, насколько алгоритм производителен.
preview
Торгуем опционы без опционов (Часть 3): Сложные опционные стратегии

Торгуем опционы без опционов (Часть 3): Сложные опционные стратегии

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

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

Предлагаем вниманию читателя реализацию подходов фреймворка SpikingBrain на основе рекуррентного линейного внимания с гейтами, подробно разобранного в этой статье. Алгоритмы прямого прохода, распределения градиентов и обновления весов обеспечивают эффективную обработку финансовых временных рядов и позволяют воплотить ключевые идеи фреймворка на практике.
preview
Разработка продвинутых торговых систем ICT: Реализация сигналов в индикаторе Order Blocks

Разработка продвинутых торговых систем ICT: Реализация сигналов в индикаторе Order Blocks

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

Создание пользовательской системы определения рыночного режима на языке MQL5 (Часть 2): Советник

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

Искусство ведения логов (Часть 4): Сохранение логов в файлах

В этой статье я расскажу вам об основных операциях с файлами и о том, как настроить гибкий обработчик для индивидуальной настройки. Мы обновим класс CLogifyHandlerFile, чтобы записывать логи непосредственно в файл. Мы выполним тест производительности, смоделировав торговлю по EURUSD в течение недели, при этом на каждом тике будут генерироваться логи, а весь процесс займет 5 минут и 11 секунд. Результат будет сравнен в следующей статье, где мы реализуем систему кэширования для улучшения производительности.
preview
Создание самооптимизирующихся советников на MQL5 (Часть 4): Динамическое изменение размера позиции

Создание самооптимизирующихся советников на MQL5 (Часть 4): Динамическое изменение размера позиции

Успешное применение алгоритмической торговли требует непрерывного междисциплинарного обучения. Однако бесконечный спектр возможностей может потребовать многолетних усилий, не принося ощутимых результатов. Чтобы решить эту проблему, мы предлагаем структуру, которая постепенно усложняется, позволяя трейдерам постепенно совершенствовать свои стратегии, а не тратить неопределенное время на неопределенные результаты.
preview
Разрабатываем мультивалютный советник (Часть 29): Доработка конвейера

Разрабатываем мультивалютный советник (Часть 29): Доработка конвейера

Повышаем удобство работы с конвейером автоматической оптимизации: попробуем пройти путь от создания проекта оптимизации до теста итогового советника. Для наглядности промоделируем по шагам весь процесс создания итогового советника, останавливаясь для внесения желаемых исправлений.
preview
Искусство ведения логов (Часть 3): Изучение обработчиков для сохранения логов

Искусство ведения логов (Часть 3): Изучение обработчиков для сохранения логов

В этой статье мы разберем концепцию обработчиков в библиотеке логирования, поймем их работу, и создадим три начальные реализации: консоль, база данных и файл. Мы рассмотрим все: от базовой структуры обработчиков до практического тестирования, заложив основу для их дальнейшей полноценной реализации.
preview
Алгоритм Бизона — Bison Algorithm (BIA)

Алгоритм Бизона — Bison Algorithm (BIA)

Новый оптимизационный метод Bison Algorithm (BIA) — две стратегии, заимствованные из поведения бизонов, для непрерывных задач с одной целевой функцией. Ключевыми особенностями BIA являются два основополагающих принципа, заимствованных из поведения бизонов, это способность к динамичному перемещению и оборонительная стратегия.
preview
Создание пользовательской системы определения рыночного режима на языке MQL5 (Часть 1): Индикатор

Создание пользовательской системы определения рыночного режима на языке MQL5 (Часть 1): Индикатор

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

Символьное уравнение прогнозирования цены с использованием SymPy

Статья описывает интересный подход к алготрейдингу, основанный на символьных математических уравнениях вместо традиционных "черных ящиков" машинного обучения. Автор показывает, как преобразовать непрозрачные нейросети в читаемые математические формулы через библиотеку SymPy и полиномиальную регрессию, что позволяет полностью понимать логику принятия торговых решений. Подход сочетает вычислительную мощь ML с прозрачностью классических методов, давая трейдеру возможность анализировать, корректировать и адаптировать модели в реальном времени.
preview
Скрытые марковские модели для прогнозирования волатильности с учетом тренда

Скрытые марковские модели для прогнозирования волатильности с учетом тренда

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

Разработка инструментария для анализа движения цен (Часть 9): Внешние библиотеки

В статье рассматривается новое измерение анализа с использованием внешних библиотек, специально разработанных для расширенной аналитики. Эти библиотеки, такие как pandas, предоставляют мощные инструменты для обработки и интерпретации сложных данных, позволяя трейдерам получать более глубокое представление о динамике рынка. Интегрируя такие технологии, мы можем сократить разрыв между необработанными данными и практическими стратегиями. Здесь мы заложим основу для этого инновационного подхода и раскроем потенциал объединения технологий с опытом трейдинга.