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

icon

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

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

Новая статья
последние | лучшие
preview
Интеграция MQL5 с пакетами обработки данных (Часть 2): Машинное обучение и предиктивная аналитика

Интеграция MQL5 с пакетами обработки данных (Часть 2): Машинное обучение и предиктивная аналитика

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

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

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

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

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

Распознавание паттернов с использованием динамической трансформации временной шкалы в MQL5

В этой статье мы обсудим концепцию динамической трансформации временной шкалы (dynamic time warping) как средства выявления прогностических закономерностей в финансовых временных рядах. Мы рассмотрим, как она работает, а также представим ее реализацию на чистом MQL5.
preview
Как функции столетней давности могут обновить ваши торговые стратегии

Как функции столетней давности могут обновить ваши торговые стратегии

В этой статье речь пойдет о функциях Радемахера и Уолша. Мы исследуем способы применения этих функций для анализа финансовых временных рядов, а также рассмотрим различные варианты их применения в трейдинге.
preview
Оптимизация наследованием крови — Blood inheritance optimization (BIO)

Оптимизация наследованием крови — Blood inheritance optimization (BIO)

Представляю вашему вниманию мой новый популяционный алгоритм оптимизации BIO (Blood Inheritance Optimization), вдохновленный системой наследования групп крови человека. В этом алгоритме каждое решение имеет свою "группу крови", определяющую способ его эволюции. Как и в природе, группа крови ребенка наследуется по особым правилам, в BIO новые решения получают свои характеристики через систему наследования и мутаций.
preview
Нейросети в трейдинге: Гибридные модели последовательностей графов (GSM++)

Нейросети в трейдинге: Гибридные модели последовательностей графов (GSM++)

Гибридные модели последовательностей графов (GSM++) объединяют сильные стороны различных архитектур, обеспечивая высокую точность анализа данных и оптимизацию вычислительных затрат. Эти модели эффективно адаптируются к динамическим рыночным данным, улучшая представление и обработку финансовой информации.
preview
Интеграция MQL5: Python

Интеграция MQL5: Python

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

Разработка системы репликации (Часть 68): Настройка времени (I)

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

Построение модели для ограничения диапазона сигналов по тренду (Часть 8): Разработка советника (I)

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

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

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

От начального до среднего уровня: Массивы и строки (II)

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

Фибоначчи на Форекс (Часть I): Проверяем отношения цены и времени

Как рынок ходит по отношениям, основанным на числах Фибоначчи? Эта последовательность, где каждое следующее число равно сумме двух предыдущих (1, 1, 2, 3, 5, 8, 13, 21...), не только описывает рост популяции кроликов. Рассмотрим гипотезу Пифагора о том, что все в мире подчиняется определенным соотношениям чисел...
preview
Переосмысливаем классические стратегии (Часть IV): SP500 и казначейские облигации США

Переосмысливаем классические стратегии (Часть IV): SP500 и казначейские облигации США

В этой серии статей мы анализируем классические торговые стратегии с использованием современных алгоритмов, чтобы определить, можно ли улучшить стратегию с помощью искусственного интеллекта (ИИ). В сегодняшней статье мы рассмотрим классический подход к торговле индексом SP500, используя его взаимосвязь с казначейскими облигациями США (US Treasury Notes).
preview
Нейросети в трейдинге: Двухмерные модели пространства связей (Chimera)

Нейросети в трейдинге: Двухмерные модели пространства связей (Chimera)

Откройте для себя инновационный фреймворк Chimera — двухмерную модель пространства состояний, использующую нейросети для анализа многомерных временных рядов. Этот метод предлагает высокую точность с низкими вычислительными затратами, превосходя традиционные подходы и архитектуры Transformer.
preview
Разработка системы репликации (Часть 67): Совершенствуем индикатор управления

Разработка системы репликации (Часть 67): Совершенствуем индикатор управления

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

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

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

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

Если мы взялись за автоматизацию проведения периодической оптимизации, то надо позаботиться и об автоматическом обновлении настроек советников, которые уже работают на торговом счёте. Также это должно позволять запускать советник в тестере стратегий и менять его настройки в рамках одного прохода.
preview
Алгоритм поиска по кругу — Circle Search Algorithm (CSA)

