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

Подпишись, чтобы быть в курсе современных технологий и развития торговых систем.
Download Telegram
Создание индикаторов в MetaTrader 5 часто недооценивается. Многие считают, что не стоит тратить на это время. Причина в том, что они не понимают всей картины. При разработке новой системы обязательно нужно проводить тестирование и настраивать интеграцию с другими процессами. Именно это отличает профессионала от новичка.

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

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

Платформа MetaTrader 5 предоставляет множество инструментов для разработки. Однако соз...

Читать далее...
👍7👌1
Часть 3 "Объектно-Ориентированное Программирование на MQL5" посвящена углубленному изучению ООП на основе языка MQL5. В разработке программ часто возникает необходимость управления множеством сущностей. ООП предлагает улучшенные способы повышения удобства и производительности, строясь на концепции объектов. Объекты в MQL5 – это переменные пользовательского типа, созданные программистом.

Создание пользовательских типов, таких как классы, структуры и объединения, позволяет моделировать объекты, упрощая написание и поддержку программ. Сочетая данные и алгоритмы, пользовательские типы описывают состояние и поведение объектов. В книге описан принцип "разделяй и властвуй", подчеркивающий, что объекты могут быть мини-программами с конкретными задачами.

Объекты можно объединять в сложные системы, создавая продукты и сервисы любой сложности. Часть "Объектно-Ориентированное Программирование ...

Читать далее...
👍43🏆1
Теория хаоса и её применение на финансовых рынках предоставляет уникальные возможности для анализа. Важно понимать основные концепции, такие как аттракторы, фракталы и эффект бабочки. Эти элементы помогают аналитикам и трейдерам находить скрытые закономерности и принимать более обоснованные решения.

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

Использование этих технологий может помочь в разработке более точных торговых стратегий и улучшить управление рисками.

Читать далее...
👍52👀2
Роботы на базе искусственного интеллекта — одни из самых популярных продуктов в маркете торговых приложений, что свидетельствует о высоком спросе на технологии машинного обучения среди инвесторов.

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

✓ Типы нейронных сетей в трейдинге
✓ Строительные блоки сети: слои, функции активации, методы инициализации весовых коэффициентов
✓ Средства платформы MetaTrader 5 для создания мощных алгоритмических стратегий
✓ Архитектурные решения для повышения сходимости моделей
✓ Построение первой модели нейронной сети средствами MQL5 и тестирование в реальных торговых условиях

Прочтите книгу и начните использовать машинное обучение для эффективного трейдинга.

Скачать книгу...
👍74🔥3🏆1
Часть 2. Основы программирования на MQL5 рассматривает ключевые концепции языка. Как и в большинстве языков программирования, MQL5 базируется на нескольких базовых понятиях, которые нужны для создания сложных программ. В этой части читатели познакомятся с типами данных, идентификаторами, переменными, выражениями и операторами. Узнают, как объединять различные инструкции для построения логики программы.

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

Идентификаторы играют ключевую роль - они позволяют обращаться к элементам программы по уникальным именам. Идентификаторы состоят из символов латинского алфавита, цифр и символа подчеркивания, не могут начинаться с цифры и...

Читать далее...
2👍2
Введение 3D Referring Expression Segmentation (3D-RES) становится значимой темой в мультимодальной области, вызывая интерес исследователей. Задача 3D-RES фокусируется на сегментации экземпляров на основе естественно-языковых выражений. Однако текущие методы ограничены сегментацией одного объекта, что является узким местом для их применения.

В реальности часто требуется определить несколько целей, либо цели могут отсутствовать совсем. Существующие модели 3D-RES не справляются с такими ситуациями. Чтобы восполнить этот пробел, был предложен метод Generalized 3D Referring Expression Segmentation (3D-GRES).

Основная задача 3D-GRES – точная идентификация нескольких целей из группы объектов. Метод использует Multi-Query Decoupled Interaction Network (MDIN), который позволяет обрабатывать многообъектные запросы. MDIN помогает разделять запросы и взаимодействовать с суперточками и текстом. ...

Читать далее...
👍4
Первая глава книги "Знакомство с MQL5 и средой разработки" представляет язык и среду разработки MQL5. Одно из ключевых изменений в MQL5 по сравнению с MQL4 — поддержка объектно-ориентированного программирования, аналогичного C++. Этот подход может показаться сложным для новичков в программировании, цель книги — сделать его доступным.

Книга служит дополнением к справочному руководству по MQL5, охватывая все аспекты программирования и подробно объясняя процессы. Разработчики могут выбрать между объектно-ориентированным, процедурным стилями программирования, а также их сочетаниями. Знатоки C++ быстрее освоят MQL5, но должны учитывать различия, чтобы избежать ошибок.

