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

icon

Эксперты, созданные для платформы MetaTrader, выполняют самые разнообразные функции, задуманные их разработчиками. Торговые роботы могут отслеживать множество финансовых инструментов 24 часа в сутки, копировать сделки, создавать и отсылать отчеты, анализировать новости и даже предоставлять трейдеру собственный графический интерфейс, разработанный по его заказу.

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

Новая статья
последние | лучшие
preview
Нейросети в трейдинге: Пространственно-временная нейронная сеть (STNN)

Нейросети в трейдинге: Пространственно-временная нейронная сеть (STNN)

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

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

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

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

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

Нейросети в трейдинге: Модели пространства состояний

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

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

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

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

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

Создаем простой мультивалютный советник с использованием MQL5 (Часть 3): Префиксы/суффиксы символов и торговая сессия

Я получил комментарии от нескольких коллег-трейдеров о том, как использовать рассматриваемый мной мультивалютный советник у брокеров, использующих префиксы и/или суффиксы с именами символов, а также о том, как реализовать в советнике торговые часовые пояса или торговые сессии.
preview
Пишем первую модель стеклянного ящика (Glass Box) на Python и MQL5

Пишем первую модель стеклянного ящика (Glass Box) на Python и MQL5

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

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

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

Нейросети — это просто (Часть 90): Частотная интерполяция временных рядов (FITS)

При изучении метода FEDformer мы приоткрыли дверь в частотную область представления временного ряда. В новой статье мы продолжим начатую тему. И рассмотрим метод, позволяющий не только проводить анализ, но и прогнозировать последующие состояния в частной области.
preview
Шаблоны проектирования в MQL5 (Часть 2): Структурные шаблоны

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

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

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

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

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

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

Шаблоны проектирования в программировании на MQL5 (Часть 3): Поведенческие шаблоны 1

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

Разрабатываем мультивалютный советник (Часть 14): Адаптивное изменение объёмов в риск-менеджере

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

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

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

Теория категорий в MQL5 (Часть 4): Интервалы, эксперименты и композиции

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

Теория категорий в MQL5 (Часть 22): Другой взгляд на скользящие средние

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

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

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

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

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

Альтернативные показатели риска и доходности в MQL5

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

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

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

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

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

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

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

Нейросети в трейдинге: Иерархическое обучение признаков облака точек

Продолжаем изучение алгоритмов для извлечения признаков из облака точек. И в данной статье мы познакомимся с механизмами повышения эффективности метода PointNet.
preview
Популяционные алгоритмы оптимизации: Искусственные мультисоциальные поисковые объекты (artificial Multi-Social search Objects, MSO)

Популяционные алгоритмы оптимизации: Искусственные мультисоциальные поисковые объекты (artificial Multi-Social search Objects, MSO)

Продолжение предыдущей статьи как развитие идеи социальных групп. В новой статье исследуется эволюция социальных групп с использованием алгоритмов перемещения и памяти. Результаты помогут понять эволюцию социальных систем и применить их в оптимизации и поиске решений.
preview
Модифицированный советник Grid-Hedge в MQL5 (Часть III): Оптимизация простой хеджирующей стратегии (I)

Модифицированный советник Grid-Hedge в MQL5 (Часть III): Оптимизация простой хеджирующей стратегии (I)

В третьей части мы вернемся к советникам Simple Hedge и Simple Grid, разработанным ранее. Теперь мы займемся совершенствованием советника Simple Hedge с помощью математического анализа и подхода грубой силы (brute force) с целью оптимального использования стратегии. Эта статья углубляется в математическую оптимизацию стратегии, закладывая основу для будущего исследования оптимизации на основе кода в последующих частях.
preview
Нейросети в трейдинге: Комплексный метод прогнозирования траекторий (Traj-LLM)

Нейросети в трейдинге: Комплексный метод прогнозирования траекторий (Traj-LLM)

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

Возможности Мастера MQL5, которые вам нужно знать (Часть 09): Сочетание кластеризации k-средних с фрактальными волнами

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

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

Байесовский вывод — это применение теоремы Байеса для обновления вероятностной гипотезы по мере поступления новой информации. Это намекает на необходимость адаптации в анализе временных рядов, и поэтому мы рассмотрим, как мы могли бы использовать его при создании пользовательских классов не только применительно к сигналам, но и для управления капиталом и трейлинг-стопами.
preview
Возможности Мастера MQL5, которые вам нужно знать (Часть 10): Нетрадиционная RBM

Возможности Мастера MQL5, которые вам нужно знать (Часть 10): Нетрадиционная RBM

Ограниченные машины Больцмана (Restrictive Boltzmann Machines, RBM) представляют собой на базовом уровне двухслойную нейронную сеть, способную выполнять неконтролируемую классификацию посредством уменьшения размерности. Мы используем ее основные принципы и посмотрим что случится, если мы перепроектируем и обучим ее нестандартно. Сможем ли мы получить полезный фильтр сигналов?
preview
Разметка данных в анализе временных рядов (Часть 4): Декомпозиция интерпретируемости с использованием разметки данных

Разметка данных в анализе временных рядов (Часть 4): Декомпозиция интерпретируемости с использованием разметки данных

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

Нейросети в трейдинге: Изучение локальной структуры данных

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

Переосмысливаем классические стратегии: Нефть

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

Нейросети в трейдинге: Инъекция глобальной информации в независимые каналы (InjectTST)

Большинство современных методов прогнозирования мультимодальных временных рядов используют подход независимых каналов. Тем самым игнорируется природная зависимость различных каналов одного временного ряда. Разумное использование 2 подходов (независимых и смешанных каналов) является ключом к повышению эффективности моделей.
preview
Нейросети в трейдинге: Transformer для облака точек (Pointformer)

Нейросети в трейдинге: Transformer для облака точек (Pointformer)

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

Нейросети в трейдинге: Иерархический векторный Transformer (HiVT)

Предлагаем познакомиться с методом Иерархический Векторный Transformer (HiVT), который был разработан для быстрого и точного прогнозирования мультимодальных временных рядов.
preview
Нейросети в трейдинге: Использование языковых моделей для прогнозирования временных рядов

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

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

Построение модели ограничения тренда свечей (Часть 2): Объединение нативных индикаторов

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

Нейросети — это просто (Часть 96): Многоуровневое извлечение признаков (MSFformer)

Эффективное извлечение и объединение долгосрочных зависимостей и краткосрочных характеристик остаются важной задачей в анализе временных рядов. Правильное их понимание и интеграция необходимы для создания точных и надежных предсказательных моделей.