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

Подпишись, чтобы быть в курсе современных технологий и развития торговых систем.
Download Telegram
Алгоритм COMBI является базовым методом группового учета аргументов (МГУА). Он работает с выборкой данных, деленной на обучающую и тестовую части. Обучающая подвыборка оценивает коэффициенты полинома, а тестовая выбирает оптимальную модель.

Ключевое отличие COMBI от многослойных итеративных алгоритмов (MIA) в сетевой структуре: один слой, количество узлов соответствует количеству входов. Каждый узел представляет собой модель-кандидат. COMBI оценивает все возможные комбинации переменных, обеспечивает линейную структуру модели.

Реализация COMBI на языке MQL5 основана на классе GmdhModel. Комбинаторный селективный алгоритм (MULTI) улучшает эффективность COMBI за счет многоуровневых процессов. MULTI выбирает лучшие модели на каждом уровне, добавляет переменные, избегая полного поиска.

Применение алгоритмов МГУА, например, для прогнозирования цен, демонстрирует их потенциал в финансов...

Читать далее...
👍31👏1
Рассмотрим возможность использования среды разработки MQL5 для быстрой проверки торговых концепций. Мастера MQL5 позволяют создать эффективных роботов с минимальными ошибками. Сегодня затронем вопросы мультивалютной торговли.

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

Изменения в стандартных классах ExpertBase, ExpertTrade и Expert помогут реализовать мультивалютную торговлю. Правильное использование массивов символов и управление торговыми сигналами минимизирует риски и повысит эффективность стратегий.

Читать далее...
👍51👏1
Стратегия: "Среднесрочный трендовый трейдинг"

Цель: Определение среднесрочных трендов и моментов входа в рынок при помощи скользящих средних и индикатора относительной силы (RSI).

Индикаторы:
1. Скользящие средние:
- Длинная: 50-периодная SMA
- Короткая: 20-периодная SMA
2. Индикатор относительной силы (RSI)

Правила входа:
- Покупка: Короткая SMA выше длинной, RSI выше уровня RSIOversoldLevel.
- Продажа: Короткая SMA ниже длинной, RSI ниже уровня RSIOverboughtLevel.

Управление позицией:
- Размер позиции: Фиксированный.
- Стоп-лосс: Ниже (для покупок) или выше (для продаж) последнего экстремума.
- Тейк-профит: Вдвое больше стоп-лосса.

Управление риском:
- Риск на каждой сделке: 1-2% от капитала.
- Рекомендация: Тестирование на исторических данных и консультирование с финансовым специалистом перед использованием стратегии. Торговля сопряжена с рисками.

Читать далее...
👍64🔥1
Алгоритм стрельбы из лука (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