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

icon

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

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

Новая статья
последние | лучшие
preview
Риск-менеджер для ручной торговли

Риск-менеджер для ручной торговли

В данной статье мы подробно раскроем написание класса риск-менеджера для ручной торговли с нуля. Также данный класс может быть использован как базовый класс для наследования трейдерам, которые торгуют алгоритмически.
preview
Нейросети — это просто (Часть 24): Совершенствуем инструмент для Transfer Learning

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

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

Библиотека численного анализа ALGLIB в MQL5

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

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

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

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

Продолжаем рассмотрение метода кластеризации. В данной статье мы создадим новый класс CKmeans для реализации одного из наиболее распространённых методов кластеризации k-средних. По результатам тестирования модель смогла выделить около 500 паттернов.
preview
Нейросети — это просто (Часть 74): Адаптивное прогнозирование траекторий

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

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

Нейросети — это просто (Часть 40): Подходы к использованию Go-Explore на большом объеме данных

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

Нейросети — это просто (Часть 43): Освоение навыков без функции вознаграждения

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

Количественный анализ на MQL5: реализуем перспективный алгоритм

Разбираем вопрос, что такое количественный анализ, как его применяют крупные игроки, создадим один из алгоритмов количественного анализа на языке MQL5.
preview
Нейросети — это просто (Часть 59): Дихотомия контроля (Dichotomy of Control — DoC)

Нейросети — это просто (Часть 59): Дихотомия контроля (Dichotomy of Control — DoC)

В предыдущей статье мы познакомились с Трансформером решений. Но сложная стохастическая среда валютного рынка не позволила в полной мере раскрыть потенциал представленного метода. Сегодня я хочу представить Вам алгоритм, который направлен на повышение производительности алгоритмов в стохастических средах.
preview
Может ли Heiken Ashi давать хорошие сигналы в сочетании со скользящими средними?

Может ли Heiken Ashi давать хорошие сигналы в сочетании со скользящими средними?

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

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

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

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

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

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

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

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

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

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

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

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

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

Мультибот в MetaTrader (Часть II): улучшенный динамический шаблон

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

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

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

Нейросети — это просто (Часть 49): Мягкий Актор-Критик (Soft Actor-Critic)

Мы продолжаем рассмотрение алгоритмов обучения с подкреплением в решении задач непрерывного пространства действий. И в данной статье предлагаю познакомиться с алгоритмом Soft Аctor-Critic (SAC). Основное преимущество SAC заключается в способности находить оптимальные политики, которые не только максимизируют ожидаемую награду, но и имеют максимальную энтропию (разнообразие) действий.
preview
Создаем алгоритм маркет-мейкинга на MQL5

Создаем алгоритм маркет-мейкинга на MQL5

Как работают маркет-мейкеры на рынке? Рассмотрим этот вопрос и создадим примитивный алгоритм маркет-мейкинга.
preview
Нейросети — это просто (Часть 77): Кросс-ковариационный Трансформер (XCiT)

Нейросети — это просто (Часть 77): Кросс-ковариационный Трансформер (XCiT)

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

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

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

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

Продолжим внедрение новой системы ордеров. Создание такой системы требует хорошего владения MQL5, а также понимания того, как на самом деле работает платформа MetaTrader 5 и какие ресурсы она нам предоставляет.
preview
Нейросети — это просто (Часть 78): Детектор объектов на основе Трансформера (DFFT)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Нейросети — это просто (Часть 55): Контрастный внутренний контроль (CIC)

Контрастное обучение (Contrastive learning) - это метод обучения представлению без учителя. Его целью является обучение модели выделять сходства и различия в наборах данных. В данной статье мы поговорим об использовании подходов контрастного обучения для исследования различных навыков Актера.
preview
Нейросети — это просто (Часть 64): Метод Консервативного Весового Поведенческого Клонирования (CWBC)

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

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

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

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

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

В этой статье мы объясним, как разработать показатель качества, который ваш советник сможет отображать в тестере стратегии. Мы познакомимся с двумя известными методами расчета (Ван Тарп и Санни Харрис).
preview
Оптимизация и тестирование торговых стратегий (Часть 1): Взгляд на "Red Dragon H4", "BOLT", "YinYang", и "Statistics SAR"

Оптимизация и тестирование торговых стратегий (Часть 1): Взгляд на "Red Dragon H4", "BOLT", "YinYang", и "Statistics SAR"

Так как я постоянно занимаюсь, разработкой разного рода торговых систем сегодня хочу поделиться с Вами несколькими из них по стратегиям "Red Dragon H4", "BOLT", "YinYang" и "Statistics SAR". Данные стратегии были найдены на просторах интернета.
preview
Нейросети — это просто (Часть 75): Повышение производительности моделей прогнозирования траекторий

Нейросети — это просто (Часть 75): Повышение производительности моделей прогнозирования траекторий

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

Нейросети — это просто (Часть 83): Алгоритм пространственно-временного преобразователя постоянного внимания (Conformer)

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

Изучение MQL5 — от новичка до профи (Часть II): Базовые типы данных и использование переменных

Продолжение серии для начинающих. Здесь мы рассмотрим, как создавать константы и переменные, записывать дату, цвета и другие полезные данные. Научимся создавать перечисления вроде дней недели или стилей линий (сплошная, пунктирная и т.д.). Переменные и выражения - это база программирования. Они обязательно есть в 99% программ, поэтому понимать их критически важно. И поэтому, если вы - новичок в программировании - прошу. Уровень знания программирования: очень базовый - в пределах моей предыдущей статьи (ссылка - в начале).
preview
Нейросети — это просто (Часть 19): Ассоциативные правила средствами MQL5

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

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