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

Подпишись, чтобы быть в курсе современных технологий и развития торговых систем.
Download Telegram
Алгоритм стрельбы из лука (Archery Algorithm, AA) стал инновационным подходом к оптимизации, сочетающим детерминированные и стохастические методы. В его основе — принципы стрельбы по целям, где каждый член популяции представляет потенциальное решение. Этот метод эффективно работает в изменчивых условиях, как показывает тестирование на различных функциях. Модифицированная версия алгоритма, включающая параметр наследования inhProbab, повысила эффективность более чем на 13%, что подтверждается результатами тестов. Инструмент может существенно улучшить управление инвестициями, предоставляя гибкие и адаптивные модели для сложных задач.

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

Читать далее...
👍8👏1
Пример добавления кнопок для советников. В этом примере реализована кнопка для закрытия всех активных позиций для всех инструментов. Кроме функционала обработки события кнопки, также реализованы методы для закрытия позиций по имени символа и подсчета количества позиций по имени символа.

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

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

Читать далее...
👍6👏211
Обнаружение объектов в последние годы стало ключевым направлением в компьютерном зрении. Алгоритм PointNet++ анализирует облако точек, но сталкивается с проблемами при распознавании похожих объектов, что ограничивает его использование.

Авторы статьи "HyperDet3D" предлагают использовать сцену-зависимую информацию для устранения неясностей. Алгоритм HyperDet3D предлагает включить знания на уровне сцены в параметры сети для более точного обнаружения объектов.

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

Читать далее...
👏3👍1🔥1
Value at Risk (VaR) - один из основополагающих инструментов в управлении рыночными рисками.

Формула VaR:
VaR = μ - zα * σ
где μ - средняя доходность, zα - квантиль нормального распределения, σ - волатильность.

Важный аспект - использование условного VaR (CVaR):
CVaR = E[L | L > VaR]
где L - величина потерь.

Для оптимального применения VaR рекомендую исторический подход и метод Монте-Карло, что учитывает нелинейные взаимосвязи активов в портфеле.

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

Читать далее...
👍622
Открытие сделки определяется параметром `price_open`, который устанавливает начальную цену ордера. Уровень стоп-лосс задается параметром `price_stoploss`, что помогает минимизировать потери при неблагоприятном движении цены. Параметр `risk_percent_equity` указывает процент риска на каждую сделку относительно общего депозита.

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

Читать далее...
👍41👏1
Мультивалютный советник для MetaTrader 5 — передовое решение для алгоритмической торговли, управляемое с одного графика на 30 парах, включая XAUUSD и XAGUSD. В основе стратегии — индикаторы ZigZag и Awesome Oscillator, фильтрующие сигналы друг друга для повышения точности. Функционал включает:

1. Поддержка мульти- и моновалютной торговли.
2. Настройка торговых временных зон.
3. Многообразие управления сделками: стоп-лосс, тейк-профит и трейлинг.
4. Автоматические и ручные режимы управления ордерами.

Создайте высокоэффективного и надежного советника, вооруженного мощью MQL5.

Читать далее...
👍122👏1🤔1
Создана библиотека для контроля торговых сессий в MQL5. Этот инструмент отслеживает время торговых сессий за все семь дней недели, включая возможность торговли криптовалютами в выходные дни. Поддержка до десяти сессий в день.

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

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

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

Читать далее...
👍8👏1
Функции работы с массивами в MQL5 помогают управлять данными и упрощают код. Рассмотрим несколько ключевых функций:

1. ArrayBsearch. Используется для поиска в отсортированном массиве. Сравнивает значение и возвращает индекс.

Пример:
```mql
double sortedArray[] = {10, 20, 30, 40, 50};
double searchValue = 30;
int resultIndex = ArrayBsearch(sortedArray, searchValue);
Print("Index: ", resultIndex);
```

2. ArrayResize. Позволяет изменять размер динамического массива во время выполнения программы.

Пример:
```mql
double dynamicArray[];
ArrayResize(dynamicArray, 5);
dynamicArray[0] = 10;
Print(dynamicArray[0]);
```

