gram news
Аватар канала MQL5 Алготрейдинг

MQL5 Алготрейдинг

@mql5ru

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

19,800подписчиков

Открыть канал

Последние посты

  • MQL5 Алготрейдинг

    23 сент., 12:00

    Оценка торговой стратегии требует учета не только среднего возврата, но и профиля потерь. Классический Actor–Critic оптимизирует ожидание и плохо различает распределения с одинаковым средним, но разным хвостовым риском.В AC-SRM оптимизация переносится на статические спектральные меры риска. Двухуровневый контур фиксирует спектр риска, строит вспомогательную функцию h по распределению полного возврата и обучает политику в расширенном состоянии с учетом накопленного результата и дисконтирования.Практическая реализация опирается на распределительный Критик с FQF: quantiles + вероятностные массы. В OpenCL добавляются выборка из распределения без выгрузки на CPU, расчеты спектральных весов через накопленную Φ(u) и плотность φ(u), а также прямой проход FQF_SRMForward для SRM_MEAN, CVaR, Mean-CVaR, экспоненциального и степенного профилей.👉 Читай | Учебник | @mql5ru
    Иллюстрация к посту канала MQL5 АлготрейдингИллюстрация к посту канала MQL5 Алготрейдинг
  • MQL5 Алготрейдинг

    23 сент., 10:00

    В статье разбирается типовая проблема MT5: в Тестере стратегий CalendarValueHistory() часто не дает полную историю, из-за чего новостной фильтр «молчит», а результаты оптимизации и бэктестов становятся недостоверными. Нельзя проверить блокировку входов, временное снятие SL/TP, закрытие позиций перед важными релизами и корректную обработку перекрывающихся окон.Решение — отделить источник новостей для тестера от терминального календаря: заранее подготовить статический CSV с event_time (UTC), currency, importance (1–3) и именем события, загрузить его один раз в OnInit() и использовать в IsNewsTime() при MQLInfoInteger(MQL_TESTER).Показаны проектирование формата, загрузчик CSV на чистом MQL5 (FileOpen/FileReadString/StringSplit/StringToTime, FILE_COMMON для совместимости), кэш валют для скорости, скрипт экспорта календаря в CSV и методика валидации через логи и тестовый генератор сдел...👉 Читай | Нейросети | @mql5ru
    Иллюстрация к посту канала MQL5 АлготрейдингИллюстрация к посту канала MQL5 Алготрейдинг
  • MQL5 Алготрейдинг

    23 сент., 08:00

    Статья показывает, как превратить индикатор рыночной энтропии (энтропия Шеннона) из визуальной подсказки в воспроизводимого советника для MT5. Ключевая цель — убрать ручную интерпретацию пересечений, моментума, режима и сжатия/расширения, чтобы сигналы были одинаковыми у всех и не терялись на быстрых переходах.Советник на каждом тике дискретизирует бары (вверх/вниз/нейтрально), считает быструю/медленную/базовую энтропию, дивергенцию и моментум, классифицирует режимы (тренд/переход/хаос) и определяет компрессию/декомпрессию. Сигналы строятся из пересечений энтропий и пробоев после сжатия, с фильтрами по режиму и порогам.Торговая часть параметризована (лот, SL/TP, MagicNumber, MinSignalGap), поддерживает опциональный разворот по противоположному сигналу, повторные попытки исполнения ордеров, логирование и графические метки для верификации в тестере и на рынке.👉 Читай | Учебник | @mql5ru
    Иллюстрация к посту канала MQL5 АлготрейдингИллюстрация к посту канала MQL5 Алготрейдинг
  • MQL5 Алготрейдинг

    23 сент., 06:00

    CustomAverage — двухступенчатое адаптивное скользящее среднее: базовый расчет по цене и отдельное вторичное сглаживание результата. Поддерживаются SMA, EMA, SMMA и LWMA на каждом этапе, а также выбор источника цены. Алгоритм выполняет расчет слева направо только по закрытым барам, без перерисовки, и при новом тике обновляет лишь изменившийся диапазон (rates_total/prev_calculated).Линия меняет цвет по знаку наклона, что упрощает чтение направления. Пересечения close и линии отмечаются стрелками: закрытие выше после закрытия ниже — сигнал вверх, зеркально — вниз. Дополнительно выводится текущая числовая метка значения.Параметры включают периоды и методы обоих этапов, цвета, коды стрелок, толщину линии и управление отображением. SmoothPeriod 0/1 отключает второй этап и оставляет обычное MA для сравнения.👉 Читай | Нейросети | @mql5ru
    Иллюстрация к посту канала MQL5 АлготрейдингИллюстрация к посту канала MQL5 Алготрейдинг
  • MQL5 Алготрейдинг

    23 сент., 04:00

    Ошибка 130 «Недопустимые стоп-ордера» и «тихие» отказы выставления ордера часто связаны не с логикой EA, а с торговыми ограничениями сервера: stop level, freeze level, минимальный шаг лота. Эти параметры зависят от инструмента и брокера и могут меняться без уведомления в терминале.Скрипт выводит спецификации по символам без торговых операций и без включения алгоритмической торговли. Можно задать список через запятую или использовать весь Market Watch. Печатаются точность, tick size/value, контракт, min/step/max lot, спред и его тип, режим исполнения, свопы, а также маржа на минимальный лот относительно свободной маржи.Ключевое — расчёт допустимого уровня стопа: берётся большее из stop/freeze, добавляется 1 point, результат возвращается в PRICE. Это устраняет ошибки на 5-значных котировках и позволяет в EA нормализовать стоп до ближайшего принятого сервером значения.Есть CSV-эксп...👉 Читай | Справка | @mql5ru
    Иллюстрация к посту канала MQL5 АлготрейдингИллюстрация к посту канала MQL5 Алготрейдинг
  • MQL5 Алготрейдинг

    22 сент., 20:00

    Разобран внутридневной подход к отскокам от EMA(50), где ключевым считается не конкретный свечной паттерн, а поведенческая «реакция» цены на динамическую поддержку/сопротивление. Ручной просмотр истории показывает вариативность: пин-бары, поглощения, двойные вершины/дна и двухэтапные ретесты, поэтому правила сигнала должны быть гибкими.Реализация в MQL5 строится модульно: определение смещения тренда относительно EMA, фиксация контакта через логику «прокол и закрытие обратно», затем подтверждения (свинг-пробой, пин-бар, второй заход) и контекстный фильтр повторной защиты уровня. В коде используются iMA/CopyBuffer, разбор OHLC, CTrade, контроль нового бара, исключение дублей, SL/TP и расчёт лота по фиксированному объёму или риску.Тестирование выполнено визуально в MT5 с реальными тиками для проверки корректности срабатываний и устойчивости к внутрисвечному шуму перед дальнейшей стат...
    Иллюстрация к посту канала MQL5 АлготрейдингИллюстрация к посту канала MQL5 Алготрейдинг
  • MQL5 Алготрейдинг

    22 сент., 18:00

    Отдельные бэктесты советников часто занижают реальный риск: стратегии могут синхронно терять на одном макродвижении, даже если торгуют разные пары и ТФ. Ключевой показатель здесь — корреляция доходностей; при |r| ≥ 0,60 портфель фактически дублирует экспозицию, а отрицательная корреляция работает как естественный хедж.В статье собран практический PortfolioScorer на MQL5 без внешних библиотек. Скрипт читает дневной P&L из CSV-отчетов, строит матрицу корреляции Пирсона, анализирует торговое покрытие по часам и дням недели и оценивает диверсификацию по классам активов.Результат — сводная оценка (A+…F) и конкретные подсказки: какие стратегии избыточны, где есть “слепые зоны” по времени, и что добавить в портфель, чтобы повысить устойчивость, а не только прибыльность.👉 Читай | Фриланс | @mql5ru
    Иллюстрация к посту канала MQL5 АлготрейдингИллюстрация к посту канала MQL5 Алготрейдинг
  • MQL5 Алготрейдинг

    22 сент., 16:00

    Статья закрывает критичную дыру новостного фильтра в MT5: при снятии SL/TP на время новостей состояние хранилось только в памяти, и после перезапуска советник терял список затронутых позиций. Итог — стопы могли не вернуться, оставляя сделки без защиты.Решение — слой постоянного состояния на глобальных переменных терминала. Сохраняются флаг приостановки, счетчик записей и по каждой позиции: тикет, исходные SL и TP. Данные раскладываются по именованным ключам с индексами и префиксом для предотвращения коллизий; тикеты безопасно кодируются как double.После рестарта OnInit() загружает сохраненные записи в savedStops[] и восстанавливает newsSuspended, но не возвращает стопы до штатного выхода из новостного окна. По завершении цикла переменные удаляются, чтобы исключить устаревшее состояние. Это дает детерминированное восстановление без файлов и лишнего I/O.👉 Читай | Сигналы | @mql5ru
    Иллюстрация к посту канала MQL5 АлготрейдингИллюстрация к посту канала MQL5 Алготрейдинг
  • MQL5 Алготрейдинг

    22 сент., 14:00

    Статья разбирает, почему «наивные» сетки действительно часто заканчиваются разорением, и показывает инженерный путь к жизнеспособной сеточной торговле: ограничения, перезапускаемые циклы и фильтрация запуска по режиму рынка. Ключевое отличие от мартингейла — квадратичный рост убытка по уровням сетки вместо экспоненциального, что дает время для контроля риска.В основе советника — менеджер циклов с режимами BGT (флет), TGT (тренд) и MGT (возврат к среднему после тренда). Риск оценивается диагностической формулой экспозиции L_t (O(1) по экстремумам сессии), а реальная защита реализована аварийным выключателем по просадке эквити на каждом тике.Практические элементы: шаг сетки от ATR, лот от эквити, детектор структурных сдвигов CUSUM, сохранение состояния и конвейер диагностики/калибровки на Python. Полный код и модульная архитектура рассчитаны на воспроизводимые тесты и донастройку по...
    Иллюстрация к посту канала MQL5 АлготрейдингИллюстрация к посту канала MQL5 Алготрейдинг
  • MQL5 Алготрейдинг

    22 сент., 12:00

    Слишком «идеальный» бэктест часто указывает на переобучение: модель запоминает шум исторических данных, а не устойчивую структуру. Риск усиливается при массовом переборе правил и параметров, когда победитель становится статистическим артефактом из-за множественных проверок.Переобучение формируется разными каналами: подглядывание в данные, чрезмерная подгонка, накопление степеней свободы исследователя. Простое train/test-разбиение не закрывает эти классы ошибок.Для защиты используются три инструмента. V-in-V вводит трехслойные пулы данных и дисциплину фиксации решений, включая anchored walkforward для набора независимых вневыборочных окон. CPCV устраняет временные утечки в кросс-валидации через purging и embargo с учетом горизонта меток и окон признаков. CSCV применяется как итоговый количественный аудит отбора моделей.👉 Читай | Календарь | @mql5ru
    Иллюстрация к посту канала MQL5 АлготрейдингИллюстрация к посту канала MQL5 Алготрейдинг
  • MQL5 Алготрейдинг

    22 сент., 10:00

    Статья разбирает, почему трейдеры ошибаются при работе с PD-массивами и дисбалансами: неверно выбирают зоны, торгуют против сценария и получают просадки, после чего считают метод «неработающим». Дается набор признаков, по которым можно быстро проверить валидность PD-массива/дисбаланса и снизить импульсивные входы.Ключевые элементы: дисбаланс как следствие импульсного движения и «незаполненного» диапазона, сдвиг рыночной структуры как подтвержденная смена HH/HL на LH/LL после снятия ликвидности, PD-массивы как деление свинга на premium/discount, а также фрактальность и OTE (зона 62–70% по Фибо) для точных входов.Практическая часть — советник для MT5: на W1/D1 определяет тренд и режим рынка через SMA(9)/SMA(21), строит PD-зоны по импульсным расширениям, затем на младших ТФ ищет дисбалансы в нужной зоне и выполняет покупки только в discount, продажи — только в premium. Это полезно дл...
    Иллюстрация к посту канала MQL5 АлготрейдингИллюстрация к посту канала MQL5 Алготрейдинг
  • MQL5 Алготрейдинг

    22 сент., 08:00

    Часть 2 дополняет новостной фильтр MT5: вместо закрытия позиций перед важными событиями вводится слой управления уже открытыми сделками. На время короткого новостного окна советник один раз сохраняет исходные SL/TP по каждому тикету, снимает уровни у брокера и помечает позиции как “приостановленные”.После окончания окна SL/TP восстанавливаются детерминированно: если цена не прошла исходные уровни — возвращаются точные значения; если прошла — ставится ближайший допустимый уровень с учетом минимальной дистанции брокера. Логика построена на переходах состояния, чтобы исключить повторные модификации.Практика: фильтрация по magic number, явные ограничения (односимвольная работа, временная потеря защиты, риск гэпов). Это снижает ложные срабатывания стопов из‑за спредов и всплесков, не пытаясь предсказывать рынок.👉 Читай | VPS | @mql5ru
    Иллюстрация к посту канала MQL5 АлготрейдингИллюстрация к посту канала MQL5 Алготрейдинг
  • MQL5 Алготрейдинг

    22 сент., 06:00

    SessionORB_EA автоматизирует стратегию прорыва диапазона открытия выбранной сессии. В первые N минут после старта фиксируются High/Low по данным M1, затем выставляются уровни триггера прорыва с буфером. Сделка открывается только при закрытии бара за уровнем, а не по проколу.Размер позиции рассчитывается от сессионного риска (процент от баланса) либо задаётся фиксированным лотом. Стоп-лосс ставится за противоположной границей диапазона с дополнительным буфером, тейк-профит задаётся через коэффициент reward/risk. По умолчанию — одна сделка на сессию и ограниченное торговое окно после формирования диапазона.Диапазон всегда измеряется на M1, а подтверждение прорыва зависит от таймфрейма графика, что позволяет регулировать частоту сигналов. Настройка времени выполняется в серверном времени; для ECN/сырого спреда обычно требуется увеличить буферы. Для тестирования предпочтителен режим р...
    Иллюстрация к посту канала MQL5 АлготрейдингИллюстрация к посту канала MQL5 Алготрейдинг
  • MQL5 Алготрейдинг

    22 сент., 04:00

    Reverse RSI Bands — пользовательский индикатор, который алгебраически обращает расчёт RSI и выводит на основной график ценовые уровни, при которых RSI достигнет заданных зон перекупленности и перепроданности. Вместо отдельного окна с осциллятором отображаются точные пороги цены для выбранных значений RSI.В версии применены выводы на основе рекурсивного сглаживания Уайлдера. Расчёт целевой цены для текущего бара опирается на верифицированное состояние предыдущего бара, что устраняет перерисовку и сохраняет соответствие стандартному RSI в MT5.Параметры: период RSI (по умолчанию 14), уровни 70/30, тип применяемой цены (обычно Close). Практика: работа на любых символах, чаще H1/H4; контроль касаний/пробоев верхней и нижней полос; размещение лимитных ордеров вблизи соответствующих уровней.👉 Читай | Форум | @mql5ru
    Иллюстрация к посту канала MQL5 АлготрейдингИллюстрация к посту канала MQL5 Алготрейдинг
  • MQL5 Алготрейдинг

    21 сент., 08:00

    В системе репликации/моделирования MetaTrader 5 класс C_Replay упрощён и разделён на несколько компонентов, чтобы ускорить добавление новых функций. Следующий этап — корректная передача тиковых данных и визуализация изменений BID/ASK в стандартных окнах платформы.Тиковые графики в «Обзоре рынка», книге заявок и системе ордеров отображают не «сделки», а изменение котировок. Для приближения поведения к реальному рынку требуется поддержка BID/ASK даже при отсутствии объёма.Первая версия строится на реальных тиках из файлов: переработано чтение данных без игнорирования BID/ASK и без накопления. В C_Replay изменена логика закрытия бара и добавлена загрузка тиков через CustomTicksAdd с принудительным условием ненулевых миллисекунд, иначе данные не попадают в «Обзор рынка». Известен дефект таймера и ограничения при быстрой перемотке; исправления вынесены в следующую часть.👉 Читай | VPS |
    Иллюстрация к посту канала MQL5 АлготрейдингИллюстрация к посту канала MQL5 Алготрейдинг
  • MQL5 Алготрейдинг

    21 сент., 06:00

    Round Trip Cost Reconciler — бесплатная read-only утилита для MT5, ориентированная на учет и диагностику сделок без ограничений «сырого» экспорта. Формирует два CSV: список отфильтрованных сделок и агрегирование buy/sell по DEAL_POSITION_ID.Частичные исполнения сводятся в цены входа/выхода, взвешенные по объему. Комиссия, своп и сборы выводятся отдельно от валового результата, что упрощает сверку издержек и чистого PnL. Доступны статусы COMPLETED, OPEN_OR_INCOMPLETE, EXCESS_EXIT, COMPLEX_REVERSAL для нетривиальных ситуаций и разворотов INOUT.Параметры включают окно истории до 3650 дней, охват символов, фильтр по magic, выбор двух имен CSV, общую папку и разделитель. Утилита читает историю и пишет локальные файлы, не использует DLL, WebRequest и внешние сервисы; качество данных зависит от доступной истории у терминала и брокера.👉 Читай | Календарь | @mql5ru
    Иллюстрация к посту канала MQL5 АлготрейдингИллюстрация к посту канала MQL5 Алготрейдинг
  • MQL5 Алготрейдинг

    21 сент., 04:00

    Инспектор расписания торговых сессий для MT5 читает актуальное недельное расписание, которое брокер публикует для каждого символа. Фиксированные шаблоны для лондонской, нью-йоркской и других сессий не используются. Если расписание не предоставлено, возвращается SCHEDULE_UNAVAILABLE без попыток подставить «резервные» часы.Область проверки задаётся параметром InpSymbolScope: текущий символ графика, все видимые символы «Рынка» или пользовательский список (InpCustomSymbols, через запятую). Для каждого символа перечисляются сессии из SymbolInfoSessionTrade, проверяется попадание текущего серверного времени в окно сессии, рассчитывается ближайший переход открытия/закрытия, учитываются торговый режим и синхронизация. Сессии через полночь помечаются как (+1d).Опционально формируется CSV-снимок в Common Files (InpExportCSV, префикс InpFilePrefix). InpMaximumSessionsPerDay ограничивает пере...
    Иллюстрация к посту канала MQL5 АлготрейдингИллюстрация к посту канала MQL5 Алготрейдинг
  • MQL5 Алготрейдинг

    20 сент., 08:00

    В тестере стратегий MetaTrader значение OnTester result задается функцией OnTester(), возвращающей double. Без нее отчет показывает 0, даже если советник активно торгует.Примерная база для проверки метрик: случайный вход через MathRand() (четное — buy, нечетное — sell), фильтрация крайних значений 0/32767, трейлинг-стоп по ATR(1) с EMA(8) и ограничение по времени (вход 11:00–16:00, сопровождение до 16:30 и обязательное закрытие).Далее рассматриваются три варианта оценки: простое среднее risk/reward, модифицированный индекс CPC (произведение факторов с заменой profit factor на min(profit factor, recovery factor)) и SQN Ван Тарпа с помесячной агрегацией и штрафом за нестабильность результатов.Отдельно показан практичный прием для include: переименование OnTester через define, чтобы избежать дублирования и быстро переключать реализацию.👉 Читай | Котировки | @mql5ru
    Иллюстрация к посту канала MQL5 АлготрейдингИллюстрация к посту канала MQL5 Алготрейдинг
  • MQL5 Алготрейдинг

    20 сент., 06:00

    Скрипт Broker Execution Diagnostics MT5 предназначен только для чтения и используется для диагностики параметров символа, которые часто приводят к ошибкам в расчете объема, некорректным стоп-ордерам и несогласованному риск-менеджменту.В отчете выводятся разрядность, пункт, размер и стоимость тика, текущий спред в пунктах, ограничения по объему (min/max/step), нормализованный результат для запрошенного объема, уровни стопов и заморозки в пунктах и ценовом расстоянии, режимы торговли и исполнения. Дополнительно проверяется дистанция от входа до стоп-лосса и опционально оценивается OrderCalcProfit в валюте счета.Входные параметры: InpRequestedVolume, InpEntryPrice, InpStopLossPrice, InpShowOnChart. Скрипт компилируется в MetaEditor, запускается на нужном символе, отчет доступен в журнале экспертов или на графике. Ордеры не отправляются и не изменяются.👉 Читай | Маркет | @mql5ru
    Иллюстрация к посту канала MQL5 АлготрейдингИллюстрация к посту канала MQL5 Алготрейдинг
  • MQL5 Алготрейдинг

    20 сент., 04:00

    Индикатор Session Sweep Reversal Detector фиксирует максимум и минимум завершённой торговой сессии и отслеживает возврат цены в диапазон после пробоя. Логика рассчитана на типичный сценарий: цена выносит стопы за границей сессии и закрывается обратно внутри, что чаще указывает на краткосрочное истощение импульса, а не на устойчивый прорыв.Сигнал формируется только при выполнении двух условий: выход за максимум/минимум больше заданного буфера SweepBufferPips и обратное закрытие внутри диапазона за ограниченное число баров ReversalBars. Если возврата нет, событие игнорируется как потенциальный реальный пробой.Параметры: часы сессии InpSessionStartHour/InpSessionEndHour, буфер 2–3 пункта как базовый ориентир для мажоров, лимит подтверждения 1–3 бара и число отображаемых сессий. Практически стрелки стоит трактовать как триггер для проверки подтверждения на младшем ТФ и реакции цены у ...
    Иллюстрация к посту канала MQL5 АлготрейдингИллюстрация к посту канала MQL5 Алготрейдинг