MQL5 Алготрейдинг
12.8K subscribers
1.21K photos
1.21K links
Лучшие публикации самого большого общества алготрейдеров.

Подпишись, чтобы быть в курсе современных технологий и развития торговых систем.
Download Telegram
В пятой части серии о интеграции MetaQuotes Language 5 с Telegram обсуждается улучшение взаимодействия между MetaTrader 5 и Telegram. В предыдущих частях была создана основа для коммуникации и отправки сообщений из MQL5 в Telegram.

Основная цель новой части – программирование советника для получения и обработки команд из Telegram в реальном времени. В статье подробно раскрывается процесс создания классов для извлечения данных из JSON, а также декодирование и интерпретация этих данных. Показаны основные шаги: от настройки среды до тестирования и интеграции готового решения.

Важно: статья ориентирована на разработчиков, работающих с MQL5, и требует глубоких знаний в программировании.

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

Читать далее...
👍311
Современные финансовые аналитики и торговые платформы предлагают новый уровень автоматизации и анализа с помощью расширенных индикаторов. Один из таких инструментов позволяет отслеживать формирование фракталов относительно линии Bollinger Bands. После выявления события пользователю предлагаются различные виды уведомлений: звуковой сигнал, предупреждение в окне, электронное письмо или push-уведомление. В сообщение включается время бара и тип фрактала: UP или DOWN. Пользователь может настроить частоту звуковых оповещений и их интервалы, а также включать или выключать отправку email и push-уведомлений. Этот индикатор повышает точность и оперативность принятия торговых решений, обеспечивая возможность гибкой настройки каждого параметра.

Читать далее...
2👍2
Введение в стохастическое моделирование и оптимизацию управления подчеркивает важность решений в условиях неопределенности. Эти методы находят применение в различных секторах: финансах, инженерии, искусственном интеллекте. Стохастическое моделирование основывается на случайных переменных и стохастических процессах, позволяя описывать сложные системы. Методы, такие как Монте-Карло и цепи Маркова, используют для моделирования и прогнозирования поведения систем.

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

Читать далее...
👍21
Своп-арбитраж на валютном рынке открывает новые горизонты для долгосрочной выгоды, предлагая до 10-15% годовых через различия в процентных ставках валютных пар. Эффективность этой стратегии обусловлена стабильностью своп-ставок и возможностью систематического накопления прибыли. Программный инструмент SwapArbitrageAnalyzer использует сложные математические модели для оптимизации портфеля, минимизируя риски благодаря анализу корреляций валют. Включение свопов в стандартные модели портфельной оптимизации создает мощное преимущество, обеспечивая высокий коэффициент Шарпа и доходность, что особо актуально в период рыночной нестабильности.

Читать далее...
👍31
В статье рассматривается использование машинного обучения для создания трендовых стратегий, отличающихся от стратегий возврата к среднему. В основе подхода лежит кластеризация данных для определения рыночных режимов. Основное внимание уделяется точной разметке сделок, где используется фильтр Савицкого-Голея для сглаживания краткосрочных колебаний. Представлены методы разметки, включая выбор различных фильтров и тестирование на валютной паре EURUSD. Обсуждаются сложности в обучении моделей, контроль рисков посредством коротких стоп-лоссов и необходимость новых инсайтов для трендовых стратегий. Обеспечивается экспорт моделей для использования в MetaTrader 5.

Читать далее...
👍311
При использовании индикатора важно учитывать корректные настройки в тестере стратегий. Режим "Каждый тик на основе реальных данных" обязателен для точной работы. Этот индикатор визуализирует значения спреда в подокне. Для настройки отображения на конкретный период воспользуйтесь параметрами 'Use Date From ... To', установив 'true', и задайте временные рамки в 'Date From' и 'Date To'. Учитывайте, что при большом интервале время загрузки тиковых данных увеличивается. Для удобства визуализации работы включите параметр 'Use Progress' на 'true', который позволяет следить за временем открытия бара в процессе работы индикатора. Имеется три буфера данных: максимальный спред, минимальный спред через CopyTicksRange и массив spread[] из Oncalculate.