3. ArrayCopy. Копирует элементы одного массива в другой.

Пример:
```mql
double sourceArray[] = {1, 2, 3, 4, 5};
double destinationArray[];
ArrayResize(destinationArray, 5);
ArrayCopy(destinationArray, sourceArray);
```

4. ArrayCompare. Сравнивает два массива и возвращает ре...

Читать далее...
👍3👌1
Мы выпустили бета-версию MetaTrader 5 build 4540 с множеством новых функции и улучшений в веб-версии платформы:

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

В MQL5 стали доступны новые функции для машинного обучения. Появилась интеграция с библиотекой матричных вычислений OpenBLAS, улучшена поддержка ONNX Runtime, что позволят запускать более сложные нейромодели.

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

Установите последнюю бета-версию и оцените новые возможности раньше других.
👍104👌3👏1
Алгоритм советника заключается в следующем: анализируется заданное количество баров во входных параметрах, после чего определяется минимальная и максимальная цена. Как только текущая цена Ask или Bid достигает этих значений, открывается соответствующая позиция. Важно отметить, что советник способен открыть только одну длинную или одну короткую позицию одновременно. Во входных параметрах советника предусмотрена лишь одна настройка - "Количество баров для анализа движения цены". Оптимизация этой настройки помогает адаптировать советника под различные рыночные условия и стратегические предпочтения.

Читать далее...
👍3🔥1
Задача обнаружения объектов в облаке точек становится всё более актуальной. Эффективность такого решения во многом зависит от структурных данных локальных областей. Однако, разреженность и нерегулярность облаков точек могут создать помехи, усложняя задачу.

Традиционные методы свертки используют фиксированные ядра, что приводит к обработке всех соседних точек одинаково, учитывая зашумленные или нерелевантные точки. Напротив, Transformer с механизмом Self-Attention может адаптивно исключать шумные или неактуальные точки.

Тем не менее, стандартный Transformer игнорирует пространственные отношения и информацию о локальной структуре, что важно для распознавания объектов. Чтобы решить эту проблему, авторы предложили SEFormer — трансформер с кодированием структуры, учитывающий направление и расстояние.

SEFormer изучает различные преобразования для точек Value с разных направлений и расст...

Читать далее...
3👍2👏1
Советник разработан для тестирования прибыльности стратегии, предложенной одним из участников форума. Следует отметить, что данный советник только проверяет стратегию и не оценивает качество кода и стиль программирования.

Алгоритм работы: Ежедневно в 15:00 по московскому времени автоматически создаются отложенные ордера Buy Stop и Sell Stop на уровне 100 пунктов (по пятизнаку) от текущей цены.
Для каждого ордера устанавливаются уровни Stop Loss в размере 200 пунктов (по пятизнаку). TakeProfit не применяется. При срабатывании одного из ордеров второй не отменяется.

Если оба ордера не активировались в течение часа, они удаляются в 16:00. Если один или оба ордера сработали, то все открытые позиции закрываются ровно в 16:00, независимо от их текущей прибыли или убытка.

Читать далее...
3👍2👏1
Индикаторы MQL5 — мощные инструменты для визуального анализа рыночных данных и создания торговых стратегий в MetaTrader 5. Они используют математические вычисления для предсказания ценовых движений, работая непосредственно на ценовых графиках. В статье рассматриваются типы индикаторов: встроенные (технические) и пользовательские. Технические индикаторы доступны по умолчанию в MetaTrader 5, тогда как пользовательские можно создать, адаптировав их под свои нужды. Это позволяет трейдерам гибко настраивать расчеты и графическое представление данных, улучшая торговые стратегии. В статье подробно описаны ключевые компоненты и шаги по созданию пользовательского индикатора.

Читать далее...
👍32👏1
MetaTrader 5 обладает встроенными индикаторами, предоставляющими трейдерам аналитическое преимущество. Обсуждаются скользящие средние и индекс относительной силы (RSI). Скользящие средние помогают определить направление тренда и уровни поддержки и сопротивления. RSI - импульсный осциллятор, измеряющий скорость и изменение ценовых движений, полезный для выявления состояний перекупленности и перепроданности.

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

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

