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

icon

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

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

Новая статья
последние | лучшие
preview
Анализ нескольких символов с помощью Python и MQL5 (Часть 3): Треугольные курсы валют

Анализ нескольких символов с помощью Python и MQL5 (Часть 3): Треугольные курсы валют

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

Нейросети в трейдинге: Интеграция теории хаоса в прогнозирование временных рядов (Attraos)

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

Управление рисками (Часть 1): Основы построения класса по управлению рисками

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

Как упростить ручное тестирование стратегий с помощью MQL5: строим свой набор инструментов

В этой статье разрабатываем пользовательский набор инструментов MQL5 для удобного ручного тестирования на исторических данных в Тестере стратегий. Объясним его конструкцию и реализацию, уделив особое внимание интерактивным средствам управления сделками. Затем покажем, как использовать его для эффективного тестирования стратегий
preview
Универсальная формула оптимизации (GOF) при реализации режима Custom Max с ограничениями

Универсальная формула оптимизации (GOF) при реализации режима Custom Max с ограничениями

В статье представлен способ реализации задач оптимизации с несколькими целями и ограничениями при выборе режима Custom Max в настройках терминала MetaTrader 5. Например, задача оптимизации может быть следующей: максимизировать фактор прибыли, чистую прибыль и фактор восстановления таким образом, чтобы просадка была менее 10%, количество последовательных убытков было менее 5, а количество сделок в неделю было более 5.
preview
Теория категорий в MQL5 (Часть 22): Другой взгляд на скользящие средние

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

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

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

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

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

При возникновении необходимости вывести текстовую информацию на график мы можем воспользоваться функцией Comment(). Но её возможности достаточно сильно ограничены. Поэтому, в рамках этой статьи, мы создадим собственный компонент — диалоговое окно на весь экран, способное выводить многострочный текст с гибкими настройками шрифта и поддержкой прокрутки.
preview
Алгоритм атомарного орбитального поиска — Atomic Orbital Search (AOS)

Алгоритм атомарного орбитального поиска — Atomic Orbital Search (AOS)

В статье рассматривается алгоритм AOS (Atomic Orbital Search), который использует концепции атомной орбитальной модели для моделирования поиска решений. Алгоритм основывается на вероятностных распределениях и динамике взаимодействий в атоме. В статье подробно обсуждаются математические аспекты AOS, включая обновление положений кандидатов решений и механизмы поглощения и выброса энергии. AOS открывает новые горизонты для применения квантовых принципов в вычислительных задачах, предлагая инновационный подход к оптимизации.
preview
Отправка сообщений из MQL5 в Discord, создание бота Discord-MetaTrader 5

Отправка сообщений из MQL5 в Discord, создание бота Discord-MetaTrader 5

Подобно Telegram, Discord способен получать информацию и сообщения в формате JSON, используя свои коммуникационные API. В настоящей статье мы рассмотрим, как можно использовать API Discord для отправки торговых сигналов и обновлений из MetaTrader 5 в ваше торговое сообщество Discord.
preview
Нейронная сеть на практике: Метод наименьших квадратов

Нейронная сеть на практике: Метод наименьших квадратов

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

Нейросети в трейдинге: Сквозная многомерная модель прогнозирования временных рядов (Окончание)

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

Перестановка ценовых баров в MQL5

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

Создаем интерактивную MQL5-панель с использованием класса Controls (Часть 1): Настройка панели

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

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

В этой статье мы начнем делать то, что хотелось сделать гораздо раньше. Однако из-за отсутствия "твердой почвы" я не чувствовал себя уверенно, чтобы представить вопрос публично. Теперь у меня есть основа для того, чтобы делать то, что мы начнем сейчас. Неплохо бы максимально сосредоточиться на понимании содержания этой статьи, и я говорю это не для того, чтобы вы просто это прочитали. Я хочу подчеркнуть, что если вы не поймете данную статью, то можете полностью отказаться от надежды понять содержание следующих статей.
preview
Алгоритм миграции животных — Animal Migration Optimization (AMO)

Алгоритм миграции животных — Animal Migration Optimization (AMO)

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

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

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

Разработка инструментария для анализа движения цен (Часть 7): Советник Signal Pulse

Раскройте потенциал мультитаймфреймового анализа с помощью Signal Pulse — MQL5-советника, который объединяет полосы Боллинджера и стохастический осциллятор для предоставления точных торговых сигналов с высокой вероятностью возникновения. Узнайте, как реализовать эту стратегию и эффективно визуализировать возможности покупки и продажи с помощью стрелок. Советник идеально подходит для трейдеров, стремящихся улучшить свои решения посредством автоматического анализа на нескольких таймфреймах.
preview
Разработка инструментария для анализа движения цен (Часть 11): Советник Heikin Ashi Signal

Разработка инструментария для анализа движения цен (Часть 11): Советник Heikin Ashi Signal

MQL5 предлагает безграничные возможности для разработки автоматизированных торговых систем, отвечающих вашим предпочтениям. Знаете ли вы, что он даже может выполнять сложные математические вычисления? В этой статье мы представим японский метод Heikin Ashi (Хейкен Аши) в виде автоматизированной торговой стратегии.
preview
Нейросети в трейдинге: Иерархия навыков для адаптивного поведения агентов (Окончание)

Нейросети в трейдинге: Иерархия навыков для адаптивного поведения агентов (Окончание)

