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

icon

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

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

Новая статья
последние | лучшие
preview
От начального до среднего уровня: Указатель на функцию

От начального до среднего уровня: Указатель на функцию

Вы, вероятно, уже слышали о указателях, когда речь заходит о программировании. А вы знали, что мы можем использовать данные такого типа здесь, в MQL5? Это, конечно, должно быть сделано так, чтобы мы не теряли контроль и не вызывали странного поведения программы во время её выполнения. Тем не менее, поскольку это ресурс очень специфического назначения и ориентированный на определенные виды деятельности, редко можно услышать, чтобы кто-то обсуждал, что такое указатель и как его использовать в MQL5.
preview
Тестер стратегий для Python и MetaTrader 5 (Часть 03): Обработка и управление торговыми операциями по образцу MetaTrader 5

Тестер стратегий для Python и MetaTrader 5 (Часть 03): Обработка и управление торговыми операциями по образцу MetaTrader 5

В этой статье мы представляем способы обработки торговых операций в стиле Python–MetaTrader 5, таких как открытие, закрытие и изменение ордеров в симуляторе. Чтобы симуляция вела себя как MetaTrader 5, реализован строгий уровень проверки торговых запросов, учитывающий торговые параметры символа и типичные брокерские ограничения.
preview
Архитектура машинного обучения для MetaTrader 5 (Часть 12): Калибровка вероятностей для финансового машинного обучения

Архитектура машинного обучения для MetaTrader 5 (Часть 12): Калибровка вероятностей для финансового машинного обучения

Классификаторы на основе деревьев обычно избыточно уверены: истинные доли выигрышей около 0,55 отображаются как 0,65–0,80 и завышают размеры позиций и доли Келли. В этой статье представлены afml.calibration и CalibratorCV, которые генерируют OOF-прогнозы (out-of-fold, прогнозы для наблюдений вне обучающей части своего фолда) через PurgedKFold и обучают изотоническую регрессию или масштабирование Платта. Мы определяем оценку Брайера, ECE и MCE, а также показываем диагностику, которая прослеживает некалиброванность до размеров позиций, реализованного прибыли и убытка (P&L, profit and loss) и распределений коэффициента Шарпа по путям CPCV, что помогает обосновать торговлю без утечек и с корректно рассчитанным размером позиции.
preview
Возможности Мастера MQL5, которые вам нужно знать (Часть 65): Использование паттернов FrAMA и индекса силы

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

Фрактальная адаптивная скользящая средняя (FrAMA) и осциллятор индекса силы (Force Index Oscillator) — еще одна пара индикаторов, которые можно использовать совместно в советнике на языке MQL5. Эти два индикатора в некоторой степени дополняют друг друга, поскольку FrAMA — это индикатор следования за трендом, а индекс силы — это осциллятор, основанный на объеме. Как всегда, мы используем Мастер MQL5 для быстрого изучения любого потенциала этих двух инструментов.
preview
Кодирование свечных моделей (Часть 1): Алфавитная система для выявления сигналов

Кодирование свечных моделей (Часть 1): Алфавитная система для выявления сигналов

Мы представляем основанный на правилах алфавит для анализа ценовых движений на основе свечных графиков, который сопоставляет измеримые формы и направления с буквенными кодами (A/a, H/h, E/e, G/g, D). В статье показана реализация на MQL5: классификация свечей, построение двухбарных последовательностей с помощью перестановок и сканирование графиков с помощью индикатора и оповещений. Читатели получают практический шаблон для объективного обнаружения паттернов и систематического тестирования.
preview
Трейдинг с экономическим календарем MQL5 (Часть 10): Перетаскиваемая панель и hover-эффекты на кнопках

Трейдинг с экономическим календарем MQL5 (Часть 10): Перетаскиваемая панель и hover-эффекты на кнопках

Мы продолжаем улучшать возможности торговли с экономическим календарем MQL5 и сегодня добавим перетаскиваемую панель, которая позволит перемещать элементы, чтобы при необходимости лучше видеть график. Также добавим эффекты при наведении курсора на кнопки, чтобы еще больше улучшить работу с панелью.
preview
Рыночные секреты Ларри Уильямса (Часть 1): Создание индикатора свинговой структуры рынка в MQL5

Рыночные секреты Ларри Уильямса (Часть 1): Создание индикатора свинговой структуры рынка в MQL5

Практическое руководство по созданию индикатора рыночной структуры в стиле Ларри Уильямса на MQL5: настройка буферов, определение свинговых точек, настройка графических построений и применение индикатора трейдерами в техническом анализе рынка.
preview
От начального до среднего уровня: События мыши