Читать далее...
1
CATCH — это фреймворк для обнаружения аномалий в многомерных временных рядах, использующий частотный анализ. Преобразование Фурье переводит данные в спектральное представление, позволяя выявлять скрытые паттерны. Метод частотного патчинга анализирует спектр по фрагментам, учитывая как глобальные, так и локальные особенности. Адаптивный модуль с маскированным вниманием фокусируется на значимых корреляциях, улучшая устойчивость модели в изменчивой среде. Финальный этап — восстановление временного ряда с последующей обратной трансформацией для идентификации отклонений. Реализация начинается со слоя комплексных значений в MQL5, углубляясь в использование OpenCL для обработки внимания к комплексным величинам.

Читать далее...
👍521👀1
Индикатор настроен для оповещения пользователей, когда показатель RSI превышает верхний предел 70 или опускается ниже нижнего уровня 30. Эти уровни могут быть адаптированы в параметрах, предоставляя пользователям возможность настроить поведение индикатора в зависимости от их торговых стратегий. Это особенно полезно для тех, кто полагается на ключевые сигналы перекупленности и перепроданности при принятии решений на рынке. Правильная настройка параметров может улучшить точность анализа и повысить эффективность торговли. Оптимизация уровня оповещения позволит трейдерам гибко реагировать на изменяющиеся условия рынка.

Читать далее...
👍5
Текст предоставляет детальное описание разработки и реализации алгоритма NOA2, который объединяет принципы алгоритма boids и адаптивного обучения на основе нейронных сетей. Основной особенностью является использование многослойной нейронной сети для каждого агента, что позволяет им адаптировать стратегии движения в поисковом пространстве в реальном времени.

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

Читать далее...
5👌1
В алгоритмической торговле критически важное значение имеет эффективная коммуникация между трейдерами и администраторами. В MQL5 реализованы функции быстрого обмена сообщениями для повышения оперативности. Разработана панель с кнопками управления, позволяющими сворачивать, развертывать и закрывать окно. Кроме того, добавлены кнопки быстрого обмена сообщениями, которые упрощают взаимодействие, уменьшая задержки при отправке стандартных сообщений. Эти улучшения повышают удобство и адаптивность интерфейса, позволяя трейдерам эффективно управлять своими операциями. Такие функциональные изменения делают интерфейс интуитивно понятным и снижают риск потери рыночных возможностей.

Читать далее...
👍53🏆1
На определённом таймфрейме проводится линия, берущая своё начало в 'Start Hour' и завершающаяся в 'End Hour'. Цена этой линии определяется на основе цены 'High' бара, соответствующего 'Start Hour'. Такой подход позволяет наглядно демонстрировать динамику цены в установленном временном интервале.

Существует ряд ограничений, которые необходимо учитывать. Таймфрейм графика не должен превышать заданный таймфрейм параметра 'Timeframe'. Кроме того, время графика не может быть больше 'D1'. В результате обеспечивается точное соответствие временным параметрам заданной стратегии, что повышает её эффективность в контексте анализа данных.

Читать далее...
2
Статья посвящена применению архитектуры MVC в создании модели таблицы с использованием MQL5. MVC помогает разделить код на модель, представление и контроллер, что упрощает разработку и поддержку. Это особенно важно в сложных приложениях, таких как торговые платформы MetaTrader 5. Для реализации таблицы используются классы для ячеек, строк и модели таблицы, построенных на связанных списках из стандартной библиотеки MQL5. Подход позволяет эффективно управлять данными и взаимодействовать с ними, обеспечивая гибкость и структурированность кода. Показаны методы работы с таблицами, включая добавление, удаление и перемещение элементов.