В статье рассматривается практическая реализация фреймворка HiSSD в задачах алгоритмического трейдинга. Показано, как иерархия навыков и адаптивная архитектура могут быть использованы для построения устойчивых торговых стратегий.
preview
DoEasy. Элементы управления (Часть 28): Стили полосы в элементе управления "ProgressBar"

DoEasy. Элементы управления (Часть 28): Стили полосы в элементе управления "ProgressBar"

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

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

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

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

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

Нейросети в трейдинге: Гиперболическая модель латентной диффузии (HypDiff)

Статья рассматривает способы кодирования исходных данных в гиперболическом латентном пространстве через анизотропные диффузионные процессы. Это помогает точнее сохранять топологические характеристики текущей рыночной ситуации и повышает качество ее анализа.
preview
Разработка системы репликации (Часть 28): Проект советника — класс C_Mouse (II)

Разработка системы репликации (Часть 28): Проект советника — класс C_Mouse (II)

Когда начали создаваться первые системы, способные что-то считать, всё потребовало вмешательства инженеров, обладающих обширными знаниями о том, что проектируется. Мы говорим о рассвете компьютерной техники, о времени, когда не было даже терминалов, позволяющих что-либо программировать. По мере развития и роста интереса к тому, чтобы большее число людей могли создавать что-либо, появлялись новые идеи и методы программирования этих машин, которые раньше сводились к изменению положения соединителей. Именно тогда появились первые терминалы.
preview
Разработка системы репликации - Моделирование рынка (Часть 14): Появление СИМУЛЯТОРА (IV)

Разработка системы репликации - Моделирование рынка (Часть 14): Появление СИМУЛЯТОРА (IV)

В этой статье мы продолжим этап разработки симулятора. Однако сейчас мы увидим, как эффективно создать движение типа «СЛУЧАЙНОЕ БЛУЖДАНИЕ». Этот тип движения весьма интригующий, поскольку служит основой всего, что происходит на рынке капитала. Кроме того, мы начнем понимать некоторые концепции, основополагающие для тех, кто проводит анализ рынка.
preview
Визуальная оценка и корректировка торговли в MetaTrader 5

Визуальная оценка и корректировка торговли в MetaTrader 5

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

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

В этой статье мы продолжаем рассматривать популярные торговые индикаторы под новым углом. Мы собираемся обрабатывать горизонтальную композицию естественных преобразований. Лучшим индикатором для этого является двойная экспоненциальная скользящая средняя (Double Exponential Moving Average, DEMA).
preview
Как разработать агент обучения с подкреплением на MQL5 с интеграцией RestAPI (Часть 4): Организация функций в классах в MQL5

Как разработать агент обучения с подкреплением на MQL5 с интеграцией RestAPI (Часть 4): Организация функций в классах в MQL5

В данной статье рассматривается переход от процедурного написания кода к объектно-ориентированному программированию (ООП) в MQL5 с упором на интеграцию с REST API. Сегодня мы обсуждаем организацию функций HTTP-запросов (GET и POST) в классы и подчеркнем такие преимущества, как инкапсуляция, модульность и простота обслуживания. Подробно рассмотрим рефакторинг кода и покажем замену изолированных функций методами класса. Статья содержит практические примеры и тесты.
preview
Переосмысливаем классические стратегии (Часть II): Пробои индикатора Bollinger Bands

Переосмысливаем классические стратегии (Часть II): Пробои индикатора Bollinger Bands

В статье рассматривается торговая стратегия, объединяющая линейный дискриминантный анализ (Linear Discriminant Analysis, LDA) с полосами Боллинджера с использованием прогнозов категориальных зон для стратегических сигналов входа в рынок.
preview
Оптимизация африканскими буйволами — African Buffalo Optimization (ABO)

Оптимизация африканскими буйволами — African Buffalo Optimization (ABO)

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

Добавляем пользовательскую LLM в торгового робота (Часть 5): Разработка и тестирование торговой стратегии с помощью LLM(IV) — Тестирование торговой стратегии

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

Биологический нейрон для прогнозирования финансовых временных рядов

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

Осваиваем JSON: Разработка пользовательского JSON-ридера с нуля на MQL5

В статье приведено пошаговое руководство по созданию пользовательского парсера JSON на языке MQL5, включающего обработку объектов и массивов, проверку ошибок и сериализацию. Вы сможет объединить торговую логику и структурированные данные с помощью гибкого решения для обработки JSON в MetaTrader 5.
preview
Алгоритм дуэлянта — Duelist Algorithm

Алгоритм дуэлянта — Duelist Algorithm

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

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

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

Нейросети в трейдинге: Адаптивное обнаружение рыночных аномалий (DADA)

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

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

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

Управление капиталом в трейдинге и программа домашней бухгалтерии трейдера с базой данных

Как трейдеру управлять капиталом? Как трейдеру и инвестору вести учет расходов, доходов, активов и пассивов? Я представлю вам не просто программу для учета, я покажу вам инструмент, который может стать вашим надежным финансовым навигатором в бурном море трейдинга.
preview
Разработка системы репликации - Моделирование рынка (Часть 12): Появление СИМУЛЯТОРА (II)

Разработка системы репликации - Моделирование рынка (Часть 12): Появление СИМУЛЯТОРА (II)

Разработка симулятора может оказаться гораздо интереснее, чем кажется. Сегодня мы сделаем еще несколько шагов в этом направлении, потому что всё становится интереснее.