От начального до среднего уровня: События мыши

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

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

В статье представлена инженерная реализация ReGEN-TAD для онлайн-обработки: единый вычислительный конвейер с магистралью (backbone) и универсальной генеративной головой прогнозирования/уточнения/реконструкции. Разобрана организация прямого и обратного прохода с запаздывающей обратной связью и контроль согласованности представлений. Тестирование в потоковом режиме иллюстрирует поведение системы и ограничения по риску; читатель получает готовую схему интеграции в торговый конвейер.
preview
Переосмысливаем классические стратегии (Часть 15): Стратегия пробоя диапазона предыдущего дня

Переосмысливаем классические стратегии (Часть 15): Стратегия пробоя диапазона предыдущего дня

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

Преодоление ограничений машинного обучения (Часть 9): Обучение признаков на основе корреляции в задачах самообучения на финансовых данных

Самоконтролируемое обучение (Self-supervised learning) - это мощная парадигма статистического обучения, которая заключается в поиске обучающих сигналов, генерируемых в результате самих наблюдений. Такой подход превращает сложные задачи обучения без наблюдения в более привычные задачи обучения под наблюдением. Эта технология не нашла применения для достижения нашей цели как сообщества алгоритмических трейдеров. Таким образом, наше обсуждение направлено на то, чтобы предоставить читателю доступный мостик к открытой исследовательской области самоконтролируемого обучения, и предлагает практические виды применения, которые позволяют создавать стабильные и надежные статистические модели финансовых рынков без переобучения небольшими наборами данных.
preview
Разработка инструментария для анализа Price Action (Часть 29): Советник "Boom and Crash Interceptor"

Разработка инструментария для анализа Price Action (Часть 29): Советник "Boom and Crash Interceptor"

Узнайте, как советник Boom & Crash Interceptor превращает ваши графики в проактивную систему оповещений, выявляющую взрывные движения с помощью быстрого анализа скорости, проверки всплесков волатильности, подтверждения тренда и фильтров пивот-зон. Четкие зеленые стрелки "Boom" и красные "Crash" помогают быстрее принимать решения: этот инструмент отсекает рыночный шум и позволяет эффективнее использовать ценовые всплески. Давайте разберем, как это работает и почему этот инструмент может стать вашим следующим важным преимуществом в торговле.
preview
Знакомство с языком MQL5 (Часть 29): Освоение API и функции WebRequest в языке MQL5 (III)

Знакомство с языком MQL5 (Часть 29): Освоение API и функции WebRequest в языке MQL5 (III)

В этой статье мы продолжаем осваивать API и WebRequest в языке MQL5, получая свечные данные из внешнего источника. Мы разберем ответ сервера, очистим данные и извлечем ключевые элементы – время открытия и значения OHLC для нескольких дневных свечей, подготовив все для дальнейшего анализа.
preview
От начального до среднего уровня: Объекты (I)

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

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

Теория графов: Применение алгоритма поиска в ширину (BFS) в торговой системе

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

Торговые инструменты MQL5 (Часть 21): Добавление темы в стиле киберпанк в графики регрессии

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

Неопределенность как модель (Часть 2): Зависимости случайных величин — от корреляции до копул

Во второй части цикла рассматривается математический аппарат многомерных случайных величин, необходимый для анализа зависимостей и совместного поведения рыночных активов. Описываются функции совместного распределения, понятия маржинальных и условных распределений, а также условия зависимости и независимости величин. Теоретический материал базируется на расширении аналогии вероятности с массой в многомерное пространство. Особое внимание уделено мерам связи: от классической линейной ковариации и корреляции до современных инструментов — копул и взаимной информации Шеннона.
preview
Архитектура машинного обучения для MetaTrader 5 (Часть 9): Интеграция байесовской оптимизации гиперпараметров в производственный пайплайн

Архитектура машинного обучения для MetaTrader 5 (Часть 9): Интеграция байесовской оптимизации гиперпараметров в производственный пайплайн

В этой статье бэкенд оптимизации гиперпараметров Optuna (HPO) интегрируется в единый ModelDevelopmentPipeline. Добавлены совместная настройка гиперпараметров модели и схем весов выборки, раннее отсечение с Hyperband и отказоустойчивое SQLite-хранилище исследований. Пайплайн автоматически определяет первичные и вторичные модели, добавляет перед моделью обученный препроцессор удаления столбцов, обеспечивающий безопасный инференс, поддерживает последовательный бутстрэппинг, формирует отчет Optuna и интегрируется с bid/ask-пайплайном и LearnedStrategy. Читатели получают более быстрые, возобновляемые запуски и развертываемые самодостаточные модели.
preview
Нейросети в трейдинге: Поиск устойчивых закономерностей в разнородных рыночных данных (Основные компоненты)

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

