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

icon

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

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

Новая статья
последние | лучшие
preview
Создание самооптимизирующихся советников на языках MQL5 и Python

Создание самооптимизирующихся советников на языках MQL5 и Python

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

Теория категорий в MQL5 (Часть 12): Порядок

Статья является частью серии о реализации графов средствами теории категорий в MQL5 и посвящена отношению порядка (Order Theory). Мы рассмотрим два основных типа упорядочения и исследуем, как концепции отношения порядка могут поддерживать моноидные множества при принятии торговых решений.
preview
Арбитражный трейдинг Forex: Анализ движений синтетических валют и их возврат к среднему

Арбитражный трейдинг Forex: Анализ движений синтетических валют и их возврат к среднему

В статье попробуем рассмотреть движения синтетических валют на связке Python + MQL5 и понять, насколько реален арбитраж на Форекс сегодня. А также: готовый код Python для анализа синтетических валют и подробней о том, что такое синтетические валюты на Форекс.
Разработка системы репликации - Моделирование рынка (Часть 10): Только реальные данные для репликации
Разработка системы репликации - Моделирование рынка (Часть 10): Только реальные данные для репликации

Разработка системы репликации - Моделирование рынка (Часть 10): Только реальные данные для репликации

Здесь мы рассмотрим, как более надежные данные (торгуемые тики) можно использовать в системе репликации, не беспокоясь о том, скорректированы они или нет.
preview
Шаблоны проектирования в MQL5 (Часть 2): Структурные шаблоны

Шаблоны проектирования в MQL5 (Часть 2): Структурные шаблоны

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

Популяционные алгоритмы оптимизации: Устойчивость к застреванию в локальных экстремумах (Часть I)

Эта статья представляет уникальный эксперимент, цель которого - исследовать поведение популяционных алгоритмов оптимизации в контексте их способности эффективно покидать локальные минимумы при низком разнообразии в популяции и достигать глобальных максимумов. Работа в этом направлении позволит глубже понять, какие конкретные алгоритмы могут успешно продолжать поиск из координат, установленных пользователем в качестве отправной точки, и какие факторы влияют на их успешность в этом процессе.
preview
Разработка системы репликации - Моделирование рынка (Часть 21):  ФОРЕКС (II)

Разработка системы репликации - Моделирование рынка (Часть 21): ФОРЕКС (II)

Мы продолжим строить систему для работы на рынке ФОРЕКС. Поэтому для того, чтобы решить эту проблему необходимо сначала объявить загрузку тиков до загрузки предыдущих баров. Это решает проблему, но в то же время заставляет пользователя следовать некой структуре в конфигурационном файле, которая, лично для меня, не имеет особого смысла. Причина в том, что, разработав программу, которая отвечает за анализ и выполнение того, что находится в конфигурационном файле, мы можем позволить пользователю объявлять нужные ему элементы в любом порядке.
preview
Разметка данных в анализе временных рядов (Часть 6):Применение и тестирование советника с помощью ONNX

Разметка данных в анализе временных рядов (Часть 6):Применение и тестирование советника с помощью ONNX

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

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

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

Возможности Мастера MQL5, которые вам нужно знать (Часть 12): Полином Ньютона

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

Торговая стратегия SP500 на языке MQL5 для начинающих

Узнайте, как использовать язык MQL5 для точного прогнозирования индекса S&P 500, добавляя классический технический анализ для обеспечения стабильности и объединяя алгоритмы с проверенными временем принципы для получения надежной информации о рынке.
preview
Возможности Мастера MQL5, которые вам нужно знать (Часть 11): Числовые стены

Возможности Мастера MQL5, которые вам нужно знать (Часть 11): Числовые стены

Числовые стены (Number Walls) — это вариант регистра сдвига с линейной обратной связью (Linear Shift Back Registers), который предварительно оценивает последовательности на предмет предсказуемости путем проверки на сходимость. Мы посмотрим, как эти идеи могут быть использованы в MQL5.
preview
Введение в MQL5 (Часть 6): Функции для работы с массивами для начинающих (II)

Введение в MQL5 (Часть 6): Функции для работы с массивами для начинающих (II)

Продолжим изучение возможностей языка программирования MQL5. В этой статье, предназначенной для начинающих, мы продолжим изучать функции для работы массивами, перейдя к более сложным концепциям, которые обязательно пригодятся при разработке эффективных торговых стратегий. В этот раз познакомимся с функциями ArrayPrint, ArrayInsert, ArraySize, ArrayRange, ArrarRemove, ArraySwap, ArrayReverse и ArraySort. Функции массивы знать обязательно, если вы хотите достичь высокого уровня в области алготрейдинга. Это очередная глава на пути к мастерству.
preview
Самооптимизирующийся советник на языках MQL5 и Python (Часть III): Реализация алгоритма Boom 1000

