Статьи о тестировании стратегий на языке MQL5

icon

Как разработать, написать и протестировать торговую стратегию, как найти оптимальные параметры системы и как анализировать полученные результаты? Платформа MetaTrader предлагает разработчикам торговых роботов широкие возможности для быстрой и точной проверки торговых идей.  Узнайте с помощью этих статей, как тестировать мультивалютных роботов и как использовать для оптимизации возможности MQL5 Cloud Network.

Разработчикам автоматических торговых систем рекомендуется начать с изучения основ тестирования и алгоритмов генерации тиков в тестере стратегий.

Новая статья
последние | лучшие
preview
Моделирование рынка: Position View (XVII)

Моделирование рынка: Position View (XVII)

В предыдущей статье мы сделали так, чтобы индикатор отображал финансовый результат. Однако не всем нравится использовать этот режим отображения. Причины могут различаться от трейдера к трейдеру, хотя в некоторых случаях они кажутся мне вполне разумными и оправданными. Адаптировать код, чтобы предоставить такую возможность, — отнюдь не одна из самых сложных задач. На самом деле это довольно просто. В этой статье мы рассмотрим, как это сделать.
preview
Создание HTML-дашборда для Тестера стратегий и анализа проп-фирменных испытаний в MQL5

Создание HTML-дашборда для Тестера стратегий и анализа проп-фирменных испытаний в MQL5

В этой статье показано, как создать многоразовый модуль оценки проп-фирм для советников MQL5 и экспортировать результаты на HTML-дашборд. Модуль отслеживает баланс и капитал во время тестирования стратегий на исторических данных, имитирует одиночные или скользящие серии испытаний, проверяет целевую прибыль, дневную и общую просадку, а также минимальное количество торговых дней, после чего выводит как итоговый отчет, так и отчет в HTML-формате, который можно открыть в браузере.
preview
Изучение стандартной библиотеки MQL5 (Часть 13): Применение библиотеки математических решателей в торговле

Изучение стандартной библиотеки MQL5 (Часть 13): Применение библиотеки математических решателей в торговле

Мы представляем полный рабочий процесс для адаптивной фильтрации в MQL5 с использованием решателя CNlEq, подобного алгоритму Левенберга — Марквардта. Советник подбирает параметры модели VAMAC — две экспоненциальные скользящие средние (EWMA) с масштабированием на основе ATR — путем передачи остатков и Якобиана через цикл механизма обратного обмена с решателем CNlEq, с возможностью использования численных или аналитических производных. Код, инструкции по настройке и тесты по паре GBPUSD на таймфрейме H1 показывают, как заменить статические пороги динамической переоценкой на закрытии каждого бара.
preview
Моделирование рынка: Position View (XVIII)

Моделирование рынка: Position View (XVIII)

В этой статье я показал, в максимально доступной форме, как можно модифицировать и доработать код, способный решать определённые задачи, при этом минимально изменяя уже существующий код. Мы добавим индикатор объема и одновременно не позволим пользователю или трейдеру удалять объекты, создаваемые индикатором позиции.
preview
Моделирование рынка: В единстве — сила (I)

Моделирование рынка: В единстве — сила (I)

Мы подходим к финишной прямой. Разработка системы репликации/моделирования почти завершена. Конечно, нам ещё предстоит доделать кое-что, но по сравнению со всем, что мы уже сделали, реализовать оставшееся будет несложно. Однако всё, что будет показано в этой статье, необходимо как следует усвоить и понять. Поэтому я желаю вам приятного чтения и, прежде всего, получить удовольствие от этого последнего этапа пути.
preview
Моделирование рынка: В единстве — сила (II)

Моделирование рынка: В единстве — сила (II)

До сих пор приложение, разрабатываемое в рамках этой серии статей, было сосредоточено исключительно на моделировании графической части. Однако, чтобы получить более полную систему, в которой мы сможем протестировать советник в рамках сервиса репликации/моделирования, нам также необходимо смоделировать торговый сервер. Вы заметите, что это моделирование будет включать только самые необходимые элементы. Тем не менее вы, уважаемый читатель, сможете дополнить недостающие части. Поскольку эти дополнительные компоненты не влияют на то, что я хочу показать, у нас уже более чем достаточно для реализации задуманного.
preview
Моделирование рынка: Position View (XIX)

Моделирование рынка: Position View (XIX)

Один из вопросов, который доставлял мне наибольший дискомфорт, заключается в том, что класс C_ElementsTrade содержит код для обращения к позициям. Не воспринимайте это как ошибку, потому что на самом деле это не так. Однако из-за этого некоторые задачи, которые нам предстоит выполнить позже, становятся более рискованными с точки зрения ошибок. Вся работа по реализации индикатора позиции велась с расчетом на его использование в сервисе репликации/моделирования. Однако при запуске в этой среде у нас не будет никакого доступа к реальной позиции. Следовательно, любой вызов библиотеки MQL5, предназначенный для получения данных о позиции, не окажет никакого влияния на код.
preview
Автоматизация индикатора рыночной энтропии: Торговая система на основе теории информации

Автоматизация индикатора рыночной энтропии: Торговая система на основе теории информации

В этой статье представлен советник, автоматизирующий ранее представленную методику рыночной энтропии. Он рассчитывает быструю и медленную энтропию, моментум и состояния сжатия, подтверждает сигналы и исполняет ордера с уровнями SL/TP и опциональным разворотом позиции. В результате получается практичный настраиваемый инструмент, применяющий сигналы на основе теории информации без ручной интерпретации.
preview
Реализация алгоритма усечённого метода Ньютона с сопряжёнными градиентами в MQL5

Реализация алгоритма усечённого метода Ньютона с сопряжёнными градиентами в MQL5

В статье реализован оптимизатор на основе усечённого метода Ньютона с сопряжёнными градиентами (TNC) с покомпонентными ограничениями на переменные, а также подробно описаны его основные компоненты: масштабирование, проекция на границы, поиск по направлению и произведения матрицы Гессе на вектор с помощью конечных разностей. Она предоставляет обёртку целевой функции, поддерживающую аналитические или численные производные, и проверяет работоспособность решателя на тестовой функции Розенброка. Пример логистической регрессии демонстрирует, как использовать TNC в качестве непосредственной замены LBFGS.
preview
Использование Экономического календаря MQL5 для фильтрации новостей (Часть 4): Точное тестирование на истории со статическими данными

Использование Экономического календаря MQL5 для фильтрации новостей (Часть 4): Точное тестирование на истории со статическими данными

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

Разработка индикатора рыночной энтропии: торговая система, основанная на теории информации

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