В статье продолжается адаптация фреймворка INFNet к задачам анализа финансовых данных средствами MQL5. Рассматриваются механизмы генерации hub-токенов и распространения сигналов с помощью Broadcast Gated Unit. Показано, как объединить последовательные, контекстные и сценарные признаки в единое embedding-пространство при сохранении линейной вычислительной сложности. В результате сформирована практическая основа для построения и последующего тестирования торговой модели на исторических данных.
preview
Моделирование рынка (Часть 12): Сокеты (VI)

Моделирование рынка (Часть 12): Сокеты (VI)

В данной статье мы рассмотрим, как решить некоторые проблемы и вопросы, возникающие при использовании кода, написанного на Python внутри других программ. А если говорить более конкретно, то мы покажем распространенную проблему, возникающую при использовании Excel в связке с MetaTrader 5, хотя для этого общения мы будем использовать Python. Однако у данной реализации есть небольшой недостаток. Это происходит не во всех, а только в некоторых конкретных случаях. Когда это происходит, необходимо понять причину. В сегодняшней статье мы начнем объяснять, как решить эту проблему.
preview
Создание самооптимизирующихся советников на MQL5 (Часть 8): Анализ нескольких стратегий

Создание самооптимизирующихся советников на MQL5 (Часть 8): Анализ нескольких стратегий

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

Нейросети в трейдинге: Адаптивная факторная токенизация (MTmixAtt)

Статья разбирает архитектуру MTmixAtt для адаптивной структуризации признаков и показывает первый шаг практической реализации в MQL5 — модуль AutoToken. Описаны выравнивание эмбеддингов, матрица выбора, механизм Top‑K и разреженная селекция. Приведен класс CNeuronAutoToken на базе OpenCL. Читатель получает работающий блок компрессии признакового пространства и основу для дальнейшего смешивания токенов и MoE.
preview
Инжиниринг признаков для машинного обучения (Часть 2): Реализация дробного дифференцирования с фиксированным окном в MQL5

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

В этой статье представлена готовая к промышленному применению реализация дробного дифференцирования с фиксированной шириной окна на MQL5 для потоков котировок MetaTrader 5 в реальном времени. Мы вводим header-only класс CFFDEngine, целиком реализованный в заголовочном файле, который заранее вычисляет веса без фиксированного ограничения, выполняет обновления за O(width) на бар и избегает выделения памяти на каждом тике. Индикатор FFD.mq5 поддерживает все типы ENUM_APPLIED_PRICE и оптимизацию prev_calculated. Скрипты валидации подтверждают численную эквивалентность стандартному Python-пайплайну frac_diff_ffd.
preview
Моделирование рынка: Первые шаги на SQL в MQL5 (I)

Моделирование рынка: Первые шаги на SQL в MQL5 (I)

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

MLP (многослойный перцептрон) внутри советника MQL5: Обучение на истории без Python и без файлов весов

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

От начального до среднего уровня: Объекты (IV)

Пожалуй, это самая веселая статья на данный момент. Так происходит, потому что здесь мы реализуем модификацию объекта, присутствующего в MetaTrader 5, чтобы создать другой, изначально отсутствующий на платформе. Конечно, то, что мы здесь рассмотрим, может показаться безумием, но это работает и имеет очень интересное цель.
preview
Автоматизация торговых стратегий в MQL5 (Часть 50): Стратегия Turtle Soup на снятии ликвидности

Автоматизация торговых стратегий в MQL5 (Часть 50): Стратегия Turtle Soup на снятии ликвидности

В статье создаётся автоматическая программа MQL5 для торговли по стратегии Turtle Soup против ложных пробоев N-барных максимумов и минимумов. Реализуются обнаружение снятия ликвидности, подтверждающие закрытия обратно внутрь уровня, фильтры глубины и возраста экстремума, необязательная проверка тела разворотной свечи, динамические и статические стоп-лоссы, два режима тейк-профита, трейлинг по пунктам и наглядная разметка графика.
preview
Генеративно-состязательные сети (GAN) для синтетических данных в сфере финансового моделирования (Часть 2): Создание синтетического символа для тестирования

Генеративно-состязательные сети (GAN) для синтетических данных в сфере финансового моделирования (Часть 2): Создание синтетического символа для тестирования

