
Алгоритм искусственного пчелиного улья — Artificial Bee Hive Algorithm (ABHA): Тестирование и результаты
В этой статье мы продолжим изучение алгоритма искусственного пчелиного улья ABHA, углубляясь в написание кода и рассматривая оставшиеся методы. Напомним, что каждая пчела в модели представлена как индивидуальный агент, чье поведение зависит от внутренней и внешней информации, а также мотивационного состояния. Мы проведем тестирование алгоритма на различных функциях и подведем итоги, представив результаты в рейтинговой таблице.

Разработка системы репликации - Моделирование рынка (Часть 11): Появление СИМУЛЯТОРА (I)
Для того, чтобы использовать данные, формирующие бары, мы должны отказаться от репликации и заняться разработкой симулятора. Мы будем использовать 1-минутные бары именно потому, что они предлагают минимальный уровень сложности.

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

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

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

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

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

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

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

Разработка системы репликации - Моделирование рынка (Часть 15): Появление СИМУЛЯТОРА (V) - СЛУЧАЙНОЕ БЛУЖДАНИЕ
В этой статье мы завершим разработку симулятора для нашей системы. Основной целью здесь будет настройка алгоритма, рассмотренного в предыдущей статье. Этот алгоритм направлен на создание движения СЛУЧАЙНОГО БЛУЖДАНИЯ. Поэтому, для понимания сегодняшнего материала, необходимо понять содержание предыдущих статей. Если вы не следили за развитием симулятора, советую посмотреть эту последовательность с самого начала. В противном случае вы можете запутаться в том, что будет здесь объяснено.

Реализация торговой стратегии на основе полос Боллинджера с помощью MQL5: Пошаговое руководство
Пошаговое руководство по реализации на MQL5 алгоритма автоматической торговли, основанной на торговой стратегии «Полосы Боллинджера». Подробное учебное пособие на основе создания советника, который может быть полезен трейдерам.

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

Разработка системы репликации - Моделирование рынка (Часть 21): ФОРЕКС (II)
Мы продолжим строить систему для работы на рынке ФОРЕКС. Поэтому для того, чтобы решить эту проблему необходимо сначала объявить загрузку тиков до загрузки предыдущих баров. Это решает проблему, но в то же время заставляет пользователя следовать некой структуре в конфигурационном файле, которая, лично для меня, не имеет особого смысла. Причина в том, что, разработав программу, которая отвечает за анализ и выполнение того, что находится в конфигурационном файле, мы можем позволить пользователю объявлять нужные ему элементы в любом порядке.

Введение в MQL5 (Часть 6): Функции для работы с массивами для начинающих (II)
Продолжим изучение возможностей языка программирования MQL5. В этой статье, предназначенной для начинающих, мы продолжим изучать функции для работы массивами, перейдя к более сложным концепциям, которые обязательно пригодятся при разработке эффективных торговых стратегий. В этот раз познакомимся с функциями ArrayPrint, ArrayInsert, ArraySize, ArrayRange, ArrarRemove, ArraySwap, ArrayReverse и ArraySort. Функции массивы знать обязательно, если вы хотите достичь высокого уровня в области алготрейдинга. Это очередная глава на пути к мастерству.

Построение модели для ограничения диапазона сигналов по тренду (Часть 5): Система уведомлений (Часть II)
В статье подробно рассматривается интеграция уведомлений индикаторов MetaTrader 5 в Telegram с использованием возможностей MQL5, Python и API Telegram Bot. Вы сможете применить полученную информацию в своих проектах.

Создание прибыльной торговой системы (Часть 1): Количественный подход
Многие трейдеры оценивают стратегии, основываясь на краткосрочных результатах, часто слишком рано отказываясь от прибыльных систем. Однако долгосрочная прибыльность зависит от положительного ожидания посредством оптимизированного Win Rate и соотношения доходности к риску (Risk-Reward), а также дисциплины при выборе размера позиции. Эти принципы можно проверить с помощью метода Монте-Карло в Python с использованием проверенных на исторических данных показателей, чтобы оценить, является ли стратегия надежной или со временем может потерпеть неудачу.

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

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

Построение модели для ограничения диапазона сигналов по тренду (Часть 9): Советник с несколькими стратегиями (II)
Количество стратегий, которые можно интегрировать в виде советника, практически безгранично. Однако каждая дополнительная стратегия увеличивает сложность алгоритма. Благодаря использованию нескольких стратегий советник может лучше адаптироваться к изменяющимся рыночным условиям, что потенциально повышает его прибыльность. Сегодня мы рассмотрим, как реализовать в MQL5 одну из выдающихся стратегий, разработанных Ричардом Дончианом, продолжая при этом совершенствовать функциональность нашего советника Trend Constraint.