Читать далее...
👍62👏2
Эта библиотека снижает количество рутинных действий при работе со входными параметрами, применяя ООП. Пример использования - торговый советник. ООП-подход облегчает интеграцию ТС в сложные системы. Структура ООП-советника для Тестера упрощает код без добавления торговой логики, но работа со входными параметрами осложняет читаемость и увеличивает вероятность ошибок.

Практика показывает, что параметры удобно сохранять и читать в строковом виде. Торговая практика демонстрирует, что сохранение параметров в строках позволяет легко видеть и управлять наборами параметров. Если добавить или убрать параметр, изменения нужно сделать в нескольких местах кода.

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

Читать далее...
👍6👏1
Рассматриваются основные шаги по созданию и развитию советника на основе стратегии FVG и подхода Smart Money. Используется язык MQL5 для разработки в среде MetaTrader 5 (MT5).

Определение FVG: разрыв справедливой стоимости характеризуется масштабными однонаправленными движениями. Стратегия FVG объединяет оценку справедливой стоимости и дисбалансы свечей для выявления торговых возможностей.

План стратегии FVG: выявление бычьего и медвежьего FVG. Устанавливаются входные и выходные сигналы, управление рисками.

Создание советника в MQL5: пошагово описывается процесс кодирования, поиска конфигураций FVG и визуализации на графике. Логика обрезки подтвержденных конфигураций.

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

Читать далее...
👍92👏21
Все чаще в алгоритмической торговле применяется машинное обучение, благодаря чему методы интеллектуального анализа данных помогают находить скрытые паттерны в финансовых данных.

Существует проблема выбора переменных, полезных для достижения определенной цели. Представляем обзор работы "FREL: Стабильный алгоритм выбора признаков" авторов Юн Ли, Дженни Си, Гоцзин Чжоу, Шаша Хуан и Сонгкан Чен. Алгоритм FREL основан на взвешивании признаков как регуляризованном обучении на основе энергии, обеспечивая точность и стабильность.

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

Анализируем реализацию FREL в MQL5 и ее результаты.

Читать далее...
👍84👏2
Подписывайтесь на данные Nasdaq в реальном времени!

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

▪️Проверяйте сигналы других индикаторов. Высокоточные тиковые данные позволяют точнее оценивать достоверность, чтобы повысить эффективность торговой стратегии.
▪️Комбинируйте данные с инструментами MetaTrader 5 для мощного технического анализа. Используйте осцилляторы, индикаторы тренда и объемов вместе с актуальной информацией Nasdaq, чтобы принимать более обоснованные решения.
▪️Создавайте собственные индикаторы и советники. Разрабатывайте и тестируйте уникальные торговые алгоритмы, которые учитывают мельчайшие колебания рынка.

Доступны четыре тарифа: realtime-данные без доступа к истории, а также realtime-данные с историей глубиной 12 месяцев, 36 месяцев или 20 лет. В зависимости от задач, тарифы делятся на профессиональные и непрофессиональные.

Как протестировать новую возможность бесплатно:

1️⃣ Заведите новый демо-счет на сервере MetaQuotes-Demo. Для этого в списке компаний выберите MetaQuotes Ltd. Далее нажмите «Открыть демонстрационный счет» и укажите в форме нужный сервер и свои данные.
2️⃣ В окне «Обзор рынка» нажмите на иконку «Плюс» и добавьте нужный символ.
3️⃣ Когда в списке появится нужный символ — выберите его мышкой и нажмите Enter: выбранный символ должен появиться в списке «Обзора рынка».
4️⃣ Нажмите на нужный символ правой кнопкой мыши и в появившемся меню выберите «Окно графика».

В бесплатном режиме вы будете получать данные с 15 минутной задержкой и не сможете смотреть тиковую историю изменений цены. Чтобы оформить подписку — сделайте двойной клик по нужному символу: откроется окно с доступными тарифами.

Подробнее...
👍32171👏1🎉1