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

icon

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

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

Новая статья
последние | лучшие
preview
Нейросети — это просто (Часть 24): Совершенствуем инструмент для Transfer Learning

Нейросети — это просто (Часть 24): Совершенствуем инструмент для Transfer Learning

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

Разработка торгового советника с нуля (Часть 9): Концептуальный скачок (II)

Размещение Chart Trade в плавающем окне. В предыдущей статье мы создали базовую систему для использования шаблонов внутри плавающего окна.
preview
Нейросети в трейдинге: Кусочно-линейное представление временных рядов

Нейросети в трейдинге: Кусочно-линейное представление временных рядов

Эта статья несколько отличается от предыдущих работ данной серии. В ней мы поговорим об альтернативном представлении временных рядов. Кусочно-линейное представление временных рядов — это метод аппроксимации временного ряда с помощью линейных функций на небольших интервалах.
preview
Нейросети — это просто (Часть 80): Генеративно-состязательная модель Трансформера графов (GTGAN)

Нейросети — это просто (Часть 80): Генеративно-состязательная модель Трансформера графов (GTGAN)

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

Введение в MQL5 (Часть 8): Руководство для начинающих по созданию советников (II)

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

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

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

Разработка торгового советника с нуля (Часть 19): Новая система ордеров (II)

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

Торгуем опционы без опционов (Часть 1): Основы теории и эмуляция через базовые активы

Статья описывает вариант эмуляции опционов через базовый актив, реализованный на языке программирования MQL5. Сравниваются преимущества и недостатки выбранного подхода с реальными биржевыми опционами на примере срочного рынка ФОРТС московской биржи MOEX и криптобиржи Bybit.
preview
Разработка стратегии Zone Recovery Martingale на MQL5

Разработка стратегии Zone Recovery Martingale на MQL5

В статье подробно рассматриваются шаги для создания советника на основе торгового алгоритма Zone Recovery. Это позволяет автоматизировать систему, экономя время алготрейдеров.
preview
Возможности Мастера MQL5, которые вам нужно знать (Часть 6): Преобразование Фурье

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

Преобразование Фурье, введенное Жозефом Фурье, является средством разложения сложных волновых точек данных на простые составляющие волны. Эта особенность может быть полезной для трейдеров, и именно ее мы и рассмотрим в этой статье.
Работа с ценами в библиотеке DoEasy (Часть 60): Список-серия тиковых данных символа
Работа с ценами в библиотеке DoEasy (Часть 60): Список-серия тиковых данных символа

Работа с ценами в библиотеке DoEasy (Часть 60): Список-серия тиковых данных символа

В статье создадим список для хранения тиковых данных одного символа и проверим его создание и получение из него требуемых данных в советнике. Такие списки тиковых данных — свой для каждого используемого символа — далее будут составлять собою коллекцию тиковых данных.
preview
Нейросети — это просто (Часть 78): Детектор объектов на основе Трансформера (DFFT)

Нейросети — это просто (Часть 78): Детектор объектов на основе Трансформера (DFFT)

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

Нейросети — это просто (Часть 45): Обучение навыков исследования состояний

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

Разработка торгового советника с нуля (Часть 11): Система кросс-ордеров

Создание системы кросс-ордеров. Есть один вид активов, который очень усложняет жизнь трейдерам — это активы фьючерсных контрактов. Но почему они усложняют жизнь трейдеру?
preview
Парадигмы программирования (Часть 1): Процедурный подход к разработке советника на основе ценовой динамики

Парадигмы программирования (Часть 1): Процедурный подход к разработке советника на основе ценовой динамики

Узнайте о парадигмах программирования и их применении в коде MQL5. В этой статье исследуются особенности процедурного программирования, а также предлагаются практические примеры. Вы узнаете, как разработать советник на основе ценовой динамики (Price Action), используя индикатор EMA и свечные данные. Кроме того, статья знакомит с парадигмой функционального программирования.
preview
Нейросети — это просто (Часть 88): Полносвязный Энкодер временных рядов (TiDE)

Нейросети — это просто (Часть 88): Полносвязный Энкодер временных рядов (TiDE)

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

Нейросети — это просто (Часть 41): Иерархические модели

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

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

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

Нейросети в трейдинге: "Легкие" модели прогнозирования временных рядов

Легковесные модели прогнозирования временных рядов обеспечивают высокую производительность, используя минимальное количество параметров. Что, в свою очередь, снижает расход вычислительных ресурсов и ускоряет принятие решений. При этом они достигают качества прогнозов, сопоставимого с более сложными моделями.
preview
Нейросети — это просто (Часть 72): Прогнозирование траекторий в условиях наличия шума

Нейросети — это просто (Часть 72): Прогнозирование траекторий в условиях наличия шума

