Ідея коротко
Jack Corsellis шукає акцію з числа найсильніших на ринку, яка після зростання взяла паузу. Пауза має вигляд прапора, вимпела, клина або ящика Дарваса. Усередині бази ціна підтягується до 10-денної EMA, 21-денної EMA або 50-денної SMA, і розмах свічок звужується. Якогось дня з'являється вузька свічка, часто внутрішня, просто на середній і з найнижчим обсягом у базі. Джек називає її тригер-баром: вона і є сигналом.
Рівні беруться з цієї свічки. Купівля стоп-ордером через її максимум, стоп на цент нижче мінімуму. Якщо стоп у відсотках більший за 20-денний ADR% паперу, угода пропускається. У найкращих тригер-барів стоп займає від половини до двох третин ADR%.
Від картки qullamaggie-breakout сетап відрізняється тим, звідки беруться сигнал і рівні. Там вхід іде через максимум перших хвилин дня зі стопом на мінімумі дня. Тут сигнал і рівні дає вузька денна свічка: базовий вхід стоп-ордером через її максимум, стоп під її мінімумом, а близькість до середньої й сухий обсяг задано окремими умовами. Пробій діапазону відкриття Джек допускає як заміну денному стоп-ордеру, а сходження середніх на годинному графіку в картці слугує лише для перевірки. Попереднє зростання є в обох картках, але поріг має різне походження: у qullamaggie-breakout зростання від 30% назвав автор, тут Джек порогу не називає, і 30% за три місяці задали ми. Відбір паперів винесено в окреме правило наприкінці розділу «Правила».
Чому це може працювати
Пояснення автора будується на попиті й пропозиції. Вузька свічка в щільній базі на спадному обсязі означає, що продавців майже не залишилося. Джек посилається на Тобі Крейбела: за стисненням волатильності йде розширення. Оскільки тренд до бази був угору, розширення чекають у той самий бік. У найкращих пробоїв наступного дня приходить сплеск обсягу.
Другий аргумент стосується ризику. Вузька свічка дає близький стоп, тому угода від початку асиметрична: ризик у частку ADR%, потенціал у кілька ADR%. Вибивання стопів і проколи середніх усередині бази Джек вважає добрим знаком: слабкі тримачі вже вийшли.
Ці пояснення не перевірені. Приклади у відео відібрані автором, статистики за сетапом немає.
Правила
Контекст на одній акції (автор, пороги Finetiq)
// денні бари акції
EMA10 = EMA(Close, 10); EMA21 = EMA(Close, 21)
SMA50 = SMA(Close, 50); SMA200 = SMA(Close, 200)
ADRpct = 100 * (Average(High / Low, 20) - 1)
// автор: середній денний діапазон у % за 20 днів, від мінімуму до максимуму, без гепів
// Finetiq: формула як в індикатора ADR% у TradingView, яким користується автор
Uptrend = Close > SMA50 AND Close > SMA200 // автор
Leader = Close / Close[63] - 1 >= 30% // автор: велике зростання за 1, 3 або 6 місяців, у прикладах 30%, 50%, 70% або 100%
// Finetiq: вікно 3 місяці й поріг 30%
RS = (Close / IndexClose) > (Close[63] / IndexClose[63]) // автор: сильніша за індекс; Finetiq: спосіб
// автор: ще краще, якщо папір сильніший за свою групу. Для цього потрібен ряд індексу групи
База (автор, формалізація Finetiq)
BaseHigh = Highest(High, 60)
BaseLen = кількість барів після бару BaseHigh
BaseLow = Lowest(Low, BaseLen)
BaseOK = BaseLen >= 10 // автор: від двох тижнів, краще три-чотири й більше
AND (BaseHigh - BaseLow) / BaseHigh * 100 <= 4 * ADRpct // Finetiq: глибина бази не більше 4 ADR%
// автор: проколи середніх і вибивання всередині бази допустимі, закриття нижче EMA не забороняємо
// автор: після різкого V-розвороту не входити, чекати вищого мінімуму і нового тригер-бару
Тригер-бар (автор, пороги Finetiq)
Range = High - Low
Inside = High <= High[1] AND Low >= Low[1]
Tight = Inside OR Range = Lowest(Range, 7)
// автор: вузька свічка, часто внутрішня, «як NR7 Крейбела»; Finetiq: inside bar або NR7
Band(MA) = 0.25 * ADRpct / 100 * MA // Finetiq: допуск у чверть ADR%
OnMA = (Low <= EMA10 + Band(EMA10) AND High >= EMA10 - Band(EMA10))
OR (Low <= EMA21 + Band(EMA21) AND High >= EMA21 - Band(EMA21))
OR (Low <= SMA50 + Band(SMA50) AND High >= SMA50 - Band(SMA50))
// автор: свічка сидить на одній або кількох ключових середніх
NotExt = Close <= EMA10 * (1 + 0.5 * ADRpct / 100) // автор: не у відриві від EMA 10; Finetiq: не вище ніж на пів-ADR%
DryUp = Volume < Average(Volume, 30) // автор: нижче 30-барної середньої обсягу
AND Volume <= 1.25 * Lowest(Volume, BaseLen) // автор: найнижчий або майже найнижчий обсяг у базі
// Finetiq: запас 25%
Trigger = Uptrend AND Leader AND RS AND BaseOK AND Tight AND OnMA AND NotExt AND DryUp
Вхід і стоп (автор)
// день після Trigger
BuyLevel = High(Trigger) + 0.01
StopLevel = Low(Trigger) - 0.01 // автор: на цент нижче мінімуму свічки
RiskPct = (BuyLevel - StopLevel) / BuyLevel * 100
IF RiskPct > ADRpct THEN пропустити // автор: ризик менший за 20-денний ADR%
// автор: у найкращих тригер-барів RiskPct від 1/2 до 2/3 ADRpct
BUY STOP at BuyLevel LIMIT BuyLevel * 1.01 // автор: buy stop limit; Finetiq: ліміт 1%
SELL STOP at StopLevel
// Finetiq: ордер живе один день. Якщо наступна свічка теж Trigger, рівні переносяться на неї
// якщо відкриття вище ліміту, угоди немає
// автор: замість денного стоп-ордера можна брати пробій діапазону відкриття
// (на слайді з AMD 2024 року 30-хвилинний), механіка ORH і стопа на мінімумі дня в qullamaggie-breakout
Супровід і годинний фільтр (автор, пороги Finetiq)
// автор: половина позиції на 1R або третина на 2R, стоп залишку на місці (free-roll-exit)
// автор: у міру руху стоп підтягується, залишок ведеться за EMA 10, EMA 21 або SMA 50
IF Close < EMA10 THEN EXIT залишок AT NEXT BAR OPEN // Finetiq: стартовий вибір; вибір за ADR% в ema-trail-adr
// автор: на годинному графіку дня тригер-бару EMA 10, EMA 21 і SMA 50 сходяться
Converged = (MAX(EMA10_H1, EMA21_H1, SMA50_H1) - MIN(EMA10_H1, EMA21_H1, SMA50_H1)) / Close * 100
<= 0.25 * ADRpct // Finetiq: поріг; лише для перевірки
Відбір паперів (окреме правило)
// автор: скрин після закриття по акціях США, результат іде в список спостереження
Close > SMA(Close, 50) AND Close > SMA(Close, 200)
AND (Average(Volume, 50) > 100 000 OR Average(Close * Volume, 50) >= 5 000 000)
// автор: при великій кількості результатів піднімати обсяг до 250-500 тисяч або 1 млн,
// оборот до $25, 50 або 100 млн
// сортування за зростанням за 1, 3 або 6 місяців; на слайді ще близькість до 52-тижневого максимуму
// за бажанням ADRpct > 2, 3 або 4 (автор: для швидких паперів 3.5-4)
// сигнал вище рахується на кожному папері списку окремо
Параметри
| Параметр | Значення | Звідки |
|---|---|---|
| Тренд | Close вище SMA 50 і SMA 200 | автор |
| Зростання до бази | від 30% за 63 бари | Finetiq (автор: велике зростання за 1-6 місяців, у прикладах 30-100%) |
| Відносна сила | до індексу за 63 бари | автор, спосіб Finetiq |
| База | від 10 барів, глибина до 4 ADR% | автор (довжина), Finetiq (глибина) |
| Вузька свічка | inside bar або NR7 | Finetiq (автор: вузька, часто внутрішня) |
| Середні | EMA 10, EMA 21, SMA 50, допуск 1/4 ADR% | автор, допуск Finetiq |
| Відрив від EMA 10 | не більше 1/2 ADR% | Finetiq (автор: не у відриві) |
| Обсяг | нижче середнього за 30, до 1.25 від мінімуму бази | автор, запас Finetiq |
| Вхід | buy stop limit через максимум, ліміт +1% | автор, ліміт Finetiq |
| Стоп | на цент нижче мінімуму свічки | автор |
| Максимальний ризик | менше ADR%, краще 1/2-2/3 | автор |
| Частковий вихід | 1/2 на 1R або 1/3 на 2R | автор |
| Вихід залишку | закриття нижче EMA 10 | Finetiq (автор: 10, 21 або 50 за характером) |
| Скрин | вище SMA 50/200, обсяг від 100 тисяч або оборот від $5 млн | автор |
Що перевірити
- Чи потрібен сухий обсяг. Три прогони: без DryUp, лише «нижче 30-барної середньої», повний фільтр із мінімумом у базі. Автор вважає обсяг головною ознакою. Якщо без фільтра результат не гірший, фільтр лише скорочує кількість угод.
- Що вважати вузькою свічкою. Inside bar, NR7, NR4, діапазон менший за половину середнього за 20 днів. Порівняйте кількість угод і середню угоду в R.
- Яка середня. Розбийте угоди за тим, на якій середній стояв тригер-бар: EMA 10, EMA 21, SMA 50. Джек найчастіше показує EMA 10.
- Околиця порогів. Допуск до середньої 0.1, 0.25 і 0.5 ADR%. Довжина бази від 5, 10 і 15 барів. Зростання до бази 20%, 30% і 50%. Ліміт 0.5%, 1% і 2%. Якщо результат тримається лише в одній точці, формалізація підігнана.
- Ризик проти ADR%. Розбийте угоди за RiskPct / ADRpct: до 1/2, від 1/2 до 2/3, від 2/3 до 1. Автор стверджує, що найкращі угоди в середній групі.
- Годинний фільтр і обсяг пробою. Порівняйте угоди з Converged і без. Окремо розбийте угоди за відношенням обсягу дня пробою до 30-денного середнього: так видно, чи варто тримати угоду, якщо сплеску не було.
- Помилка вцілілого і витрати. Скрин за сьогоднішніми лідерами завищує результат, потрібна історія з виключеними з лістингу паперами. Стоп-ліміт у тесті виконується ідеально, а в автора навіть у розібраному прикладі було прослизання. Закладіть 0.1-0.2% на вхід і збиток, більший за стоп, на гепах униз.
Особливості платформ
TradingView (Pine Script)
- ADR% в один рядок:
100 * (ta.sma(high / low, 20) - 1). NR7:high - low == ta.lowest(high - low, 7). - Buy stop limit:
strategy.entry("L", strategy.long, stop = buyLevel, limit = buyLevel * 1.01). Ордер у Pine висить, доки його не скасовано. Щоб він жив один день, викликайтеstrategy.cancel("L")на наступному барі, якщо позиції немає. - Стратегія торгує лише символ графіка. Скан, сортування за зростанням і порівняння з групою по всьому всесвіту в бектесті не повторити. Перевірка на заздалегідь вибраних паперах по одному вже містить помилку вцілілого.
- Індекс для відносної сили читається через
request.securityіз символом індексу. Беріть значення закритого бару, інакше на історії сигнал побачить майбутнє.
MultiCharts і TradeStation (EasyLanguage)
Buy next bar at BuyLevel stopживе один бар, це збігається з правилом одного дня. Стоп-ліміт простіше моделювати звичайним стоп-ордером із відмовою від угоди, якщо відкриття дня вище ліміту.- Індекс підключається другим потоком (
Close of Data2), індекс групи третім. EMA:XAverage(Close, 10), NR7:Range = Lowest(Range, 7). - Стоп ціною:
Sell next bar at StopLevel stop.SetStopLossзадається в грошах і дасть інший рівень. - Для ORB-варіанта на внутрішньоденних барах TradeStation повний обсяг історично лежить у
Ticks. Фільтр сухого обсягу рахуйте за денними барами. Скан по всесвіту робиться в Portfolio Maestro або Portfolio Trader.
MetaTrader 5 (MQL5)
- Акції в більшості брокерів MT5 це CFD з тиковим обсягом. Фільтри сухого обсягу й обороту за ним не відтворюються. Потрібен брокер із біржовими акціями і реальним обсягом (
iRealVolume). - Денний бар будується за часом сервера. Якщо в нього потрапляють котирування поза основною сесією, High і Low інші, і NR7 з ADR% зсунуться.
- Стоп-ліміт є як тип ордера
ORDER_TYPE_BUY_STOP_LIMIT. Експірацію ставте на кінець торгового дня. - Індекс для RS беріть через
iCloseза символом із Market Watch. У брокера часто є лише CFD на індекс, значення відносної сили будуть наближеними.
Де ідея може зламатися
- Усі приклади відібрано автором заднім числом, статистики за сетапом немає. Якість бази й «вузькість» свічки Джек оцінює очима. Наші пороги можуть відбирати зовсім інші графіки.
- На одній акції сигнал рідкісний, за роки набереться кілька десятків угод. Змістовний тест можливий лише на портфелі з багатьох паперів, а це портфельний модуль і дані з делістингом.
- Вузький стоп на денних барах не захищає від гепу вниз. Фактичний збиток на частині угод буде помітно більшим за RiskPct.
- Скрин за лідерами зростання за 1-6 місяців відбирає те, що вже виросло. Без історичного складу всесвіту результат тесту буде кращим за реальність.
- У відео є спонсор (MarketSurge) і реклама власного скринера автора.