Самооптимизирующийся советник на языках MQL5 и Python (Часть III): Реализация алгоритма Boom 1000

В этой серии статей мы обсуждаем создание советников, способных автономно подстраиваться под динамичные рыночные условия. В сегодняшней статье мы попытаемся настроить глубокую нейронную сеть для синтетических рынков Deriv.
preview
Алгоритм кометного следа (Comet Tail Algorithm, CTA)

Алгоритм кометного следа (Comet Tail Algorithm, CTA)

В данной статье мы рассмотрим новый авторский алгоритм оптимизации CTA (Comet Tail Algorithm), который черпает вдохновение из уникальных космических объектов - комет и их впечатляющих хвостов, формирующихся при приближении к Солнцу. Данный алгоритм основан на концепции движения комет и их хвостов, и предназначен для поиска оптимальных решений в задачах оптимизации.
preview
Объединение стратегий фундаментального и технического анализа на языке MQL5 для начинающих

Объединение стратегий фундаментального и технического анализа на языке MQL5 для начинающих

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

Постфактумный анализ торговли: подбираем TrailingStop и новые стопы в тестере стратегий

Продолжаем тему анализа совершённых сделок в тестере стратегий для улучшения качества торговли. Проверим, как использование различных трейлингов поможет изменить уже полученные результаты торговли.
preview
Как построить советник, работающий автоматически (Часть 11): Автоматизация (III)

Как построить советник, работающий автоматически (Часть 11): Автоматизация (III)

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

Решение проблем интеграции ONNX

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

Машинное обучение и Data Science (Часть 25): Прогнозирование временных рядов на форексе с помощью рекуррентных нейросетей (RNN)

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

Теория категорий в MQL5 (Часть 5): Эквалайзеры

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

Оцениваем будущую производительность с помощью доверительных интервалов

В этой статье мы углубимся в применение методов бутстреппинга (bootstrapping) как средства оценки будущей эффективности автоматизированной стратегии.
preview
Интеграция скрытых марковских моделей в MetaTrader 5

Интеграция скрытых марковских моделей в MetaTrader 5

В этой статье мы продемонстрируем, как скрытые марковские модели, обученные с использованием Python, могут быть интегрированы в приложения MetaTrader 5. Скрытые марковские модели — это мощный статистический инструмент, используемый для моделирования временных рядов данных, где моделируемая система характеризуется ненаблюдаемыми (скрытыми) состояниями. Фундаментальная предпосылка HMM заключается в том, что вероятность нахождения в заданном состоянии в определенный момент времени зависит от состояния процесса в предыдущем временном интервале.
preview
Теория категорий в MQL5 (Часть 3)

Теория категорий в MQL5 (Часть 3)

Теория категорий представляет собой разнообразный и расширяющийся раздел математики, который пока относительно не освещен в MQL5-сообществе. Эта серия статей призвана осветить некоторые из ее концепций для создания открытой библиотеки и дальнейшему использованию этого замечательного раздела в создании торговых стратегий.
preview
DoEasy. Элементы управления (Часть 33): вертикальный "ScrollBar"

DoEasy. Элементы управления (Часть 33): вертикальный "ScrollBar"

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

Реализация торговой стратегии на основе полос Боллинджера с помощью MQL5: Пошаговое руководство

Пошаговое руководство по реализации на MQL5 алгоритма автоматической торговли, основанной на торговой стратегии «Полосы Боллинджера». Подробное учебное пособие на основе создания советника, который может быть полезен трейдерам.
preview
Разработка системы репликации - Моделирование рынка (Часть 18):  Тики и еще больше тиков (II)

Разработка системы репликации - Моделирование рынка (Часть 18): Тики и еще больше тиков (II)

В данном случае предельно ясно, что метрики очень далеки от идеального времени создания 1-минутного бара. Так что это первое, что мы действительно исправим. Исправить проблему синхронизации не сложно. Каким бы невероятным это ни казалось, на самом деле всё довольно просто. Однако мы не внесли исправление в предыдущую статью, потому что целью было объяснить, как перенести в окно Обзора рынка тиковые данные, которые использовались для создания 1-минутных баров на графике.
preview
Переосмысливаем классические стратегии (Часть XI): Пересечение скользящих средних (II)

Переосмысливаем классические стратегии (Часть XI): Пересечение скользящих средних (II)

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

Разработка торговой системы на основе стакана цен (Часть I): индикатор

