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

icon

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

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

Новая статья
последние | лучшие
preview
Нейросети — это просто (Часть 64): Метод Консервативного Весового Поведенческого Клонирования (CWBC)

Нейросети — это просто (Часть 64): Метод Консервативного Весового Поведенческого Клонирования (CWBC)

В результате тестов, проведенных в предыдущих статьях, мы пришли к выводу, что оптимальность обученной стратегии во многом зависит от используемой обучаемой выборки. В данной статье я предлагаю вам познакомиться с довольно простым и эффективном методе выбора траекторий для обучения моделей.
preview
Количественный подход в управлении рисками: Применение VaR модели для оптимизации мультивалютного портфеля с Python и MetaTrader 5

Количественный подход в управлении рисками: Применение VaR модели для оптимизации мультивалютного портфеля с Python и MetaTrader 5

Эта статья раскрывает потенциал Value at Risk (VaR) модели для оптимизации мультивалютного портфеля. Используя мощь Python и функционал MetaTrader 5, мы демонстрируем, как реализовать VaR-анализ для эффективного распределения капитала и управления позициями. От теоретических основ до практической реализации, статья охватывает все аспекты применения одной из наиболее устойчивых систем расчета рисков — VaR — в алгоритмической торговле.
preview
Нейросети в трейдинге: Агент с многоуровневой памятью

Нейросети в трейдинге: Агент с многоуровневой памятью

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

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

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

Упрощаем торговлю на новостях (Часть 1): Создаем базу данных

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

Парный трейдинг: Алготорговля с автооптимизацией на разнице Z-оценки

В этой статье разберем, что такое парный трейдинг и как происходит торговля на корреляциях. Также создадим советник для автоматизации парного трейдинга и добавим возможность автоматической оптимизации такого торгового алгоритма на исторических данных. Кроме того, в рамках проекта узнаем, как рассчитывать расхождения двух пар с помощью z-оценки.
preview
Создаем простой мультивалютный советник с использованием MQL5 (Часть 2): Сигналы индикатора - мультитаймфреймовый Parabolic SAR

Создаем простой мультивалютный советник с использованием MQL5 (Часть 2): Сигналы индикатора - мультитаймфреймовый Parabolic SAR

Под мультивалютным советником в этой статье понимается советник, или торговый робот, который может торговать (открывать/закрывать ордера, управлять ордерами, например, трейлинг-стоп-лоссом и трейлинг-профитом) более чем одной парой символов с одного графика. На этот раз мы будем использовать только один индикатор, а именно Parabolic SAR или iSAR на нескольких таймфреймах, начиная с PERIOD_M15 и заканчивая PERIOD_D1.
preview
Нейросети — это просто (Часть 19): Ассоциативные правила средствами MQL5

Нейросети — это просто (Часть 19): Ассоциативные правила средствами MQL5

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

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

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

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

Под мультивалютным советником в этой статье понимается советник, или торговый робот, который может торговать (открывать/закрывать ордера, управлять ордерами, например, трейлинг-стоп-лоссом и трейлинг-профитом) более чем одной парой символов с одного графика. На этот раз мы будем использовать только один индикатор, а именно треугольную скользящую среднюю на одном или нескольких таймфреймах.
preview
Нейросети — это просто (Часть 51): Актор-критик, управляемый поведением (BAC)

Нейросети — это просто (Часть 51): Актор-критик, управляемый поведением (BAC)

В последних двух статьях рассматривался алгоритм Soft Actor-Critic, который включает энтропийную регуляризацию в функцию вознаграждения. Этот подход позволяет балансировать исследование среды и эксплуатацию модели, но он применим только к стохастическим моделям. В данной статье рассматривается альтернативный подход, который применим как для стохастических, так и для детерминированных моделей.
preview
Разработка показателя качества советников

Разработка показателя качества советников

В этой статье мы объясним, как разработать показатель качества, который ваш советник сможет отображать в тестере стратегии. Мы познакомимся с двумя известными методами расчета (Ван Тарп и Санни Харрис).
preview
Введение в MQL5 (Часть 3): Изучаем основные элементы MQL5

Введение в MQL5 (Часть 3): Изучаем основные элементы MQL5

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

Самообучающийся советник с нейросетью на матрице состояний

Самообучающийся советник с нейросетью на матрице состояний. Совмещаем марковские цепи с многослойной нейросетью MLP, написанной на библиотеке ALGLIB MQL5. Как могут быть совмещены для прогнозирования Форекс марковские цепи и нейросети?
preview
Нейросети в трейдинге: Безмасочный подход к прогнозированию ценового движения

Нейросети в трейдинге: Безмасочный подход к прогнозированию ценового движения

В данной статье предлагаем познакомиться с методом Mask-Attention-Free Transformer (MAFT) и его применение в области трейдинга. В отличие от традиционных Transformer, требующих маскирования данных при обработке последовательностей, MAFT оптимизирует процесс внимания, устраняя необходимость в маскировании, что значительно повышает вычислительную эффективность.
preview
Нейросети — это просто (Часть 50): Soft Actor-Critic (оптимизация модели)

Нейросети — это просто (Часть 50): Soft Actor-Critic (оптимизация модели)

В предыдущей статье мы реализовали алгоритм Soft Actor-Critic, но не смогли обучить прибыльную модель. В данной статье мы проведем оптимизацию ранее созданной модели для получения желаемых результатов её работы.
preview
Нейросети — это просто (Часть 56): Использование ядерной нормы для стимулирования исследования

Нейросети — это просто (Часть 56): Использование ядерной нормы для стимулирования исследования