Алгоритм поиска по кругу — Circle Search Algorithm (CSA)

В статье представлен новый метаэвристический алгоритм оптимизации CSA (Circle Search Algorithm), основанный на геометрических свойствах окружности. Алгоритм использует принцип движения точек по касательным для поиска оптимального решения, сочетая фазы глобального исследования и локальной эксплуатации.
preview
От начального до среднего уровня: Массивы и строки (I)

От начального до среднего уровня: Массивы и строки (I)

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

Оптимизация портфеля на языках Python и MQL5

В этой статье рассмотрены передовые методы оптимизации портфеля с использованием языков Python и MQL5 на платформе MetaTrader 5. В ней демонстрируется, как разрабатывать алгоритмы для анализа данных, распределения активов и генерации торговых сигналов, подчеркивая значимость принятия решений на основе данных в современном финансовом менеджменте и снижении рисков.
preview
Анализируем двоичный код цен на бирже (Часть II): Преобразуем в BIP39 и пишем GPT модель

Анализируем двоичный код цен на бирже (Часть II): Преобразуем в BIP39 и пишем GPT модель

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

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

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

Машинное обучение и Data Science (Часть 28): Прогнозирование множества будущих значений для EURUSD

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

От начального до среднего уровня: Приоритеты операторов

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

Возможности Мастера MQL5, которые вам нужно знать (Часть 31): Выбор функции потерь

Функция потерь (Loss Function) — это ключевая метрика алгоритмов машинного обучения, которая обеспечивает обратную связь для процесса обучения, количественно определяя, насколько хорошо данный набор параметров работает по сравнению с предполагаемым целевым значением. Мы рассмотрим различные форматы этой функции в пользовательском классе Мастера MQL5.
preview
Стратегия торговли каскадами ордеров на основе пересечений EMA для MetaTrader 5

Стратегия торговли каскадами ордеров на основе пересечений EMA для MetaTrader 5

В статье представлен автоматизированный алгоритм на основе пересечений EMA для MetaTrader 5. Подробная информация обо всех аспектах демонстрации советника на языке MQL5 и его тестирования в MetaTrader 5, от анализа характеристик ценового диапазона до управления рисками.
preview
Разработка системы репликации (Часть 66): Нажатие кнопки воспроизведения в сервисе (VII)

Разработка системы репликации (Часть 66): Нажатие кнопки воспроизведения в сервисе (VII)

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

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

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

От начального до среднего уровня: Оператор FOR

В этой статье мы рассмотрим самые основные понятия оператора FOR. Всё, что будет здесь показано, нужно хорошо понять и усвоить. В отличие от других операторов, о которых мы говорили ранее, оператор FOR имеет некоторые особенности, которые быстро делают его очень сложным. Так что не позволяйте подобным материалам накапливаться. Приступайте к изучению и практике как можно скорее.
preview
Алгоритм оптимизации Ройял Флеш —  Royal Flush Optimization (RFO)

Алгоритм оптимизации Ройял Флеш — Royal Flush Optimization (RFO)

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

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

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

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

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

Разработка системы репликации (Часть 65): Нажатие кнопки воспроизведения в сервисе (VI)

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

Разработка интерактивного графического пользовательского интерфейса на MQL5 (Часть 2): Добавление элементов управления и адаптивности

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

Нейросети в трейдинге: Мультизадачное обучение на основе модели ResNeXt

Фреймворк многозадачного обучения на основе ResNeXt оптимизирует анализ финансовых данных, учитывая их высокую размерность, нелинейность и временные зависимости. Использование групповой свертки и специализированных голов позволяет модели эффективно извлекать ключевые признаки исходных данных.
preview
Биологический нейрон для прогнозирования финансовых временных рядов

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

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

От начального до среднего уровня: Оператор SWITCH

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

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

В статье описываются шаги по внедрению советника Deus на основе индикаторов RSI и скользящей средней для управления автоматической торговлей.
preview
Разработка системы репликации (Часть 64): Нажатие кнопки воспроизведения в сервисе (V)

Разработка системы репликации (Часть 64): Нажатие кнопки воспроизведения в сервисе (V)

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