Стакан цен Depth of Market, несомненно, является очень важным элементом для выполнения быстрых сделок, особенно в алгоритмах высокочастотного трейдинга (HFT). В этой серии статей мы рассмотрим этот тип торговых событий, которые можно получить через брокера на многих торгуемых символах. Начнем с индикатора, в котором можно настроить цветовую палитру, положение и размер гистограммы, отображаемой непосредственно на графике. Мы также рассмотрим, как сгенерировать события BookEvent для тестирования индикатора в определенных условиях. Другие возможные темы для будущих статей - это хранение данных ценовых распределений и способы их использования в тестере стратегий.
preview
Определение перекупленности и перепроданности по теории хаоса

Определение перекупленности и перепроданности по теории хаоса

Определяем перекупленность и перепроданность рынка по теории хаоса: интеграция принципов теории хаоса, фрактальной геометрии и нейронных сетей для прогнозирования финансовых рынков. Исследование демонстрирует применение показателя Ляпунова, как меры рыночной хаотичности, и динамическую адаптацию торговых сигналов. Методология включает алгоритм генерации фрактального шума, гиперболическую тангенциальную активацию и оптимизацию с моментом.
preview
Теория категорий в MQL5 (Часть 15): Функторы с графами

Теория категорий в MQL5 (Часть 15): Функторы с графами

Статья продолжает серию о реализации теории категорий в MQL5, рассматривая функторы как мост между графами и множеством. Мы вновь обратимся к календарным данным и, несмотря на их ограничения в использовании тестера стратегий, обоснуем использование функторов в прогнозировании волатильности с помощью корреляции.
preview
Теория категорий в MQL5 (Часть 11): Графы

Теория категорий в MQL5 (Часть 11): Графы

Статья продолжает серию о реализации теории категорий в MQL5. Здесь мы рассмотрим, как теория графов может быть интегрирована с моноидами и другими структурами данных при разработке стратегии закрытия торговой системы.
preview
Графический интерфейс: советы и рекомендации по созданию графической библиотеки на MQL

Графический интерфейс: советы и рекомендации по созданию графической библиотеки на MQL

Мы рассмотрим основы библиотек графического интерфейса, чтобы вы могли понять, как они работают, или даже начали создавать свои собственные.
preview
Возможности Мастера MQL5, которые вам нужно знать (Часть 26): Скользящие средние и показатель Херста

Возможности Мастера MQL5, которые вам нужно знать (Часть 26): Скользящие средние и показатель Херста

Показатель Херста — это мера того, насколько сильно временной ряд автокоррелирует в долгосрочной перспективе. Предполагается, что он отражает долгосрочные свойства временного ряда и поэтому имеет определенный вес в анализе временных рядов даже за пределами экономических/финансовых временных рядов. Однако мы сосредоточимся на его потенциальной пользе для трейдеров, изучив, как этот показатель можно объединить со скользящими средними для формирования потенциально надежного сигнала.
preview
Построение модели для ограничения диапазона сигналов по тренду (Часть 5): Система уведомлений (Часть II)

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

В статье подробно рассматривается интеграция уведомлений индикаторов MetaTrader 5 в Telegram с использованием возможностей MQL5, Python и API Telegram Bot. Вы сможете применить полученную информацию в своих проектах.
preview
Алгоритм искусственного электрического поля — Artificial Electric Field Algorithm (AEFA)

Алгоритм искусственного электрического поля — Artificial Electric Field Algorithm (AEFA)

Статья представляет алгоритм искусственного электрического поля (AEFA), вдохновленный законом Кулона об электростатической силе. Алгоритм моделирует электрические явления для решения сложных задач оптимизации, используя заряженные частицы и их взаимодействие. AEFA демонстрирует уникальные свойства в контексте других алгоритмов, связанных с законами природы.
preview
Нейросети в трейдинге: Оптимизация LSTM для целей прогнозирования многомерных временных рядов (DA-CG-LSTM)

Нейросети в трейдинге: Оптимизация LSTM для целей прогнозирования многомерных временных рядов (DA-CG-LSTM)

Статья знакомит с алгоритмом DA-CG-LSTM, который предлагает новые подходы к анализу временных рядов и их прогнозированию. Из нее вы узнаете, как инновационные механизмы внимания и гибкость модели позволяют улучшить точность прогнозов.
preview
Теория категорий в MQL5 (Часть 19): Индукция квадрата естественности

Теория категорий в MQL5 (Часть 19): Индукция квадрата естественности

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

Анализ всех вариантов движения цены на квантовом компьютере IBM

Используем квантовый компьютер от IBM для открытия всех вариантов движения цены. Звучит как научная фантастика? Добро пожаловать в мир квантовых вычислений для трейдинга!
preview
Как интегрировать в советник концепции Smart Money (BOS) в сочетании с индикатором RSI

Как интегрировать в советник концепции Smart Money (BOS) в сочетании с индикатором RSI

Концепция Smart Money (Break of Structure) в сочетании с индикатором RSI для принятия обоснованных решений в автоматической торговле на основе структуры рынка.