Поиск с запретами — Tabu Search (TS)
В статье рассматривается алгоритм табу-поиска — один из первых и наиболее известных методов метаэвристики. Мы подробно разберем, как работает алгоритм, начиная с выбора начального решения и исследования соседних вариантов, с акцентом на использование табу-листа. Статья охватывает ключевые аспекты алгоритма и его особенности.

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

Формулировка динамического советника на нескольких парах (Часть 1): Корреляция и обратная корреляция валютных пар
Динамический советник на нескольких парах использует как корреляционные, так и обратные корреляционные стратегии для оптимизации эффективности торговли. Анализируя рыночные данные в режиме реального времени, он определяет и использует взаимосвязь между валютными парами.

Индикатор оценки силы и слабости валютных пар на чистом MQL5
Создаем профессиональный индикатор для анализа силы валют на MQL5. Пошаговое руководство научит вас разрабатывать мощный торговый инструмент с визуальной панелью для MetaTrader 5. Вы узнаете, как рассчитывать силу валютных пар по нескольким таймфреймам (H1, H4, D1), реализовывать динамическое обновление данных и создавать удобный пользовательский интерфейс.

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

Построение модели для ограничения диапазона сигналов по тренду (Часть 2): Объединение нативных индикаторов
В статье рассматривается использование встроенных индикаторов MetaTrader 5 для отсеивания нетрендовых сигналов. Продолжая предыдущую статью, мы рассмотрим, как это сделать с помощью кода MQL5, чтобы воплотить нашу идею в виде программы.

Стратегия торговли каскадами ордеров на основе пересечений EMA для MetaTrader 5
В статье представлен автоматизированный алгоритм на основе пересечений EMA для MetaTrader 5. Подробная информация обо всех аспектах демонстрации советника на языке MQL5 и его тестирования в MetaTrader 5, от анализа характеристик ценового диапазона до управления рисками.

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

Возможности Мастера MQL5, которые вам нужно знать (Часть 23): CNN
Свёрточные нейронные сети (Convolutional Neural Networks, CNNs) — ещё один алгоритм машинного обучения, который, как правило, специализируется на разложении многомерных наборов данных на ключевые составные части. Мы рассмотрим принцип его работы и исследуем возможное применение для трейдеров в очередном классе сигналов Мастера MQL5.

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

Разработка системы репликации - Моделирование рынка (Часть 14): Появление СИМУЛЯТОРА (IV)
В этой статье мы продолжим этап разработки симулятора. Однако сейчас мы увидим, как эффективно создать движение типа «СЛУЧАЙНОЕ БЛУЖДАНИЕ». Этот тип движения весьма интригующий, поскольку служит основой всего, что происходит на рынке капитала. Кроме того, мы начнем понимать некоторые концепции, основополагающие для тех, кто проводит анализ рынка.

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

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

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

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

Создание советника на MQL5 на основе стратегии Прорыва дневного диапазона (Daily Range Breakout)
В настоящей статье мы создаём советника на MQL5 на основе стратегии Прорыва дневного диапазона (Daily Range Breakout). Мы рассмотрим ключевые концепции стратегии, разработаем схему советника и реализуем логику прорыва на MQL5. В конце мы изучаем методы бэк-тестирования и оптимизации советника, чтобы максимально повысить его эффективность.

Алгоритм стрельбы из лука — Archery Algorithm (AA)
В данной статье подробно рассматривается алгоритм оптимизации, вдохновленный стрельбой из лука, с акцентом на использование метода рулетки в качестве механизма выбора перспективных областей для "стрел". Этот метод позволяет оценивать качество решений и отбирать наиболее многообещающие позиции для дальнейшего изучения.

Разработка системы репликации (Часть 28): Проект советника — класс C_Mouse (II)
Когда начали создаваться первые системы, способные что-то считать, всё потребовало вмешательства инженеров, обладающих обширными знаниями о том, что проектируется. Мы говорим о рассвете компьютерной техники, о времени, когда не было даже терминалов, позволяющих что-либо программировать. По мере развития и роста интереса к тому, чтобы большее число людей могли создавать что-либо, появлялись новые идеи и методы программирования этих машин, которые раньше сводились к изменению положения соединителей. Именно тогда появились первые терминалы.

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

Алгоритм искусственных водорослей — Artificial Algae Algorithm (AAA)
В данной статье рассматривается алгоритм искусственных водорослей (AAA), разработанный на основе биологических процессов, характерных для микроводорослей. Алгоритм включает спиральное движение, эволюционный процесс и адаптацию, что позволяет ему решать задачи оптимизации. Статья предлагает глубокий анализ принципов работы AAA и его потенциала в математическом моделировании, подчеркивая связь между природой и алгоритмическими решениями.

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