Последние статьи на MQL5.com
7 часов назад
В данной статье описывается создание надежного индикатора SuperTrend на MQL5 с использованием полос на основе ATR, механизма фиксации полосы и строгого соблюдения индексации как в таймсериях, что позволяет избежать скрытых ошибок рекурсивного расчета и перерисовки на закрытых барах. Мы рассмотрим привязку буферов, управление хэндлом индикатора ATR, задание начальных значений и логику подтверждения стрелок. Сопутствующий торговый советник (EA) демонстрирует практическую интеграцию
7 часов назад
Мы расширяем фреймворк зон спроса и предложения, добавляя уровень стратегии, который преобразует взаимодействия цены с зонами в решения. Зоны, прошедшие проверку пригодности, последовательно проверяются на близость цены к зоне, характер приближения цены к зоне, согласованность с условиями старшего таймфрейма и подтверждение по моделям Price Action, после чего исполнение передается специализированному менеджеру торговли. Эта архитектура повышает управляемость, упрощает сопровождение и дальнейшее расширение системы без изменения базового механизма обработки зон.
9 часов назад
В этой статье представлен CTradeJournal — автономный класс MQL5 для отслеживания открытых позиций в реальном времени на каждом тике. Он отслеживает MAE, MFE и первоначальный риск в денежном выражении, рассчитывает R-множитель при закрытии позиции и формирует полную запись в CSV-файл. В тексте объясняются проектные решения, приводится реализация и демонстрируется простая интеграция с советником, позволяющая анализировать входы в рынок, размещение стоп-лоссов и распределение результатов.
10 часов назад
В этой статье представлена самоадаптивная скользящая средняя (SAMA) — адаптивный фильтр, использующий нормализованный алгоритм наименьших средних квадратов (NLMS). В ней рассматривается, почему скользящие средние с фиксированным периодом не справляются со своей задачей, как NLMS адаптируется бар за баром и какие инженерные меры защиты необходимы для практической эксплуатации. Эти теоретические и математические основы подготовят вас к реализации на MQL5 в Части 2.
11 часов назад
На сайте доступно более 3,500 статей
11 часов назад
Мы заменяем штатные графические объекты MetaTrader движком рисования на основе холста, который попиксельно отрисовывает инструменты на растровом слое, охватывающем весь график. В статье реализованы постоянное хранение объектов с запоминанием стиля для каждого инструмента, точная проверка попадания, выделение, перетаскивание объекта целиком и управление маркерами. Также добавлены новые инструменты рисования линий, переработанная система категорий с действием удаления одним щелчком и предпросмотр с растягиваемым контуром для размещения несколькими щелчками.
11 часов назад
Разбираем алгоритм Genetic Programming (GP) — классический метод, который выращивает не числа, а формулы. Почему знаменитый алгоритм в каноническом виде проигрывает обычному случайному поиску во всех тестах, и какая одна строка возвращает ему силу? Ответ касается любого оптимизатора с пропорциональным отбором. В конце статьи — готовый код GP на MQL5, который можно сразу использовать для своих задач.
12 часов назад
При прямом переносе детектора фракталов на MQL5 каждый паттерн записывается на центральном баре, поэтому буфер, считываемый советником (EA), содержит значение, которое стало доступно лишь на n баров позже. Мы реализуем CFractalFeatures.mqh с методом ProcessBar для побарной обработки и методом Compute для пересчёта всего ряда; реализация включает обнаружение фракталов, оценку их силы относительно фиксированного или масштабируемого по волатильности минимального порога силы, кольцевой буфер событий для уровней поддержки и сопротивления, а также сигналы пробоя с фильтрацией по тренду. Результат — восемнадцать буферов, значения в которых публикуются на баре подтверждения и проверены на соответствие эталонной реализации на Python с точностью до 1e-13.
12 часов назад
В этой статье описывается создание полнофункционального торгового советника на MQL5, реализующего исходные правила торговой системы «Черепах», опубликованные Куртисом Фейсом. В статье рассматриваются обе системы: пробои 20/55-дневных уровней, правило пропуска сигнала Системы 1, величина N (ATR со сглаживанием Уайлдера) для расчета объема позиции с учетом волатильности, пирамида позиций из четырех торговых единиц с добавлением торговой единицы через каждые N/2, единый стоп-лосс на расстоянии 2N и выходы по 10/20-дневным уровням. Вы получите компилируемый код, подробности реализации и процедуру тестирования на исторических данных по паре EURUSD.
Сегодня
Мы реализуем три класса MQL5, которые заменяют фиксированные целевые уровни 1R/2R/3R на уровни поэтапного закрытия, определяемые на основе данных. CExcursionTracker фиксирует максимальное благоприятное отклонение (MFE) в единицах R для каждой закрытой позиции, CExitLadderCalibrator формирует ступени на основе процентилей распределения с учетом окна ретроспективного анализа и минимального числа наблюдений, а CLadderExecutor выполняет закрытие на этих ступенях для открытых позиций. Лестница выхода перекалибруется по мере накопления закрытых позиций. Пока наблюдений недостаточно, используется резервная лестница выхода.
Сегодня
В статье библиотека анализа рекуррентности на MQL5 расширяется средствами анализа рекуррентных сетей (RNA): матрицы рекуррентности рассматриваются как матрицы смежности неориентированных графов. В ней реализованы основные сетевые метрики — кластеризация, транзитивность, средняя длина пути, посредничество, ассортативность и плотность, — которые применяются в скользящих окнах для анализа рекуррентных сетей (RNA) одного временного ряда и совместного анализа рекуррентных сетей (JRNA). Модульный механизм расчета метрик и два индикатора позволяют визуализировать динамику структуры сети на графиках MetaTrader 5 для практического анализа временных рядов.
Вчера
В этой статье мы строим практически применимый индекс шероховатости на основе теории шероховатой волатильности, оценивая локальное значение H с помощью регрессии по структурной функции на доходностях, агрегированных по блокам, — и всё это средствами MQL5. Мы объединяем его с признаками волатильности волатильности, обучаем классификатор на основе градиентного бустинга в Python, экспортируем модель в формат ONNX и вызываем её из торгового советника. Вы сможете вычислять H на каждом баре и использовать модель в качестве фильтра входа, учитывающего рыночный режим.
Вчера
Стандартные HMM предполагают, что длительности состояний имеют геометрическое распределение со свойством отсутствия памяти, что плохо соответствует реальным рыночным фазам. В этой статье скрытая полумарковская модель (HSMM) с явным учетом длительности реализуется непосредственно на MQL5: для каждого состояния задается распределение времени пребывания в состоянии, а для фильтрации используется прямой фильтр по оставшейся длительности. Параметры оцениваются вне торговой среды с помощью алгоритма ожидания-максимизации (EM) и загружаются через компактный манифест в формате JSON. Торговый советник (EA) для XAUUSD на таймфрейме M5 использует ожидаемую оставшуюся длительность для фильтрации торговых решений о входе и выходе, что помогает удерживать позиции по тренду и избегать запоздалых входов перед завершением рыночного режима.
Вчера
Оценка по ценам закрытия не учитывает максимумы, минимумы и межсессионные ценовые разрывы. Мы создадим библиотеку MQL5 для повторного использования, реализующую четыре способа оценки волатильности на основе ценового диапазона — от способа Паркинсона до устойчивого к ценовым разрывам способа оценки Янга—Чжана, — и применим её в сравнительном индикаторе и наборе адаптивных полос волатильности.
Вчера
В статье рассматривается конвейер для конструирования признаков на основе пятибарного фрактала Вильямса и показывается, как центрированное скользящее окно приводит к реальной утечке будущей информации. В статье выявлены две дополнительные скрытые ошибки — жестко заданный сдвиг, привязанный к значению n по умолчанию, и порог волатильности, игнорирующий переданное значение, — а исправления объединены под единым флагом leak_safe. Читатели получат фрактальные признаки, признаки уровней, тренда и сигналов без утечки будущей информации, а также рекомендации о том, в каких случаях столбцы без сдвига остаются пригодными для разметки.
Вчера
Выборочные корреляционные матрицы могут казаться точными, но при этом в основном состоять из шума. В этой статье реализован алгоритм подавления шума на основе RMT на языке MQL5 без внешних зависимостей: спектральное разложение методом Якоби, отбор собственных значений по распределению Марченко — Пастура и восстановление матрицы с заменой шумовых собственных значений их средним, сохраняющее след матрицы и единичную диагональ. В статье объясняется, как интегрировать этот алгоритм в советник для торговли корзиной инструментов, чтобы очищенная матрица повышала стабильность коэффициентов хеджирования и весов между ребалансировками, а код оставался переносимым и доступным для аудита.
Вчера
Нарисованные вручную аналитические объекты, такие как инструменты Фибоначчи и вилы Эндрюса, не видны автоматизированной торговой логике. В статье предлагается расширение базового детектора, позволяющее извлекать опорные точки, массивы уровней и геометрические смещения из сложных объектов. Вам предстоит реализовать многократно используемый сборщик, который нормализует необработанные данные графика, преобразуя их в структурированные массивы в памяти для принятия решений в рамках торговой стратегии.
Вчера
На сайте доступно более 3,490 статей
Вчера
Пошаговое руководство по созданию изолирующего леса (Isolation Forest), реализованного непосредственно на MQL5 и ориентированного на показатели исполнения, а не на цену. В руководстве подробно описаны пять признаков, построение деревьев и расчет оценки аномальности по длине пути, обучение на скользящем окне, ведение CSV-журнала, а также сохранение и восстановление модели с использованием FILE_COMMON. Все это интегрировано в OnTradeTransaction(). Полученный механизм защитной остановки торговли (circuit breaker) в реальном времени выявляет необычные исполнения заявок и применяет контролируемые меры реагирования, чтобы стабилизировать реальную торговлю при изменении условий исполнения.
Вчера
В данной статье представлен TrendTemplateEA — советник, реализующий трендовый шаблон Марка Минервини из восьми условий для дневных графиков Forex. Он проверяет все условия на каждом баре и входит в рынок только при их одновременном выполнении, используя условие превышения индексом относительной силы (RSI) уровня 50 вместо рейтинга относительной силы (RS) фондового рынка. Сигнал входа — пробой максимума за 20 баров на фоне растущего объема; все правила реализованы в коде MQL5 и могут быть протестированы.
Вчера
В этой статье основное внимание уделяется архитектуре торгового советника, а не разработке торговых сигналов. Взяв за основу советник с недостатками, использующий пересечение скользящих средних, мы добавляем определение появления нового бара для предотвращения повторных входов, магический номер и учет открытых позиций, уровни стоп-лосса и тейк-профита, рассчитываемые на основе ATR, а также проверку данных и результатов торговых операций и базовые защитные механизмы. Вы получаете практическую базу для создания и тестирования сложных систем.
2026.11.08
Самые читаемые статьи за неделю
Сравнение MQL5 и QLUA - почему торговые операции в MQL5 до 28 раз быстрее?
Многие трейдеры зачастую не задумываются над тем, как быстро доходит их заявка до биржи, как долго она там исполняется, и когда наконец-то торговый терминал трейдера узнает о результате торговой операции. Мы обещали дать сравнение скорости торговых операций, ведь никто до нас не делал таких замеров с помощью программ на MQL5 и QLUA.
MetaTrader 5 на Linux
В этой статье расскажем, как легко установить MetaTrader 5 в популярных версиях Linux — Ubuntu и Debian. Эти системы широко используются не только на серверном оборудовании, но и на обычных компьютерах трейдерами.
Как купить торгового робота в MetaTrader Market и установить его?
Каждый продукт в Маркете MetaTrader можно купить и через торговые платформы MetaTrader 4 и MetaTrader 5, и прямо на сайте MQL5.com. Выберите продукт, который лучше всего подходит под ваш стиль работы, оплатите его удобным для вас способом и не забудьте активировать.
2026.11.06
В статье подробно описан производитель Kafka, реализованный непосредственно на MQL5 и использующий сетевой протокол Kafka через TCP-сокеты без дополнительных библиотек. Он реализует кодирование RecordBatch v2, varint и вычисление CRC32C, а также пакетную отправку, подтверждения (acks) и логику повторных попыток — и всё это без вспомогательного процесса или DLL. Используйте его для публикации торговых сигналов в формате JSON из одного терминала в Kafka, где информационные панели и другие сервисы подписываются на них независимо друг от друга.
2026.11.06
Мы исследуем, как скрытая марковская модель (HMM) оценивает скрытые рыночные режимы на основе наблюдаемых последовательностей цен и значений индикаторов. Это достигается путем оценки вероятности переходов между состояниями. Сеть на основе управляемого рекуррентного блока (GRU) моделирует временные зависимости и сохраняет важную информацию на протяжении нескольких наблюдений. В советнике вероятности рыночных режимов, рассчитанные с помощью HMM, можно использовать совместно с обучением сети GRU на последовательностях, чтобы точнее классифицировать изменения в накоплении, распределении и импульсе еще до появления стандартных ценовых подтверждений.
2026.11.06
Мы представляем фильтр допуска для сигналов ONNX на основе сертифицированного радиуса, реализованный непосредственно на MQL5. Система оценивает устойчивость каждого прогноза с помощью рандомизированного сглаживания и односторонней границы Клоппера — Пирсона, а затем использует полученный радиус для допуска к сделкам, масштабирования объема в лотах и мониторинга. Это дает практически применимую оценку запаса устойчивости, которая отражает допустимый уровень шума во входных данных, а не величину значения softmax.
2026.11.06
Завершаем адаптацию фреймворка Habi для алгоритмической торговли с использованием MQL5 и OpenCL. Рассматриваем построение моделей, подготовку эталонных действий на истории и офлайн-обучение. Показываем, как критик учится оценивать денежные последствия торговых решений и как его оценки используются для обновления политики в режиме имитации онлайн-торговли. На примере EURUSD H1 за январь–апрель 2026 года разбираем проверку готовых моделей и ограничения полученных результатов.
2026.11.06
В этой статье мы обосновываем целесообразность объединения картирования дивергенций с имитационной моделью на основе TFT. Основная идея картирования дивергенций состоит в том, чтобы не полагаться на запаздывающие подтверждения со стороны цены, а использовать метод как структурный датчик, помогающий выявлять скрытые изменения импульса по движению цены и аномалиям индикаторов. Чтобы определить, как эти аномалии интерпретируются с течением времени, мы используем упрощенную модель TFT. Эта сеть учитывает исторический контекст при оценке формирующихся трендов, поэтому ее объединение с картированием дивергенций должно позволить нам выявлять изменения в накоплении и распределении еще до ценовых пробоев.
2026.11.06
Мы перенесли тесты на структурные сдвиги из главы 17 AFML в MQL5 в виде единого подключаемого файла CStructuralBreaks, предоставляющего советникам шесть признаков, индексируемых по барам: статистику CSW и ее критическое значение, тест Дики — Фуллера типа Чоу (DFC), SADF со скользящим окном с заданной глубиной истории (по умолчанию 252 бара), SM-Exp и SM-Power. В SADF используются скользящие окна с вычислительной сложностью O(L²), что позволяет выполнять расчеты в реальном времени. Сопутствующий индикатор StructuralBreaksViewer строит графики всех рядов данных с возможностью настройки видимости каждого ряда и опциональной нормализацией по z-оценке. SB_EMPTY отмечает недопустимые значения для обеспечения безопасной интеграции.
2026.11.06
Мы проверяем утверждение AFML о том, что последовательный бутстрэп снижает корреляцию между деревьями в ансамбле бэггинга на метках метода тройного барьера с перекрывающимися временными интервалами, раздельно исследуя два фактора: число наблюдений в выборке и правило отбора. Бэггинг с одной и той же базовой моделью — деревом решений — применяется в четырёх режимах формирования выборки строк и оценивается на данных EURUSD за 2022–2023 годы по уникальности сформированных выборок, корреляции между деревьями, AUC и калибровке вероятностных прогнозов. Снижение корреляции почти полностью достигается за счёт ограничения max_samples до уровня средней уникальности; последовательный бутстрэп даёт лишь небольшой дополнительный эффект. Завышение OOB-оценки наиболее выражено при последовательном бутстрэпе с полным числом извлечений.
2026.11.06
Мы создаем индикатор «Профиль объема на уровнях поддержки и сопротивления (SnR)», который адаптируется к текущей видимой области графика в MetaTrader 5. Вы изучите методы определения видимой области графика, динамическую идентификацию SnR, изменение количества ценовых интервалов в зависимости от масштаба, масштабирование объёма в диапазоне от минимума до максимума, а также быструю отрисовку на графике, управляемую событием OnChartEvent. Данный подход отражает относительную значимость уровней SnR в зависимости от объема, позволяя сосредоточить внимание на графике на зонах, где возможны значимые ценовые реакции.
2026.11.05
Исследуется прогноз следующего часового движения EURUSD H1 на длинной истории. Сравнивается исходное ценовое уравнение с простейшим ориентиром, после чего задача переносится на направление и величину следующего изменения с хронологическим разделением данных. Отдельно анализируется переход 23:00→00:00 и его поведение на 100 последовательных двухмесячных участках вне обучения. Читатель получает воспроизводимую схему подготовки данных и отбора сигналов по уверенности.
2026.11.05
В MetaTrader 5 отсутствует встроенный инструмент для визуализации внутридневных закономерностей доходности одновременно по нескольким временным измерениям. В данной статье реализован пользовательский индикатор, который собирает данные о доходности исторических баров в матрицу размером 5×24, индексированную по дням недели и часам суток. Затем индикатор отрисовывает результат в виде тепловой карты с цветовой интерполяцией в подокне индикатора с помощью CCanvas. Зеленые ячейки обозначают положительную среднюю доходность, красные — отрицательную, причем интенсивность цвета отражает величину доходности.
2026.11.05
На сайте доступно более 3,470 статей
2026.11.05
Мы реализуем интерактивный мультитаймфреймовый (MTF) профиль объема с якорной привязкой на языке MQL5 для MetaTrader 5. Индикатор строит профиль текущего таймфрейма на основном графике и профиль старшего таймфрейма (HTF) в подокне индикатора; оба профиля согласованы по положению общей линии с якорной привязкой и видимому диапазону. Вы освоите настройка количества ценовых интервалов (бинов) профиля с помощью клавиатуры (двойное нажатие клавиши E или S), надежную проверку таймфреймов, обновления с учетом видимой области графика и восстановление графических объектов, чтобы организовать надежную, синхронизированную работу с объемами.
2026.11.05
Мы представляем реализацию тестов на структурные сдвиги из главы 17 AFML, готовую для использования в реальных системах. Модуль включает тест Чу — Стинчкомба — Уайта (односторонний и двусторонний варианты), тест Дики — Фуллера типа Чоу (DFC), SADF для шести моделей (линейная, квадратичная, sm poly 1, sm poly 2, sm exp, sm power), а также квантильную статистику ADF (QADF) с параметрами q и v и условное среднее ADF (CADF) с параметром q; результаты возвращаются в виде скалярных признаков с индексацией по барам. Мы устраняем проблемы масштабируемости фрагментов кода из книги и ошибку, связанную с порядком аргументов, а также показываем, как фиксированная глубина ретроспективы (L=504) ограничивает вычислительную сложность SADF величиной O(L²) на бар при выявлении рыночных режимов.
2026.11.05
В статье описывается и приводится код стратегии MR Swing на языке MQL5 — это подход к свинг-трейдингу на основе возврата к среднему значению, сочетающий 200-дневный канал гистерезиса с индикаторами Value Chart (график стоимости), DVO и SVAPO. Мы описываем правила входа в позиции и выхода из них для бычьего и медвежьего режимов и приводим результаты пятилетнего бэктестирования на шести высоколиквидных акциях, котирующихся на Nasdaq. Для обеспечения воспроизводимости результатов предоставляются полный код советника и настройки бэктестирования.
2026.11.05
Мы реализуем фильтры цифровой обработки сигналов (ЦОС) по методам Элерса в единой библиотеке MQL5, пригодной для многократного использования, и на ее основе создадим два индикатора. В Roofing Filter за двухполюсным фильтром верхних частот (ФВЧ) следует Super Smoother, что позволяет выделить диапазон периодов 10–48 баров, пригодный для торговли. Even Better Sinewave нормирует сигнал примерно до диапазона ±1: в циклических рыночных режимах он колеблется, а при трендах удерживается у предельного уровня, что позволяет анализировать циклы и выявлять смены рыночного режима на графиках и в советниках.
2026.11.05
В этой статье мы совершенствуем систему управления зонами спроса и предложения с отслеживаемым состоянием для MetaTrader 5, заменяя опрос событийно-ориентированной моделью на основе OnChartEvent(). Мы распределяем задачи синхронизации между отдельными обработчиками создания, изменения и удаления, а также отделяем рыночную логику в OnTick() от обработки действий пользователя в OnChartEvent(). Компонент журналирования в формате CSV с долговременным хранением и режимом только с добавлением записей фиксирует все события жизненного цикла, улучшая скорость отклика, согласованность состояний и возможность восстановления истории для последующего анализа.
2026.11.05
Благодаря облегченной архитектуре системы сохранения данных торговые советники (EA) могут сохранять счетчики, флаги и временные метки между перезапусками терминала. Используя только средства MQL5, CPersistentStore записывает удобочитаемый файл формата key=value в папку MQL5/Files и обслуживает запросы на чтение из кэша со сквозной записью на основе CHashMap через типизированный API. В статье анализируются операции со сложностью O(1) и O(n), риски неполной записи и отсутствие блокировки файлов, проводится сравнение с глобальными переменными терминала (GlobalVariables) и SQLite, а также приводится демонстрационный пример с детерминированной повторной загрузкой состояния.
2026.11.05
В этой статье представлен фреймворк разрешения торговли на MQL5, построенный на основе классов CDisciplineLayer, CDisciplineGuardian и CDisciplinePanel. Этот фреймворк управляет жизненными циклами сетапов, актуальностью сигналов, ограничениями торговых сессий, истечением срока действия сетапов и глобальными блокировками торговли через централизованный уровень разрешения торговли. Он также обеспечивает автоматическое принудительное соблюдение правил при выявлении нарушений и предоставляет информационную панель, работающую в режиме реального времени, что позволяет единообразно проверять и отслеживать торговые операции до и после их исполнения.
2026.11.04
Мы расширяем программную основу управления зонами спроса и предложения с сохранением состояния для MetaTrader 5, добавляя количественную модель допуска зон в систему и специализированный механизм взаимодействия цены с зонами. Зоны-кандидаты получают балльную оценку по структурной симметрии, объемной активности участников рынка и смещению, нормированному по ATR, а затем распределяются по категориям качества на основе объективных критериев. Допущенные в систему зоны проходят детерминированный жизненный цикл, в ходе которого отслеживается первое касание, проверяются отскоки или подтверждаются пробои; при этом собирается полная телеметрия для анализа и обеспечения воспроизводимости.
2026.11.04
Реализация на MQL5 четырех методов оценки энтропии — энтропии Шеннона, подстановочной оценки энтропии (Plug-In), сложности Лемпеля — Зива и энтропии Контоянниса — для последовательности, полученной по тиковому правилу внутри бара. CopyTicksRange() ограничивает доступные данные окном тикового кеша брокера, поэтому признаки можно рассчитывать только для недавних баров. В реализации тики из структуры MqlTick кодируются по направлению изменения цены Bid, операции, зависящие от NumPy, заменяются методами работы с массивами, а для использования в советниках и индикаторах предоставляются файлы CEntropyFeatures.mqh и EntropyViewer.mq5.
2026.11.04
Мы реализуем в MQL5 индикатор EquiVolume, который преобразует стандартные свечи в прямоугольники, ширина которых определяется объёмом торгов. Процесс включает выбор типа объёма, определение максимального объёма в диапазоне обратного просмотра, нормализацию всех значений относительно него и преобразование их в пропорциональную ширину прямоугольников. В результате на графике в MetaTrader 5 формируется структура, которая наглядно отображает интенсивность торговой активности наряду с движением цены.
2026.11.04
В статье реализованы каналы скользящей регрессии методом МНК на языке MQL5 и рассчитываются доверительные и прогнозные полосы с использованием критических значений t-распределения Стьюдента вместо фиксированного множителя стандартного отклонения. В ней объясняется расширение полос по краям окна, обусловленное рычагом наблюдения, полученный результат сравнивается с полосами Боллинджера и каналами Дончиана, а также рассматриваются предпосылки МНК применительно к ценовым данным. Описан способ отрисовки с использованием пяти линий, обеспечивающий надежное отображение в MetaTrader 5.
2026.11.04
На сайте доступно более 3,460 статей
2026.11.04
Продолжаем торговую адаптацию фреймворка Habi на MQL5 с использованием OpenCL. Разбираем реализацию выходных слоёв Decoder и Critic, передачу общих параметров латентного распределения вместе с пакетом торговых действий и подготовку обучающих сигналов по эталону, историческим результатам и TD-цели. Показываем, как объединяются прямой градиент критика и сигнал, прошедший через декодер и латентную выборку. Это позволяет подготовить компоненты к последующей сборке и обучению торговой модели.
2026.11.04
В этой статье описывается пользовательский класс управления капиталом CMoneyKDTreeESN, совместимый с Мастером MQL5 и объединяющий алгоритм KD-дерева и эхо-сеть (ESN). Мы применяем KD-дерево к логарифмическим доходностям и ATR (среднему истинному диапазону), чтобы получить оценку риска, а ESN отслеживает недавнюю рыночную динамику и выдает множитель объема позиции с ограниченным диапазоном значений. Наш класс можно использовать в различных советниках, созданных с помощью Мастера MQL5, как показано здесь на примере сигналов Envelopes и RSI; общая цель — регулировать рисковую экспозицию в условиях высокой волатильности и хвостового риска.
2026.11.04
В статье выявляются два дефекта, которые сводят на нет эффект последовательного бутстрэпа при перекрестной проверке: стирание типа SequentiallyBootstrappedBaggingClassifier и несоответствие размерностей на уровне фолда из-за клонирования полного набора информационных интервалов наблюдений. Предлагаемое исправление сохраняет принадлежность классификатора к исходному классу, добавляет функцию _find_seq_bagging() для повторной передачи в CalibratorCV.fit данных t1, ограниченных текущим фолдом, и сбрасывает состояние при каждом разбиении. Новый модуль bootstrap_comparison выводит OOF-метрики и на наблюдениях вне бутстрэп-выборки (OOB), а также данные об использовании памяти, позволяя проверить правильность применения последовательного отбора и количественно оценить его влияние.
2026.11.04
Мультитаймфреймовые торговые советники, которые инициализируют все хэндлы индикаторов в OnInit(), несут фиксированные затраты на запуск, даже если большинство хэндлов никогда не используется. CIndicatorCache использует отложенную загрузку с поиском по составному ключу, методы получения/освобождения AcquireHandle() и ReleaseHandle() с подсчетом ссылок и детерминированный метод FlushAll() для полной очистки кэша. Хэндлы создаются при первом запросе и повторно используются на последующих тиках, что сокращает задержку при запуске, позволяет избежать повторного выделения памяти в куче и предотвращает утечки ресурсов терминала благодаря централизованному владению ресурсами.
2026.11.04
Вложенные условные конструкции if-else внутри функции OnTick() создают неявные состояния, которые сложно изолировать, отлаживать и расширять без возникновения регрессионных ошибок. Реализация конечного автомата (FSM) на MQL5 использует интерфейс IState, посредник CStrategyContext и четыре конкретных состояния, чтобы отделить логику обнаружения от логики поведения. Структура из трёх подключаемых файлов устраняет циклические зависимости подключаемых файлов и чётко разделяет объявления, определения и создание экземпляров, делая внесение изменений безопаснее, а отладку — быстрее.