Как подключить ИИ-агентов к MetaTrader 5 через MCP
В статье показано, как подключить ИИ-агентов напрямую к MetaTrader 5, создав полноценный сервер MCP (Model Context Protocol) на Python. Подробно описаны архитектура, клиентская обёртка MetaTrader 5, обработчики рыночных данных и ордеров, а также регистрация инструментов через stdio, тестирование с помощью MCP Inspector и подключение к таким клиентам, как Claude Desktop или OpenClaw. В результате получается стандартизированный мост для запросов на естественном языке, получения данных в реальном времени и безопасного исполнения ордеров в MetaTrader 5.
От начального до среднего уровня: Объекты (III)
В сегодняшней статье мы рассмотрим, как можно реализовать очень привлекательную и интересную систему взаимодействия, особенно для тех, кто только начинает практиковаться в программировании на MQL5. В этом нет ничего принципиально нового. Благодаря моему подходу к теме будет гораздо проще понять всё, поскольку мы увидим на практике, как разрабатывается структурное программирование с довольно интересной целью.
Переосмысливаем классические стратегии (Часть 15): Стратегия пробоя диапазона предыдущего дня
Трейдеры-люди уже давно работали на финансовых рынках до появления компьютеров, разработав практические правила, которыми они руководствовались при принятии решений. В этой статье мы вновь рассмотрим хорошо известную стратегию пробоя, чтобы проверить, может ли такая рыночная логика, усвоенная на опыте, конкурировать с систематическими методами. Наши результаты показывают, что, хотя первоначальная стратегия обеспечивала высокую точность, она страдала от нестабильности и слабого контроля рисков. Совершенствуя этот подход, мы продемонстрируем, как инсайты дискреционных трейдеров можно адаптировать в более надежные алгоритмические торговые стратегии.
Неопределенность как модель (Часть 2): Зависимости случайных величин — от корреляции до копул
Во второй части цикла рассматривается математический аппарат многомерных случайных величин, необходимый для анализа зависимостей и совместного поведения рыночных активов. Описываются функции совместного распределения, понятия маржинальных и условных распределений, а также условия зависимости и независимости величин. Теоретический материал базируется на расширении аналогии вероятности с массой в многомерное пространство. Особое внимание уделено мерам связи: от классической линейной ковариации и корреляции до современных инструментов — копул и взаимной информации Шеннона.
Нейросети в трейдинге: Оценка риска по несогласованности представлений (Окончание)
В статье представлена инженерная реализация ReGEN-TAD для онлайн-обработки: единый вычислительный конвейер с магистралью (backbone) и универсальной генеративной головой прогнозирования/уточнения/реконструкции. Разобрана организация прямого и обратного прохода с запаздывающей обратной связью и контроль согласованности представлений. Тестирование в потоковом режиме иллюстрирует поведение системы и ограничения по риску; читатель получает готовую схему интеграции в торговый конвейер.
Тестер стратегий для Python и MetaTrader 5 (Часть 03): Обработка и управление торговыми операциями по образцу MetaTrader 5
В этой статье мы представляем способы обработки торговых операций в стиле Python–MetaTrader 5, таких как открытие, закрытие и изменение ордеров в симуляторе. Чтобы симуляция вела себя как MetaTrader 5, реализован строгий уровень проверки торговых запросов, учитывающий торговые параметры символа и типичные брокерские ограничения.
Кодирование свечных моделей (Часть 1): Алфавитная система для выявления сигналов
Мы представляем основанный на правилах алфавит для анализа ценовых движений на основе свечных графиков, который сопоставляет измеримые формы и направления с буквенными кодами (A/a, H/h, E/e, G/g, D). В статье показана реализация на MQL5: классификация свечей, построение двухбарных последовательностей с помощью перестановок и сканирование графиков с помощью индикатора и оповещений. Читатели получают практический шаблон для объективного обнаружения паттернов и систематического тестирования.
Разработка инструментария для анализа Price Action (Часть 35): Обучение и развертывание прогнозных моделей
Исторические данные – вовсе не "мусор", а основа любого надежного рыночного анализа. В этой статье мы шаг за шагом пройдем путь от сбора истории до ее использования для обучения прогностической модели, а затем – до развертывания этой модели для прогнозирования цен в реальном времени. Давайте разберемся, как это сделать.
MLP (многослойный перцептрон) внутри советника MQL5: Обучение на истории без Python и без файлов весов
Статья показывает, как перенести MLP-фильтр советника GridSurvivor из офлайн-обучения в Python в полностью встроенное обучение в MQL5. Сеть тренируется на истории текущего символа и таймфрейма, периодически переобучается и используется как последний фильтр сигналов. Подход исключает внешние файлы и рассинхрон нормализации, делая советник самодостаточным и воспроизводимым.
От начального до среднего уровня: Указатель на функцию
Вы, вероятно, уже слышали о указателях, когда речь заходит о программировании. А вы знали, что мы можем использовать данные такого типа здесь, в MQL5? Это, конечно, должно быть сделано так, чтобы мы не теряли контроль и не вызывали странного поведения программы во время её выполнения. Тем не менее, поскольку это ресурс очень специфического назначения и ориентированный на определенные виды деятельности, редко можно услышать, чтобы кто-то обсуждал, что такое указатель и как его использовать в MQL5.
Рыночные секреты Ларри Уильямса (Часть 1): Создание индикатора свинговой структуры рынка в MQL5
Практическое руководство по созданию индикатора рыночной структуры в стиле Ларри Уильямса на MQL5: настройка буферов, определение свинговых точек, настройка графических построений и применение индикатора трейдерами в техническом анализе рынка.
Нейросети в трейдинге: Поиск устойчивых закономерностей в разнородных рыночных данных (Основные компоненты)
В статье продолжается адаптация фреймворка INFNet к задачам анализа финансовых данных средствами MQL5. Рассматриваются механизмы генерации hub-токенов и распространения сигналов с помощью Broadcast Gated Unit. Показано, как объединить последовательные, контекстные и сценарные признаки в единое embedding-пространство при сохранении линейной вычислительной сложности. В результате сформирована практическая основа для построения и последующего тестирования торговой модели на исторических данных.
Заголовок в Connexus (Часть 3): Освоение использования HTTP-заголовков для запросов
Продолжаем разработку библиотеки Connexus. В этой главе мы исследуем концепцию заголовков в протоколе HTTP, объясняя, что это такое, для чего они предназначены и как их использовать в запросах. Мы рассмотрим основные заголовки, используемые при взаимодействии с API, а также покажем практические примеры того, как настроить их в библиотеке.
Автоматизация торговых стратегий в MQL5 (Часть 50): Стратегия Turtle Soup на снятии ликвидности
В статье создаётся автоматическая программа MQL5 для торговли по стратегии Turtle Soup против ложных пробоев N-барных максимумов и минимумов. Реализуются обнаружение снятия ликвидности, подтверждающие закрытия обратно внутрь уровня, фильтры глубины и возраста экстремума, необязательная проверка тела разворотной свечи, динамические и статические стоп-лоссы, два режима тейк-профита, трейлинг по пунктам и наглядная разметка графика.
Преодоление ограничений машинного обучения (Часть 8): Непараметрический выбор стратегии
В этой статье показано, как настроить модель "черного ящика" для автоматического выявления сильных торговых стратегий, используя подход, основанный на данных. Используя взаимную информацию для определения приоритетов наиболее удобных для изучения сигналов, мы можем создавать более интеллектуальные и адаптивные модели, превосходящие традиционные методы. Читатели также научатся избегать распространенные подводные камни, такие как чрезмерное доверие к показателям поверхностного уровня, а вместо этого разрабатывать стратегии, основанные на значимой статистической информации.
Трейдинг с экономическим календарем MQL5 (Часть 10): Перетаскиваемая панель и hover-эффекты на кнопках
Мы продолжаем улучшать возможности торговли с экономическим календарем MQL5 и сегодня добавим перетаскиваемую панель, которая позволит перемещать элементы, чтобы при необходимости лучше видеть график. Также добавим эффекты при наведении курсора на кнопки, чтобы еще больше улучшить работу с панелью.
Преодоление ограничений машинного обучения (Часть 9): Обучение признаков на основе корреляции в задачах самообучения на финансовых данных
Самоконтролируемое обучение (Self-supervised learning) - это мощная парадигма статистического обучения, которая заключается в поиске обучающих сигналов, генерируемых в результате самих наблюдений. Такой подход превращает сложные задачи обучения без наблюдения в более привычные задачи обучения под наблюдением. Эта технология не нашла применения для достижения нашей цели как сообщества алгоритмических трейдеров. Таким образом, наше обсуждение направлено на то, чтобы предоставить читателю доступный мостик к открытой исследовательской области самоконтролируемого обучения, и предлагает практические виды применения, которые позволяют создавать стабильные и надежные статистические модели финансовых рынков без переобучения небольшими наборами данных.
От начального до среднего уровня: Объекты (I)
В данной статье мы начнём рассматривать, как можно работать с объектами непосредственно на графике. Это делается с помощью кода, специально разработанного для демонстрации. Работа с объектами очень интересна и доставляет немало удовольствия. Поскольку это будет наш первый контакт, начнём с чего-нибудь очень простого.
От начального до среднего уровня: События мыши
Данная статья относится к категории тех материалов, где для понимания происходящих процессов определенно недостаточно просто просмотреть и изучить код. Фактически, необходимо создать исполняемое приложение и использовать его в любом графике. Это делается для того, чтобы можно было понимать мелкие детали, которые в ином случае чрезвычайно сложны для восприятия. Такие, например, как совместное использование клавиатуры и мыши для создания определенных элементов.
Торговые инструменты на MQL5 (Часть 16): Улучшенное сглаживание методом суперсэмплинга (SSAA) и рендеринг в высоком разрешении
Мы добавляем сглаживание на основе суперсэмплинга и рендеринг высокого разрешения на панель Canvas на MQL5, а затем понижаем дискретизацию до целевого размера. В статье реализованы закругленные прямоугольные заливки и границы, закругленные треугольные стрелки и пользовательская полоса прокрутки с темой оформления для статистических и текстовых панелей. Эти инструменты помогут вам создать более плавные и разборчивые компоненты пользовательского интерфейса в MetaTrader 5.
Возможности Мастера MQL5, которые вам нужно знать (Часть 63): Использование паттернов каналов Демарка и конвертов
Осциллятор Демарка (DeMarker Oscillator) и конверты (Envelopes) — это инструменты, определяющие импульс и уровни поддержки/сопротивления, которые можно использовать в паре при разработке советника. Поэтому мы рассматриваем каждый паттерн отдельно, чтобы определить, что может быть полезным, а чего потенциально следует избегать. Как всегда, мы используем советник, собранный в Мастере, вместе с функциями паттернов, встроенными в класс сигналов советника (Expert Signal).
Возможности Мастера MQL5, которые вам нужно знать (Часть 64): Использование паттернов каналов Демарка и конвертов с ядром белого шума
Осциллятор Демарка (DeMarker Oscillator) и конверты (Envelopes) — это инструменты, определяющие импульс и уровни поддержки/сопротивления, которые можно использовать в паре при разработке советника. В предыдущей статье были представлены эти два индикатора. Здесь же мы добавим к ним машинное обучение. Мы используем рекуррентную нейронную сеть, которая применяет ядро белого шума (white-noise kernel) для обработки векторизованных сигналов от этих двух индикаторов. Это делается в пользовательском файле класса сигналов (signal class), который взаимодействует с Мастером MQL5 для создания советника.
Возможности Мастера MQL5, которые вам нужно знать (Часть 65): Использование паттернов FrAMA и индекса силы
Фрактальная адаптивная скользящая средняя (FrAMA) и осциллятор индекса силы (Force Index Oscillator) — еще одна пара индикаторов, которые можно использовать совместно в советнике на языке MQL5. Эти два индикатора в некоторой степени дополняют друг друга, поскольку FrAMA — это индикатор следования за трендом, а индекс силы — это осциллятор, основанный на объеме. Как всегда, мы используем Мастер MQL5 для быстрого изучения любого потенциала этих двух инструментов.
Знакомство с языком MQL5 (Часть 29): Освоение API и функции WebRequest в языке MQL5 (III)
В этой статье мы продолжаем осваивать API и WebRequest в языке MQL5, получая свечные данные из внешнего источника. Мы разберем ответ сервера, очистим данные и извлечем ключевые элементы – время открытия и значения OHLC для нескольких дневных свечей, подготовив все для дальнейшего анализа.
Архитектура машинного обучения для MetaTrader 5 (Часть 9): Интеграция байесовской оптимизации гиперпараметров в производственный пайплайн
В этой статье бэкенд оптимизации гиперпараметров Optuna (HPO) интегрируется в единый ModelDevelopmentPipeline. Добавлены совместная настройка гиперпараметров модели и схем весов выборки, раннее отсечение с Hyperband и отказоустойчивое SQLite-хранилище исследований. Пайплайн автоматически определяет первичные и вторичные модели, добавляет перед моделью обученный препроцессор удаления столбцов, обеспечивающий безопасный инференс, поддерживает последовательный бутстрэппинг, формирует отчет Optuna и интегрируется с bid/ask-пайплайном и LearnedStrategy. Читатели получают более быстрые, возобновляемые запуски и развертываемые самодостаточные модели.
Разработка инструментария для анализа Price Action (Часть 29): Советник "Boom and Crash Interceptor"
Узнайте, как советник Boom & Crash Interceptor превращает ваши графики в проактивную систему оповещений, выявляющую взрывные движения с помощью быстрого анализа скорости, проверки всплесков волатильности, подтверждения тренда и фильтров пивот-зон. Четкие зеленые стрелки "Boom" и красные "Crash" помогают быстрее принимать решения: этот инструмент отсекает рыночный шум и позволяет эффективнее использовать ценовые всплески. Давайте разберем, как это работает и почему этот инструмент может стать вашим следующим важным преимуществом в торговле.
Моделирование рынка: Первые шаги на SQL в MQL5 (I)
В сегодняшней статье мы начнём изучать использование SQL в коде MQL5. Мы также рассмотрим, как можно создать базу данных. Или, точнее, как создать файл базы данных в SQLite, используя ресурсы или процедуры, включенные в язык MQL5. Мы также увидим, как создать таблицу, а затем как установить связь между таблицами с помощью первичного и внешнего ключей. Всё это, опять же, с использованием MQL5. Мы увидим, как легко создать код, который в будущем можно будет перенести в другие реализации SQL, используя класс, помогающий скрыть созданную реализацию. И, что самое важное, мы увидим, что в разные моменты мы можем столкнуться с риском того, что при использовании SQL что-то пойдет не так. Это происходит так, потому что в коде MQL5 SQL-код всегда будет помещаться внутри строки.
Тестер стратегий для Python и MetaTrader 5 (Часть 02): Работа с барами, тиками и реализация встроенных функций в симуляторе
В этой статье мы представим функции, аналогичные тем, которые предоставляет модуль Python–MetaTrader 5, предоставляя симулятору привычный интерфейс и собственный механизм внутренней обработки баров и тиков.
MQL5 Bootstrap (I): Набор переиспользуемых функций для работы с позициями и ордерами
В статье представлен компактный вспомогательный слой MQL5 для типовых торговых операций. Он включает функции проверки наличия позиций, счётчики позиций, вспомогательные функции для группового закрытия позиций, а также функции получения наиболее недавно открытой или самой старой позиции по символу, magic-номеру или типу. Интеграция демонстрируется на простом советнике с пересечением SMA. В результате советники становятся чище, уменьшается количество различий в реализации между проектами и упрощается сопровождение кода.
Разработка инструментария для анализа Price Action (Часть 63): Автоматизация обнаружения восходящих и нисходящих клиньев на MQL5
В этой части серии "Разработка инструментария для анализа Price Action" мы разрабатываем индикатор на языке MQL5, который в реальном времени автоматически обнаруживает паттерны восходящего и нисходящего клина. Система подтверждает структуру опорных точек, математически проверяет сходимость границ, предотвращает перекрытие формаций и отслеживает условия пробоя и слома паттерна с точной визуальной индикацией. Построенная на чистой объектно-ориентированной архитектуре, эта реализация превращает субъективное распознавание клина в структурированный компонент анализа, учитывающий состояние паттерна, предназначенный для более дисциплинированного анализа Price Action.
Торговые инструменты MQL5 (Часть 21): Добавление темы в стиле киберпанк в графики регрессии
В этой статье мы улучшаем инструмент построения графиков регрессии в MQL5, добавляя режим темы киберпанка с неоновым свечением, анимацией и голографическими рамками для иммерсивной визуализации. Мы интегрируем переключение тем, динамические фоны со звездами, светящимися контурами и неоновыми точками / линиями, сохраняя при этом совместимость со стандартным режимом. Эта двухтематическая система придает парному анализу футуристическую эстетику, поддерживая обновления и взаимодействия в режиме реального времени для получения полезных торговых выводов.
От начального до среднего уровня: Объекты (IV)
Пожалуй, это самая веселая статья на данный момент. Так происходит, потому что здесь мы реализуем модификацию объекта, присутствующего в MetaTrader 5, чтобы создать другой, изначально отсутствующий на платформе. Конечно, то, что мы здесь рассмотрим, может показаться безумием, но это работает и имеет очень интересное цель.
Создание самооптимизирующихся советников на MQL5 (Часть 8): Анализ нескольких стратегий
Как лучше всего объединить несколько стратегий для создания мощной ансамблевой стратегии? Мы рассмотрим, как объединить три различные стратегии в нашем торговом приложении. Трейдеры часто используют специализированные стратегии для открытия и закрытия позиций, и мы хотим узнать, могут ли машины выполнять эту задачу лучше. В начале нашего обсуждения мы ознакомимся с возможностями тестера стратегий и принципами объектно-ориентированного программирования, которые нам понадобятся для решения этой задачи.
Теория графов: Применение алгоритма поиска в ширину (BFS) в торговой системе
Поиск в ширину (BFS) использует обход по уровням для моделирования структуры рынка как ориентированного графа свингов цен, развивающихся во времени. Анализируя исторические бары или сессии слой за слоем, BFS отдает приоритет недавнему поведению цен, при этом учитывая более глубокую рыночную память.
Инжиниринг признаков для машинного обучения (Часть 2): Реализация дробного дифференцирования с фиксированным окном в MQL5
В этой статье представлена готовая к промышленному применению реализация дробного дифференцирования с фиксированной шириной окна на MQL5 для потоков котировок MetaTrader 5 в реальном времени. Мы вводим header-only класс CFFDEngine, целиком реализованный в заголовочном файле, который заранее вычисляет веса без фиксированного ограничения, выполняет обновления за O(width) на бар и избегает выделения памяти на каждом тике. Индикатор FFD.mq5 поддерживает все типы ENUM_APPLIED_PRICE и оптимизацию prev_calculated. Скрипты валидации подтверждают численную эквивалентность стандартному Python-пайплайну frac_diff_ffd.
VQC-фильтр с живым обучением прямо в MQL5 поверх графового fair-value скальпера
В статье реализован двухслойный подход к входу в сделку: графовый fair-value скальпер по 28 валютным парам и вероятностный VQC‑фильтр — классически симулированная схема вращений с онлайн‑обучением в MQL5 через parameter‑shift и Adam. Разбираются кодирование признаков, аналитический градиент, согласование направлений, калибровка порога уверенности и защита от подглядывания в будущее. Читатель получает рабочую архитектуру фильтра и практические приёмы её интеграции в советник.
Нейросети в трейдинге: Адаптивная факторная токенизация (MTmixAtt)
Статья разбирает архитектуру MTmixAtt для адаптивной структуризации признаков и показывает первый шаг практической реализации в MQL5 — модуль AutoToken. Описаны выравнивание эмбеддингов, матрица выбора, механизм Top‑K и разреженная селекция. Приведен класс CNeuronAutoToken на базе OpenCL. Читатель получает работающий блок компрессии признакового пространства и основу для дальнейшего смешивания токенов и MoE.
Рыночные секреты Ларри Уильямса (Часть 2): Автоматизация торговой системы на основе рыночной структуры
Узнайте, как автоматизировать концепции рыночной структуры Ларри Уильямса в MQL5, создав полноценный советник, который считывает свинговые точки, генерирует торговые сигналы, управляет риском и применяет динамическую стратегию трейлинг-стопа.
Автоматизация индикатора Market Memory Zones: Зоны, куда цена с высокой вероятностью вернется
В этой статье Market Memory Zones превращается из сугубо визуальной концепции на графике, в полноценный советник MQL5. Советник автоматизирует зоны смещения, изменения структуры (CHoCH) и снятия ликвидности с помощью фильтров ATR и свечной структуры, применяет подтверждение на младшем таймфрейме и рассчитывает размер позиции с учетом риска, используя динамический стоп-лосс и тейк-профит на основе структуры. Рассматривается архитектура кода для обнаружения зон, входов в сделки, управления сделками и визуализации, а также краткий обзор тестирования на исторических данных.
Нейросети в трейдинге: Принятие торговых решений с учётом неопределённости (Окончание)
В статье мы доводим адаптацию фреймворка UncAD до цельной торговой архитектуры. Ранее реализованные блоки плотности рыночных состояний, оценки неопределённости, прогнозирования и планирования объединяются в модуль CNeuronUncAD. Затем система обучается на исторических данных EURUSD H1 и проходит проверку в MetaTrader 5. Итоги показывают практический потенциал подхода, но честно указывают на главный вызов — контроль просадки и усиление риск-менеджмента.