MQL5 предлагает различные типы программ: индикаторы для визуализации данных, эксперты для автоматизации торговли, скрипты для одноразовых задач и сервисы для фоновых процессов. Управление всей торговой системой происходит н...

Читать далее...
👏1
МЕТОДОЛОГИЯ TDD: ПОНИМАНИЕ И РЕФАКТОРИНГ

Методология Test-Driven Development (TDD) позволяет разработчикам писать четко определенные модули и переменные для улучшения тестового покрытия, понимать предметную область и минимизировать сложность. Но она имеет главный недостаток — технический долг, который возникает из-за решения минимально возможных задач. Этот долг часто выражается в избыточных функциях и ненужных классах.

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

Читать далее...
2
В MetaTrader 5 событие NewTick обрабатывается только на символах, к которым привязан советник. Чтобы организовать мультисимвольную торговлю, разработчики прибегают к разнообразным методам. Одна из таких методик — использование библиотеки, создающей мультисимвольную обработку OnTick для всех выбранных торговых символов. Библиотека предлагает удобную обертку вокруг стандартной реализации.

Для иллюстрации работы библиотеки рассмотрим пример мультисимвольного советника, подсчитывающего количество тиков для каждого символа. Для проверки правильности работы советника его следует протестировать в MT5-тестере. В входных параметрах задаются через запятую символы, которые будут обрабатываться мультисимвольным OnTick. Журнал тестера подтвердил полную обработку всех тиковых данных.

С этой библиотекой результат работы советника в тестере становится независимым от основного символа, и ни один т...

Читать далее...
👍53👌1
Технология символьной регрессии (SR) позволяет строить модели, сопоставляя независимые переменные с зависимой в виде дерева выражений. В отличие от традиционных методов, SR начинает процесс без предварительных гипотез, что облегчает её адаптацию к новым данным и изменяющимся условиям рынка. SR предлагает возможность использования множества источников данных для более точной и комплексной аналитики.

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

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

Читать далее...
👍41
MetaTrader 5 build 4585 дополняет ранее выпущенное обновление, где мы существенно улучшили веб-терминал и расширили функции для машинного обучения в MQL5. Сейчас мы исправили ряд ошибок, чтобы сделать вашу работу с платформой еще более комфортной:

• В десктопной платформе исправлены падения, возникавшие в некоторых случаях при остановке профилировки MQL5-программ.
• В MetaEditor исправлены утечки памяти при компиляции MQL5-программ и при работе функций интеллектуального управления кодом.
• В тестере стратегий исправлены падения, возникавшие в некоторых случаях при повторном запуске одиночного прохода тестирования.

Обсудить обновление...
👍6👏31
Подключение к криптобирже Binance для получения котировок в терминале МТ5 возможно с использованием специального скрипта. Для начала необходимо включить опцию WebRequest в настройках советников и добавить адрес сайта: https://api.binance.com. Далее, скрипт BinanceQuotesDownloader нужно разместить в папке Скрипты в каталоге терминала. Запустите его двойным щелчком. В меню Вид выберите Символы, затем в разделе Custom найдите Binance. Выберите нужные криптовалюты двойным щелчком. Чтобы открыть новый график, воспользуйтесь пунктом Файл - Новый график - Custom - Binance. В процессе загрузки котировок вы можете наблюдать его во вкладке Эксперты. Теперь доступны котировки криптовалют, подключение пользовательских индикаторов и анализ рынка.

Читать далее...
👍831🔥1
Метаэвристический алгоритм Artificial Showering Algorithm (ASHA) представлен как новый мощный инструмент для оптимизации. Основанный на имитации водного потока, ASHA помогает находить глобальные минимумы целевых функций, преодолевая трудности локальных экстремумов. Алгоритм использует механизмы исследования и систематического улучшения решений, меняя вероятность движения агентов - капель воды - по мере прогресса итераций. Его способность адаптивно реагировать на динамические изменения делает его эффективным даже в искушенных задачах финансов и научных исследований. ASHA экономит вычислительные ресурсы и улучшает качество решений, особенно актуально в условиях ограниченного времени и ресурсов.

Читать далее...
👍2
Способы обнаружения изменений рыночных трендов. Анализ скользящих средних помогает выявить развороты рынка. Важно учитывать, что длинные периоды скользящих средних могут сигнализировать о значительных изменениях. Свечные модели также эффективны для распознавания разворотов. Линии тренда и уровни поддержки/сопротивления на платформе MetaTrader 5 необходимы для понимания изменения трендов. Проблемы системы возникают из-за колебаний на коротких таймфреймах, меняющих начальные настроения. Внедрение новой функции на MQL5 позволяет улучшить обнаружение разворотов, применяя пересечения EMA и SMA как сигналы для принятия решений.