Читать далее...
👌4
Спред формируется из разности котировок двух финансовых инструментов. Если движение котировок указывает на обратную корреляцию, следует инвертировать второй инструмент. Спред в таком случае рассчитывается через сумму цен, а инверсия затрагивает только второй инструмент.

Работа с индикатором спреда требует, чтобы оба символа котировались в течение торговых сессий. Допустимо использование индикатора для работы во флете: при росте спреда — продажа, при падении — покупка. Индикатор позволяет учитывать поддержку и сопротивление, а также наклонные линии на графике спреда.

Код снабжен комментариями для упрощения анализа. Индикатор устанавливается на первый символ. Используем переменные для округления, обеспечивая простоту оценки уровней. Спред аналитики допускает множество интерпретаций и применений, включая трендовую и сезонную торгoвлю. Примером является использование пары AUDUSD-USDCAD ...

Читать далее...
👍1
В статье обсуждается использование функции WebRequest в MQL5 для выполнения HTTP-запросов в MetaTrader 5. Этот важный инструмент позволяет взаимодействовать с внешними серверами, API и получать данные, что критично для современных алгоритмических торговых стратегий. WebRequest требует тщательной настройки параметров, включая формирование корректных HTTP-заголовков, обработку форматов данных и настройку времени ожидания. Это делает функцию сложной для новичков, но столь же мощной при правильном использовании. Будущие статьи представят библиотеку Connexus, упрощающую работу с HTTP-запросами и устраняющую ограничения текущих инструментов MQL5.

Читать далее...
211👀1
Скрипт предназначен для загрузки исторических данных в формате CSV с биржи Binance в пользовательский символ платформы Metatrader 5. Данный процесс актуален при сложности или нежелательности использования API. Скрипт не поддерживает синхронизацию в реальном времени - только разовую загрузку исторических данных.

Данные могут быть тиковыми или баровыми. Значение параметра tickmode определяет тип данных: true для тиков, false для баров. Необходимо заранее создать пользовательский символ в Metatrader 5 с корректными настройками. Формат данных и информация о загрузке доступны на GitHub и сайте Binance.

Скрипт поддерживает разрядку тиковых данных для уменьшения объема. Это достигается за счет игнорирования микро-колебаний, объем которых затем суммируется до значительных изменений. Для загрузки данных следует использовать minute (M1) баровые данные при необходимости и учитывать возможные о...

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

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

Проверка гипотезы однородности и критерий Смирнова служат инструментами для оценки статуса временных рядов и могут подтвердить или опровергнуть предположения о стационарности.

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

Читать далее...
👍2
Опытные разработчики MetaTrader 5 и новички в алгоритмической торговле! Занимаясь сложным проектом, ключевым моментом становится контроль версий. Переход на GIT в MetaEditor обещает значительные улучшения. Вместо использования SVN, теперь возможна работа с параллельными ветвями кода, что открывает новые горизонты для разработки. Создание отдельных репозиториев или веток для разных проектов позволит улучшить организацию и управление кодом. Тщательно выполняйте шаги по клонированию репозитория и настройке игнорирования файлов, чтобы оптимизировать рабочие процессы. Это значительный шаг к улучшению разработки в MetaTrader 5.

Читать далее...
👌31
Кооперативное мультиагентное обучение с подкреплением (MARL) стало актуальным благодаря его применению в различных сферах: от игр и транспорта до финансовых рынков. Однако возникают сложности, связанные с адаптацией к изменяющимся условиям. Исследователи начали использовать архитектуру по типу Transformer для гибкой адаптации моделей к новым задачам. Это позволило создавать универсальные кооперативные паттерны поведения. Важную роль играет фреймворк HiSSD, который позволяет параллельно изучать общие и специфические навыки. Он обеспечивает проверенное кооперативное поведение агентов в неизвестных условиях без жёстких ограничений и централизованного управления.

Читать далее...
👍4👌21