В этой статье мы создаем синтетический символ с использованием генеративно-состязательной сети (GAN), которая включает в себя генерацию реалистичных финансовых данных, имитирующих поведение реальных рыночных инструментов, таких как EURUSD. Модель GAN изучает закономерности и волатильность на основе исторических рыночных данных и создает синтетические ценовые данные с аналогичными характеристиками.
preview
Тестер стратегий для Python и MetaTrader 5 (Часть 02): Работа с барами, тиками и реализация встроенных функций в симуляторе

Тестер стратегий для Python и MetaTrader 5 (Часть 02): Работа с барами, тиками и реализация встроенных функций в симуляторе

В этой статье мы представим функции, аналогичные тем, которые предоставляет модуль Python–MetaTrader 5, предоставляя симулятору привычный интерфейс и собственный механизм внутренней обработки баров и тиков.
preview
Моделирование рынка (Часть 05): Создание класса C_Orders (II)

Моделирование рынка (Часть 05): Создание класса C_Orders (II)

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

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

Материал завершает адаптацию фреймворка ORION к трейдингу: сценарии рынка формируются Market Encoder, а Актёр на их основе управляет объёмом, TP и SL с учётом состояния счёта; Критики дают оценку действий. Описаны процедуры офлайн‑ и онлайн‑обучения и контроль утечки будущего. Проверка проводится в тестере стратегий на отложенном периоде.
preview
Торговые инструменты на языке MQL5 (Часть 8): Улучшенная информационная панель с возможностью перетаскивания и сворачивания

Торговые инструменты на языке MQL5 (Часть 8): Улучшенная информационная панель с возможностью перетаскивания и сворачивания

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

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

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

Нейросети в трейдинге: Адаптивная факторная токенизация (Окончание)

Статья завершает перенос и интеграцию ключевых компонентов фреймворка MTmixAtt в архитектуру торговой модели для анализа рыночных данных. Продемонстрировано, как адаптивная токенизация и блоки MTmixAttBlock позволяют эффективно выявлять локальные и глобальные паттерны, учитывать сценарии поведения цены.
preview
Создание торговой панели администратора на MQL5 (Часть IX): Организация кода (II): Модуляризация

Создание торговой панели администратора на MQL5 (Часть IX): Организация кода (II): Модуляризация

В этом обсуждении мы сделаем шаг вперед в разбиении нашей программы MQL5 на более мелкие и более управляемые модули. Эти модульные компоненты затем будут интегрированы в основную программу, что улучшит ее организацию и удобство обслуживания. Такой подход упрощает структуру нашей основной программы и делает отдельные компоненты пригодными для повторного использования в других советниках и индикаторах. Приняв эту модульную конструкцию, мы создаем прочную основу для будущих улучшений, что принесет пользу как нашему проекту, так и широкому сообществу разработчиков.
preview
Знакомство с языком MQL5 (Часть 31): Освоение API и функции WebRequest в языке MQL5 (V)

Знакомство с языком MQL5 (Часть 31): Освоение API и функции WebRequest в языке MQL5 (V)

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

Разработка системы репликации (Часть 58): Возвращаемся к работе над сервисом

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

Статистический арбитраж на основе коинтегрированных акций (Часть 8): Сравнение собственных векторов на скользящих окнах для ребалансировки портфеля

В этой статье предлагается использовать сравнение собственных векторов со скользящим окном для ранней диагностики дисбаланса и ребалансировки портфеля в рамках стратегии статистического арбитража, основанной на возврате к среднему (mean-reversion) и коинтегрированных акциях. Данный метод противопоставляется традиционной валидации с помощью ADF-теста на внутривыборочных и вневыборочных данных (IS/OOS), показывая, что сдвиги собственных векторов могут сигнализировать о необходимости ребалансировки даже в тех случаях, когда IS/OOS ADF всё ещё указывает на стационарность спреда. Хотя этот метод предназначен в первую очередь для мониторинга торговли в реальном времени, в статье делается вывод, что сравнение собственных векторов также может быть интегрировано в систему скоринга — хотя его реальный вклад в эффективность стратегии ещё предстоит проверить.
preview
MQL5 Bootstrap (I): Набор переиспользуемых функций для работы с позициями и ордерами

MQL5 Bootstrap (I): Набор переиспользуемых функций для работы с позициями и ордерами

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

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

В статье мы доводим адаптацию фреймворка UncAD до цельной торговой архитектуры. Ранее реализованные блоки плотности рыночных состояний, оценки неопределённости, прогнозирования и планирования объединяются в модуль CNeuronUncAD. Затем система обучается на исторических данных EURUSD H1 и проходит проверку в MetaTrader 5. Итоги показывают практический потенциал подхода, но честно указывают на главный вызов — контроль просадки и усиление риск-менеджмента.