Читать далее...
👍51
В статье освещены два подхода к объединению одиночных стратегий для улучшения их совместной работы в MetaTrader 5. Первый подход использует результаты оптимизации на всём интервале, второй выделяет небольшой интервал для дополнительных проверок. В статье рассмотрена автоматизация второго этапа оптимизации с применением генетического алгоритма, что упрощает процесс выбора оптимальных экземпляров стратегий. Дополнительно внесены корректировки в работу с базами данных, улучшена обработка данных для форвард-периодов, что позволяет более точно и эффективно формировать группы стратегий. Эти улучшения дают трейдерам и разработчикам ценные инструменты для повышения точности и эффективности торговых стратегий.

Читать далее...
👍3🔥1
В новой статье исследован процесс создания алгоритмического торгового советника на MQL5, акцент на применении псевдокода. Псевдокод служит важным связующим звеном между концептуальной и практической частью разработки, позволяя четко организационно подходить к написанию кода. Метод проектного обучения с последовательным переходом от простого к сложному облегчает понимание MQL5, способствует освоению алгоритмических стратегий и интеграции AI-кода. Такой подход нацелен на создание эффективных и безошибочных алгоритмов, подчеркивает важность освоения традиционных навыков программирования даже с включением в процесс инструментов искусственного интеллекта.

Читать далее...
👍21
Штатная интеграция с Python позволяет легко использовать все многообразие математических и статистически библиотек этого языка для анализа рыночных данных прямо внутри MetaTrader.

Специально для тех, кто интересуется Python, мы собрали более двух сотен полезных видео:

✓ Установка и создание первого скрипта
✓ Создание полезных скриптов для автоматизации ручных операций
✓ Сбор и анализ ценовых данных
✓ Разработка торговых роботов
✓ Интеграция с AI, включая ChatGPT

В отдельной ветке форума вы можете обcудить свои идеи или задать вопросы тем, кто тоже занимается разработкой на Python.

Делитесь опытом и получайте новые знания
4🔥2👍1🏆1
Индикатор предоставляет возможность вычислить уровень риска в процентном соотношении, а также определить предельный размер лота, соответствующий заданному риску. Пользователь должен ввести процент риска и размер стопа в пипсах. Эта функциональность полезна для трейдеров, стремящихся эффективно управлять своими инвестиционными рисками и принимать обоснованные торговые решения. Простой и удобный инструмент, который автоматизирует сложные расчёты, позволяя сосредоточиться на стратегии и анализе рынка. Данные вводятся вручную, после чего пользователь получает оптимальный размер лота, помогающий избежать превышения допустимого риска.

Читать далее...
👍5👏1👌1
от переменной-флага `bAddNeckGradient`. Если флаг установлен, данные внутренней "шеи" передаются в `calcInputGradients` соответствующего слоя для обновления внутренних градиентов. В противном случае градиенты состояния "шеи" сбрасываются. После этого повторяем процесс для блока повторного внимания и корректируем полученные градиенты. Далее переносим градиенты исходных данных через блок первичного внимания, производим остаточное складывание и добавляем обратное масштабирование. Метод `feedBackward` выставляет параметры между внутренним объектом и исходным источником данных. Это позволяет продвинуть градиенты через ещё один проход.

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

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

Подготовка данных включает в себя выбор подходящих признаков и их стандартизацию. Алгоритмы, такие как L-BFGS, используются для оценки параметров, позволяя упростить интерпретацию результатов и избежать переобучения с помощью L2-регуляризации.

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

Особенности эксперта включают динамическую оптимизацию модели, что позволяет адаптироваться к постоянно изменяющимся рыночным условиям. Спе...

Читать далее...
7👍3👏1
Фильтр Ходрика — Прескотта, известный среди трейдеров, основывается на математическом свойстве: вторая производная линейного тренда равняется нулю. В дискретной форме вторая производная выражается как x[0] - 2*x[1] + x[2]. Это выражение может быть рассчитано для прогнозирования, предполагая неизменность тренда: x[0] = 2*x[1] - x[2]. Однако, в базовой форме фильтр оказывается неустойчивым. Необходимо, чтобы все коэффициенты фильтра находились в пределах от -1 до +1. Пользователь может применить несколько вторых производных с различной частотой дискретизации для повышения устойчивости. Например, для предсказания цены открытия: open[-1] = 2*open[0] - open[1] и другие подобные. После этого можно вычислить среднее всех значений для формирования прогноза. Возможные доработки включают добавление весовых коэффициентов или использование адаптивных методов, таких как LWMA, чтобы улучшить точнос...

Читать далее...
🔥5👏2