Схема стратегии Monday Weakness
Эта схема торгует по жёсткому недельному календарю. У каждой стороны недели свой день: в день шорта она продаёт, когда цена закрытия находится ниже SMA 20, а в день покрытия откупает этот шорт обратно; в день лонга она покупает, когда цена закрытия находится выше SMA 20, а в день выхода продаёт этот лонг. День недели считывается прямо со свечи как число, поэтому четыре календарных правила — это четыре обычных сравнения, а окно входа по часам удерживает недельное решение внутри активной части дня.
Обзор стратегии
- Пятиминутные свечи поступают только завершёнными. Два блока Converter читают одну и ту же свечу: один берёт цену закрытия, другой — день недели времени открытия, который приходит числом, где воскресенье — 0, а суббота — 6.
- Четыре блока Variable хранят четыре календарных дня — шорт, покрытие, лонг и выход, — а четыре блока Comparison, настроенные на Equal, превращают номер дня в четыре сигнала. На любой отдельной свече истинным может быть ровно один из них, и именно это не даёт четырём ветвям конкурировать между собой.
- SMA 20 считается по тем же свечам и ничего не публикует, пока не сформирована, поэтому первые двадцать свечей прогона не дают сигнала вовсе. Её читают два блока Comparison: один истинен, пока цена закрытия ниже средней, другой — пока она выше.
- Блок Position, Variable со значением ноль и блок Comparison, настроенный на Equal, дают проверку на отсутствие позиции. Обе ветви входа требуют её, поэтому неделя, уже находящаяся в рынке, не может набрать вторую позицию поверх первой.
- Current time подаёт данные в Working time, который истинен между 08:00:00 и 20:00:00. Обе ветви входа требуют и это окно, поэтому недельная позиция никогда не открывается на тонкой ночной свече. Два выхода намеренно оставлены вне окна: всё, что открыто, должно быть закрыто в свой календарный день, в какой бы час ни появился сигнал.
- Два блока Logical condition AND собирают входы. Ветви шорта нужны день шорта, закрытие ниже SMA 20, отсутствие позиции и открытое окно; ветви лонга — день лонга, закрытие выше SMA 20 и те же два условия. Каждая управляет блоком Modify position с условием Open position, поэтому повторный сигнал внутри того же дня не может отправить вторую заявку.
- Два выхода — это блоки Modify position с условием Close position и явно заданным направлением. Блок дня покрытия — покупка, поэтому он способен закрыть только шорт; блок дня выхода — продажа, поэтому он способен закрыть только лонг. Ни у одного из них нет входа объёма, потому что Close position определяет объём заявки по самой открытой позиции.
- Chart panel рисует серию свечей, SMA 20, заявки всех четырёх действий и сделки, которые они порождают, поэтому недельный ритм — вход в начале недели, покрытие в середине, вход в конце недели, выход на её завершении — читается прямо с картинки.
Правила входа и выхода
- Вход в лонг: В день лонга, внутри окна входа, при отсутствии позиции и цене закрытия выше SMA 20 через Modify position с условием Open position отправляется рыночная покупка объёмом Order volume.
- Вход в шорт: В день шорта, внутри окна входа, при отсутствии позиции и цене закрытия ниже SMA 20 через Modify position с условием Open position отправляется рыночная продажа объёмом Order volume.
- Выход: Выходы идут по календарю, а не по цене. В день покрытия покупка блоком Modify position с условием Close position обнуляет открытый шорт; в день выхода продажа блоком Modify position с тем же условием обнуляет открытый лонг. Ни стоп-лосса, ни цели, ни трейлинга здесь нет, поэтому позиция удерживается, пока не наступит её собственный день выхода. Оба сигнала выхода повторяются на каждой свече своего дня, и ничто эти повторы не считает и не подавляет: первая свеча закрывает позицию, а дальше Close position уже не с чем работать, и он молча отклоняет сигнал. То же и со входами — нет ни счётчика на день, ни паузы между сделками, и в рамках одной заявки календарный день удерживает именно условие Open position вместе с проверкой на отсутствие позиции.
Параметры
| Параметр | По умолчанию | Описание |
|---|---|---|
| Candles | 00:05:00 | Таймфрейм серии свечей. Поступают только завершённые свечи; день недели, средняя и каждый сигнал читаются с завершённых свечей. |
| MA Period | 20 | Период простой скользящей средней, которая фильтрует оба входа. Средняя выдаёт значения только после того, как сформируется, поэтому на первых свечах прогона вход невозможен. |
| Session From | 08:00:00 | Начало дневного окна, в котором разрешены входы; берётся по часам стратегии. Выходы это окно игнорируют. |
| Session Until | 20:00:00 | Конец этого окна. Расширьте пару значений, чтобы календарное правило действовало в любой час, сузьте — чтобы сосредоточить входы в нескольких часах дня. |
| Short day | 1 | Номер дня, в который открывается шорт, если цена закрытия ниже средней. Дни нумеруются от воскресенья как 0 до субботы как 6. |
| Cover day | 3 | Номер дня, в который открытый шорт откупается обратно. Он закрывает только шорт; лонг в этот день остаётся нетронутым. |
| Long day | 4 | Номер дня, в который открывается лонг, если цена закрытия выше средней. Нумерация по той же шкале, где воскресенье — 0. |
| Exit day | 5 | Номер дня, в который открытый лонг распродаётся. Он закрывает только лонг; шорт в этот день остаётся нетронутым. |
| Order volume | 1 | Фиксированное количество, используемое обоими действиями Open position. Двум действиям Close position объём не нужен: они определяют объём заявки по тому, что открыто. |
Детали диаграммы
- Блок Candles настроен только на завершённые свечи, и это важно дважды: день недели берётся со свечи, которая больше уже не изменится, а каждая отправленная схемой заявка помечена временем закрытия завершённой свечи, а не временем открытия ещё формирующейся.
- И календарь, и цена приходят от одной пары блоков Converter над этой серией. Считывание дня недели со свечи, а не с отдельных часов, держит календарную проверку ровно в том же такте, что и проверку тренда, поэтому обе всегда описывают одну и ту же свечу, когда их собирают блоки Logical condition AND.
- Четыре номера дней — это обычные Variables, сравниваемые блоками Comparison, поэтому весь недельный план перестраивается из списка параметров: перенесите день шорта на другой номер — и схема будет торговать этот день, не тронув ни одной связи.
- Current time и Working time дают ограничение по часу дня простым уровнем: истина на всё окно, ложь за его пределами. Оно заведено только в две ветви входа, а стоящий рядом снимок Position точно так же даёт проверку на отсутствие позиции.
- Всю торговлю делают четыре блока Modify position: два с Open position и фиксированным объёмом, два с Close position и заданным направлением. Именно указанное направление у закрывающих блоков делает календарные выходы точными — покупка в день покрытия просто отказывается от лонга, а продажа в день выхода просто отказывается от шорта. Всё, что они выдают, рисуется на Chart panel вместе со свечами и SMA 20.
Использование
Импортируйте файл .json в Designer, прогоните схему на исторических данных в тестере, затем подстройте параметры или сами кубики под свой инструмент, прежде чем торговать вживую.