Исследование окружающей среды в задачах обучения с подкреплением является актуальной проблемой. Ранее мы уже рассматривали некоторые подходы. И сегодня я предлагаю познакомиться с ещё одним методом, основанным на максимизации ядерной нормы. Он позволяет агентам выделять состояния среды с высокой степенью новизны и разнообразия.
preview
Нейросети — это просто (Часть 89): Трансформер частотного разложения сигнала (FEDformer)

Нейросети — это просто (Часть 89): Трансформер частотного разложения сигнала (FEDformer)

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

Упрощаем торговлю на новостях (Часть 3): Совершаем сделки

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

Реализация советника Deus: Автоматическая торговля с RSI и скользящими средними в MQL5

В статье описываются шаги по внедрению советника Deus на основе индикаторов RSI и скользящей средней для управления автоматической торговлей.
preview
Интеграция ML-моделей с тестером стратегий (Заключение): Реализация регрессионной модели для прогнозирования цен

Интеграция ML-моделей с тестером стратегий (Заключение): Реализация регрессионной модели для прогнозирования цен

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

Фильтрация и извлечение признаков в частотной области

В этой статье мы рассмотрим применение цифровых фильтров к временным рядам, представленным в частотной области, с целью извлечения уникальных признаков, которые могут быть полезными для моделей прогнозирования.
preview
Автооптимизация тейк-профитов и параметров индикатора с помощью SMA и EMA

Автооптимизация тейк-профитов и параметров индикатора с помощью SMA и EMA

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

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

Продолжаем, начатую в предыдущей статье работу, по построению фреймворка RefMask3D средствами MQL5. Данный фреймворк разработан для всестороннего изучения мультимодального взаимодействия и анализа признаков в облаке точек, с последующей идентификацией целевого объекта на основе описания, предоставленного на естественном языке.
preview
Нейросети — это просто (Часть 92): Адаптивное прогнозирование в частотной и временной областях

Нейросети — это просто (Часть 92): Адаптивное прогнозирование в частотной и временной областях

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

Оборачиваем ONNX-модели в классы

Объектно-ориентированное программирование позволяет создавать более компактный код, который легко читать и модифицировать. Представляем пример для трёх ONNX-моделей.
preview
Как создать советник, который торгует автоматически (Часть 14): Автоматизация (VI)

Как создать советник, который торгует автоматически (Часть 14): Автоматизация (VI)

Здесь мы действительно применим на практике все знания этой серии статей. Наконец мы построим 100% автоматическую и функциональную систему, но для этого нам придется научиться одной последней детали.
preview
Введение в MQL5 (Часть 4): Структуры, классы и функции времени

Введение в MQL5 (Часть 4): Структуры, классы и функции времени

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

Нейросети — это просто (Часть 79): Агрегирование запросов в контексте состояния (FAQ)

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

Нейросети в трейдинге: Superpoint Transformer (SPFormer)

В данной статья предлагаем познакомиться с методом сегментации 3D-люъектов на основе Superpoint Transformer (SPFormer), который устраняет необходимость в промежуточной агрегации данных. Что ускоряет процесс сегментации и повышает производительность модели.
preview
Нейросети — это просто (Часть 81): Анализ динамики данных с учетом контекста (CCMR)

Нейросети — это просто (Часть 81): Анализ динамики данных с учетом контекста (CCMR)

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

Нейросети в трейдинге: Модели направленной диффузии (DDM)

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

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

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

Разработка советника на основе стратегии прорыва диапазона консолидации на MQL5

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

Нейросети в трейдинге: Универсальная модель генерации траекторий (UniTraj)

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

MQL5-советник, интегрированный в Telegram (Часть 2): Отправка сигналов из MQL5 в Telegram

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

Нейросети в трейдинге: Transformer с относительным кодированием

Самоконтролируемое обучение может оказаться эффективным способом анализа больших объемов неразмеченных данных. Основным фактором успеха является адаптация моделей под особенности финансовых рынков, что способствует улучшению результативности традиционных методов. Эта статья познакомит вас с альтернативным механизмом внимания, который позволяет учитывать относительные зависимости и взаимосвязи между исходными данными.
preview
Машинное обучение и Data Science (Часть 22): Автоэнкодеры для устранения шума и выявления сигналов в трейдинге

Машинное обучение и Data Science (Часть 22): Автоэнкодеры для устранения шума и выявления сигналов в трейдинге

В динамичном мире финансовых рынков для успешно торговли важно уметь отделять значимые сигналы от шума. Используя сложную архитектуру нейронных сетей, автоэнкодеры успешно выявляют скрытые закономерности в рыночных данных и преобразуют нечеткие входные данные в полезные идеи. В этой статье мы рассмотрим, как такие нейросети могут помочь принимать торговые решения на современных динамичных рынках.
preview
Своп-арбитраж на Форекс: Собираем синтетический портфель и создаем стабильный своп-поток

Своп-арбитраж на Форекс: Собираем синтетический портфель и создаем стабильный своп-поток

Хотите узнать, как извлекать выгоду из разницы в процентных ставках? В статье мы посмотрим, как использовать своп-арбитраж на Форексе, чтобы каждую ночь получать стабильный доход, создавая портфель, устойчивый к рыночным колебаниям.
preview
Арбитражный трейдинг Forex: Матричная торговая система на возврат к справедливой стоимости с ограничением риска

Арбитражный трейдинг Forex: Матричная торговая система на возврат к справедливой стоимости с ограничением риска

Статья содержит детальное описание алгоритма расчета кросс-курсов, визуализацию матрицы дисбалансов и рекомендации по оптимальной настройке параметров MinDiscrepancy и MaxRisk для эффективной торговли. Система автоматически рассчитывает "справедливую стоимость" каждой валютной пары через кросс-курсы, генерируя сигналы на покупку при отрицательных отклонениях, и на продажу — при положительных.