Ідея коротко
Andrea Unger, чотириразовий переможець World Cup Trading Championship, будує окрему стратегію під кожен ф'ючерс. Індикатори в сетапах він майже не використовує, лише як фільтри умов. Смуги Боллінджера він виокремлює: для нього це не індикатор, а вимірювання місця на графіку, точка, де варто діяти.
Сетап описано однією фразою. На 30-хвилинному графіку ціна опиняється за смугою. Коли вона повертається всередину конверта, можна відкривати угоду проти руху, обов'язково зі стопом. Закриття під нижньою смугою і повернення дають купівлю, закриття над верхньою і повернення дають продаж. За словами Unger, для розворотних входів смуги часто працюють краще за статичні рівні: pivot points або минулі екстремуми.
Сам Unger називає це добрим сетапом для вивчення, а не готовою системою. Довжину смуг, ширину в стандартних відхиленнях, стоп і вихід він не назвав. Нижче їх задано нами як стартові значення і позначено.
У базі вже є дві картки зі смугами Боллінджера. W-дно (#035) торгується на денних барах і вимагає двох мінімумів і підтвердження розвороту. Сквіз (#018) використовує ширину смуг як фільтр режиму перед пробоєм. Тут один вихід за смугу, негайний вхід на поверненні, всередині дня і в обидва боки.
Чому це може працювати
Unger пояснює вибір напрямку природою ринку. Одні ринки придатні для пробоїв. Інші майже завжди краще торгувати проти руху: купувати провали і продавати максимуми. Який ринок якого типу, він перевіряє простими скриптами на історії і не намагається торгувати тренд там, де ринок нікуди не йде. Сам він виріс на E-mini S&P 500, називає його ринком із поверненням до середнього і зізнається, що пробійні входи на ньому йому неприємні, навіть коли заробляють. Там він воліє купувати лімітними ордерами проти руху.
Смуги підлаштовуються під поточну волатильність. Статичний рівень однаковий у тихий і в бурхливий день. Вихід за смугу означає, що рух незвично великий для останніх барів, а повернення всередину показує, що тиск вичерпався хоча б на один бар.
Таймфрейм 30 хвилин для автора принциповий. Він вважає, що молодші графіки забиті шумом: на 5-хвилинному барі один тік помітно змінює діапазон, і індикатори на такому графіку він би не будував. Порівняння смуг із pivot points у цифрах в інтерв'ю немає, це досвід автора.
Правила
Смуги і сетап
// 30-хвилинні бари ф'ючерса // автор: 30 хвилин, не дрібніше
Mid = SMA(Close, 20) // Finetiq: класична довжина
Dev = StdDev(Close, 20) // генеральне відхилення, як у стандартних смугах
Upper = Mid + 2 * Dev // Finetiq: 2 стандартні відхилення
Lower = Mid - 2 * Dev
SetupLong = Close[1] < Lower[1] // автор: ціна поза конвертом
SetupShort = Close[1] > Upper[1] // Finetiq: «поза» рахуємо за закриттям
Вхід
// автор: ціна повернулася всередину конверта, угода проти руху
IF SetupLong AND Close > Lower THEN BUY AT NEXT BAR OPEN
IF SetupShort AND Close < Upper THEN SELL SHORT AT NEXT BAR OPEN
// умова спрацьовує на першому закритті всередині, скільки б барів ціна ні провела зовні
// варіант для перевірки: лімітний вхід після повернення
// (автор на E-mini віддає перевагу лімітним ордерам проти руху)
IF SetupLong AND Close > Lower
BUY LIMIT at Lower // Finetiq: чекаємо відкату до смуги, ордер живе 1 бар
Стоп (Finetiq)
// автор: стоп обов'язковий, розмір не названо
ExtremeLow = Lowest(Low, N) за бари поза смугою і бар повернення
ExtremeHigh = Highest(High, N) за ті самі бари
Long: StopLoss = ExtremeLow - 0.25 * ATR(14) // Finetiq: за екстремум виходу зі смуги
Short: StopLoss = ExtremeHigh + 0.25 * ATR(14)
// надто далекий стоп: сигнал пропускаємо
IF |Close - StopLoss| > 2 * ATR(14) THEN CANCEL // Finetiq
Вихід (Finetiq)
// що настане раніше
Long: SELL LIMIT at Mid // Finetiq: ціль середня лінія, перерахунок на кожному барі
Short: BUY LIMIT at Mid
EXIT STOP at StopLoss
EXIT at SessionClose - 30 хв // Finetiq: за зразком скелетів автора з виходом наприкінці дня
// варіант: тримати до кінця другої сесії (у скелетах автор згадує і вихід через два дні)
// обмежувачі
не більше 1 позиції одночасно // Finetiq
нових входів немає в останню годину сесії // Finetiq
Вибір ринку (автор, формалізація Finetiq)
// автор: контртренд торгується лише там, де ринок історично схильний до повернення
// Finetiq: на навчальному періоді прогнати цей вхід і дзеркальний пробійний
// (купівля на першому закритті над Upper, продаж на першому під Lower)
IF середня угода контртренду > витрати на коло AND контртренд кращий за пробій
ринок допускається до торгівлі
Параметри
| Параметр | Значення | Звідки |
|---|---|---|
| Таймфрейм | 30 хвилин, не дрібніше | автор |
| Сетап | закриття за смугою | автор (за закриттям: Finetiq) |
| Тригер | перше закриття всередині смуги | автор |
| Напрямок | проти руху, в обидва боки | автор |
| Довжина смуг | 20 барів | Finetiq |
| Ширина смуг | 2 стандартні відхилення | Finetiq |
| Вхід | за ринком на відкритті наступного бару | Finetiq |
| Варіант входу | ліміт на рівні смуги, 1 бар | Finetiq (ідея лімітних входів: автор) |
| Стоп | екстремум виходу зі смуги ± 0.25 ATR(14) | Finetiq (наявність стопа: автор) |
| Відсів далеких стопів | більше 2 ATR(14) | Finetiq |
| Ціль | середня лінія | Finetiq |
| Вихід за часом | за 30 хвилин до кінця сесії | Finetiq |
| Варіант утримання | до кінця другої сесії | Finetiq (за скелетами автора) |
| Ринок | E-mini S&P 500 і ринки з поверненням до середнього | автор |
Що перевірити
- Околиця смуг. Довжина 15, 20, 30 і ширина 1.5, 2, 2.5 стандартного відхилення. Якщо результат тримається лише біля однієї пари значень, це підгонка, а не властивість ринку.
- Таймфрейм. Той самий вхід на 15, 30 і 60 хвилинах. Unger стверджує, що дрібніше 30 хвилин шум забиває сигнал. Перевірте, чи падає середня угода на 15 хвилинах сильніше, ніж зростає їхня кількість.
- Смуги проти статичних рівнів. Та сама логіка «закриття за рівнем, потім закриття назад» на вчорашніх максимумі й мінімумі та на pivot points. Це пряма перевірка головного твердження автора.
- Вихід. Середня лінія проти протилежної смуги, проти виходу наприкінці сесії без цілі і проти утримання до кінця другої сесії. Вихід автор не назвав, і саме він може вирішити підсумок.
- Ринки. E-mini S&P проти нафти, золота й облігацій, для кожного контртренд проти дзеркального пробою. За методом автора контртренд має працювати не скрізь.
- Фільтр за денним ADX. Unger використовує денний ADX(5) нижче 35 як фільтр пробоїв (картка
prev-high-breakout-adx). Перевірте зворотне для цього сетапу: чи краще повернення всередину смуг у дні з ADX(5) вище 35 чи нижче. - Витрати. Порахуйте середню угоду в тіках і порівняйте з комісією та прослизанням в 1 тік на вході й стопі. Критерій автора: якщо середня угода їх не покриває, система непридатна до торгівлі, навіть за зростаючої кривої.
Особливості платформ
TradingView (Pine Script)
ta.bb(close, 20, 2)повертає середню, верхню й нижню смуги. Відхилення всередині генеральне, як уiBandsMQL5 іStdDevEasyLanguage, тож рівні збігатимуться.- У ф'ючерсів CME графік за замовчуванням включає нічну торгівлю. Смуги на перших барах основної сесії тоді пораховано за нічними барами. Вирішіть, яку сесію берете, і обмежте входи вікном
time(timeframe.period, "0930-1500", "America/New_York"). - Ціль на середній лінії змінюється з кожним баром: викликайте
strategy.exit("X", "L", limit = basis, stop = stopLevel)на кожному барі, ордер оновиться. - Якщо на одному 30-хвилинному барі зачеплено і ціль, і стоп, тестер не знає порядку. Потрібен
use_bar_magnifier = true(платні плани) або перевірка на молодшому таймфреймі.
MultiCharts і TradeStation (EasyLanguage)
- Смуги простіше зібрати самим, щоб не залежати від реалізації:
Average(Close, 20) - 2 * StdDev(Close, 20).StdDevгенеральне,StdDevSвибіркове дало б трохи ширші смуги. Timeце час закриття бару. Остання година сесії, що закривається о 16:00 ET, починається з баруTime = 1530. Вихід за 30 хвилин до кінця:If Time >= 1530 then Sell next bar at market.Sell next bar at Mid limitі стоп ціною живуть один бар. Надсилайте їх заново на кожному барі, поки позиція відкрита.- Шаблон сесії символу вирішує, чи потраплять нічні бари в розрахунок смуг. Для порівняння з іншими платформами зафіксуйте його явно.
MetaTrader 5 (MQL5)
iBandsрахує генеральне відхилення за закриттями, як Pine і EasyLanguage.- CFD на S&P 500 торгується майже цілодобово і котирується з базисом до ф'ючерса. Смуги і сигнали на CFD будуть іншими, особливо в нічні години з широким спредом. Обмежте входи годинами основної сесії, переведеними в час сервера з урахуванням літнього часу.
- 30-хвилинні бари підписано часом відкриття за сервером брокера. Кінець сесії 16:00 ET на сервері GMT+2/+3 зазвичай 23:00, але в тижні розсинхрону літнього часу зсувається на годину.
- Сигнал беріть із закритого бару (індекс 1) і перевіряйте появу нового бару, інакше вхід повторюватиметься на кожному тіку.
Де ідея може зламатися
- В інтерв'ю сетап займає менше хвилини: без тесту, без цифр, без параметрів. Автор сам пропонує його як відправну точку для дослідження.
- Майже все, крім входу і таймфрейму, наша формалізація. Стоп, ціль і вихід за часом це стартові значення, а не правила Unger.
- Метод автора будується під конкретний ринок. Перенесення одного набору параметрів на всі ф'ючерси суперечить його підходу, і провал на трендових ринках очікуваний.
- У сильному тренді ціна йде вздовж смуги. Закриття то зовні, то всередині дають серію входів проти руху, і кожен може закінчитися стопом.
- Внутрішньоденне повернення до середнього дає маленьку середню угоду. Прослизання і комісія на 30-хвилинних барах легко з'їдають увесь результат.
- Висока волатильність після новин розширює смуги заднім числом. Повернення всередину після виходу даних може бути просто розширенням смуг, а не розворотом ціни.