Качество прогнозирование будущих состояний играет важную роль в метода Goal-Conditioned Predictive Coding, с которым мы познакомились в предыдущей статье. В данной статье я хочу познакомить Вас с алгоритмом, способным значительно повысить качество прогнозирования в стохастических средах, к которым можно отнести и финансовые рынки.
preview
Разработка торгового советника с нуля (Часть 8): Концептуальный скачок (I)

Разработка торгового советника с нуля (Часть 8): Концептуальный скачок (I)

Как максимально просто реализовать новый функционал? В данной статье мы сделаем шаг назад, а затем два шага вперед.
preview
Введение в MQL5 (Часть 3): Изучаем основные элементы MQL5

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

В этой статье мы продолжаем изучать основы программирования на MQL5. Мы рассмотрим массивы, пользовательские функции, препроцессоры и обработку событий. Для наглядности каждый шаг всех объяснений будет сопровождаться кодом. Эта серия статей закладывает основу для изучения MQL5, уделяя особое внимание объяснению каждой строки кода.
preview
Интеграция ML-моделей с тестером стратегий (Заключение): Реализация регрессионной модели для прогнозирования цен

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

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

Нейросети — это просто (Часть 47): Непрерывное пространство действий

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

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

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

Нейросети в трейдинге: Обнаружение объектов с учетом сцены (HyperDet3D)

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

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

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

Нейросети — это просто (Часть 65): Дистанционно-взвешенное обучение с учителем (DWSL)

В данной статье я предлагаю Вам познакомиться с интересным алгоритмом, который построен на стыке методов обучения с учителем и подкреплением.
preview
Как построить советник, работающий автоматически (Часть 13): Автоматизация (V)

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

Знаете ли вы, что такое блок-схема? Умеете ли вы ее использовать? Думаете ли вы, что блок-схемы - это дело начинающих программистов? Тогда я вам предлагаю ознакомиться с этой статьей и узнать, как работать с блок-схемами.
preview
Разрабатываем мультивалютный советник (Часть 5): Переменный размер позиций

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

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

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

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

Как построить советник, работающий автоматически (Часть 07): Виды счетов (II)

Сегодня посмотрим, как создать советник, просто и безопасно работающий в автоматическом режиме. Трейдеру всегда необходимо быть в курсе того, что делает автоматический советник, чтобы, если он «сойдет с рельсов», как можно быстрее удалить его с графика, прекратить таким образом его работу, и взять ситуацию под свой контроль.
preview
Автоматизация торговых стратегий с помощью MQL5 (Часть 1): Система Profitunity (Торговый хаос Билла Вильямса)

Автоматизация торговых стратегий с помощью MQL5 (Часть 1): Система Profitunity (Торговый хаос Билла Вильямса)

В данной статье мы исследуем систему Profitunity авторства Билла Вильямса, подробно разобрав ее ключевые составляющие и уникальный подход к торговле в хаотичных условиях рынка. Мы продемонстрируем читателям реализацию системы на языке программирования MQL5, делая акцент на автоматизации ключевых индикаторов и сигналов для входа/выхода. Наконец, мы протестируем и оптимизируем стратегию, детально анализируя ее эффективность в различных рыночных сценариях.
preview
Нейросети — это просто (Часть 46): Обучение с подкреплением, направленное на достижение целей (GCRL)

Нейросети — это просто (Часть 46): Обучение с подкреплением, направленное на достижение целей (GCRL)

Предлагаю Вам познакомиться с ещё одним направлением в области обучения с подкреплением. Оно называется обучением с подкреплением, направленное на достижение целей (Goal-conditioned reinforcement learning, GCRL). В этом подходе агент обучается достигать различных целей в определенных сценариях.
preview
Нейросети — это просто (Часть 97): Обучение модели с использованием MSFformer

Нейросети — это просто (Часть 97): Обучение модели с использованием MSFformer

При изучении различных архитектур построения моделей мы мало уделяем внимания процессу обучения моделей. В этой статье я попытаюсь восполнить этот пробел.
preview
Нейросети — это просто (Часть 44): Изучение навыков с учетом динамики

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

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

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

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

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

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

Нейросети — это просто (Часть 84): Обратимая нормализация (RevIN)

Мы давно уже усвоили, что большую роль в стабильности обучения модели играет предварительная обработка исходных данных. И для online обработки "сырых" исходных данных мы часто используем слой пакетной нормализации. Но порой возникает необходимость обратной процедуры. Об одном из возможных подходов к решению подобных задач мы говорим в данной статье.
preview
Упрощаем торговлю на новостях (Часть 2): Управляем рисками

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

В этой статье мы добавим наследование в предыдущий и новый код. Для обеспечения эффективности будет внедрена новая структура базы данных. Кроме того, мы создадим класс по управлению рисками для расчета объемов.