Схема стратегии «Фракталы с минимальным расстоянием»
Фрактал — это свеча, которая стоит выше или ниже двух соседних свечей с каждой стороны, и назвать её фракталом можно только после того, как эти более поздние свечи появились. Схема находит фракталы обоих видов, запоминает цену последнего из каждого цвета и не торгует до тех пор, пока эти два уровня не разойдутся достаточно далеко, чтобы между ними имело смысл торговать. Все измерения ведутся по завершённым свечам, поэтому уровень фиксируется в момент появления и потом уже не пересматривается.
Обзор стратегии
- Одна серия свечей питает всю схему и выдаёт только завершённые свечи, поэтому ни один уровень, ни одно расстояние и ни одна заявка не строятся на цене, которую следующий тик ещё может отменить.
- Previous value возвращает свечу на один бар назад, а Highest и Lowest измеряют экстремум пяти свечей, заканчивающихся на ней, — это окно целиком лежит в прошлом.
- Второй Previous value возвращает свечу на три бара назад — точный центр этого окна, и два конвертера читают её максимум и её минимум.
- Когда максимум центральной свечи совпадает с наибольшим максимумом окна, схема получает верхний фрактал, а зеркальная проверка по минимуму отмечает нижний. Защёлкивающаяся переменная хранит цену каждого фрактала, и, поскольку защёлка игнорирует ложное сравнение, сохранённая цена меняется только на баре, где фрактал действительно сформировался.
- Вторая пара переменных заново выдаёт оба сохранённых уровня на каждой свече, поэтому и формула, измеряющая разрыв между ними, и сравнение с минимальным расстоянием дают ответ на каждом баре, а не только на барах с фракталом.
- Каждая сторона объединяет собственную проверку фрактала с этой проверкой расстояния в логическом условии; принятый сигнал сначала закрывает противоположную позицию и только затем открывает новую — обе операции по рынку.
- Position protection следует за каждым исполнением и рассчитывает выход от закрытия каждой завершённой свечи, поэтому take-profit или stop-loss проверяются один раз за бар.
- Свечи, оба экстремума, оба сохранённых уровня и все исполнения выводятся в одну область графика, поэтому два уровня и разрыв между ними читаются прямо с картинки.
Правила входа и выхода
- Вход в лонг: Подтверждён нижний фрактал — минимум три бара назад является наименьшим в окне из пяти свечей, заканчивающемся один бар назад, — и расстояние между последним верхним и последним нижним уровнем не меньше минимального расстояния. Схема закрывает короткую позицию, если она открыта, а затем покупает заданный объём заявки по рынку.
- Вход в шорт: Подтверждён верхний фрактал — максимум три бара назад является наибольшим в том же окне — при том же условии по расстоянию. Схема закрывает длинную позицию, если она открыта, а затем продаёт заданный объём заявки по рынку.
- Выход: Сделку могут завершить две вещи. Фрактал противоположного цвета закрывает то, что открыто, ещё до отправки нового входа — именно поэтому блок закрытия стоит перед блоком открытия на каждом сигнале. Независимо от этого Position protection закрывает позицию по take-profit или stop-loss, отсчитанному в процентах от цены исполнения и проверяемому по закрытию каждой завершённой свечи.
Параметры
| Параметр | По умолчанию | Описание |
|---|---|---|
| Candles | 00:05:00 | Таймфрейм единственной серии свечей. Выдаются только завершённые свечи, поэтому решение принимается один раз за бар. |
| Upper Fractal Length | 5 | Количество свечей в окне, с наибольшим максимумом которого сравнивается центральная свеча. |
| Lower Fractal Length | 5 | Количество свечей в окне, с наименьшим минимумом которого сравнивается центральная свеча; держите его равным верхнему, чтобы фрактал оставался симметричным. |
| Fractal Shift | 3 | На сколько баров назад расположена центральная свеча. При окне из пяти свечей, сдвинутом на один бар, значение три ставит центр ровно в его середину. |
| Minimum Distance | 100 | Наименьший разрыв между последним верхним и последним нижним уровнем, при котором вход ещё разрешён. Это абсолютное расстояние в ценовых единицах инструмента, поэтому его приходится пересчитывать всякий раз, когда схема переносится на инструмент, котируемый в другом порядке величин. |
| Order Volume | 1 | Объём заявки, в лотах. |
| Take Profit, % | 2 | Дистанция take-profit, в процентах от цены исполнения, проверяется по закрытию каждой завершённой свечи. |
| Stop Loss, % | 1 | Дистанция stop-loss, в процентах от цены исполнения, проверяется по закрытию каждой завершённой свечи. |
Детали диаграммы
- Блок индикатора помечает всё, что до него доходит, как завершённое значение — он не умеет отличать формирующуюся свечу от закрытой. Именно выдача только завершённых свечей не пускает в окно недоделанные максимумы и минимумы, которые незаметно сдвинули бы экстремум, а на следующем обновлении были бы перезаписаны.
- Та же подписка сохраняет заявки корректными: заявка, построенная по обновлению незавершённой свечи, несёт время открытия этого бара и отклоняется как пришедшая из прошлого.
- Окно сдвинуто на один бар назад, чтобы оцениваемая свеча оказалась ровно в его середине — по две свечи до и после. Поэтому фрактал никогда не объявляется раньше, чем через три бара после того, как он состоялся, и после этого уже не пересматривается.
- Триггер защёлки отбрасывает ложное сравнение вместо того, чтобы сохранить значение, — это и превращает «проверка прошла на этом баре» в «это последняя цена, на которой она прошла». Ни один из уровней не существует до своего первого фрактала, поэтому вход невозможен, пока не появились фракталы обоих цветов.
- Оба блока входа торгуют по рынку и настроены не требовать, чтобы стратегия была в онлайне, поэтому схема ведёт себя на записанной истории так же, как в реальной торговле.
Использование
Импортируйте файл .json в Designer, прогоните схему на исторических данных в тестере, затем подстройте параметры или сами кубики под свой инструмент, прежде чем торговать вживую.