Идея коротко
Qullamaggie торгует акции, которые уже сильно выросли. Рост идёт ступенями: движение, пауза, движение. Задача в том, чтобы купить в момент начала следующей ступени. Бумага прибавила 30-100% за один-три месяца, потом от двух недель до двух месяцев строит базу: минимумы повышаются, размах сужается, объём сохнет, цена держится на растущих 10- и 20-дневных средних. В день пробоя он покупает через максимум первой 1-, 5- или 60-минутной свечи, стоп ставит на минимум дня.
Стоп не должен быть шире среднего дневного диапазона бумаги (ADR или ATR), идеально треть или половина. Через 3-5 дней продаётся от трети до половины позиции, стоп переносится в безубыток, остаток держится до первого закрытия ниже 10-дневной средней. Доля прибыльных сделок низкая, заработок дают редкие сделки на десятки рисков.
Обе части источника это пересказ Jack Corsellis: разбор стратегии и отдельное видео про скан и исполнение. Отбор бумаг по всей вселенной вынесен в отдельное правило в конце раздела «Правила». Сигнал описан на одной акции.
Почему это может работать
Объяснение авторов через моментум и спрос. Бумага, которая выросла сильнее рынка, привлекает покупателей, и после паузы движение часто продолжается. Узкая база на падающем объёме значит, что продавцов мало. Короткая узкая свеча перед пробоем даёт близкий стоп, поэтому сделка изначально асимметрична: риск в долю ADR, потенциал в несколько ADR.
Фильтр режима по NASDAQ опирается на наблюдение, что пробои массово срабатывают в периоды общего роста. Каждый год, по словам Qullamaggie, бывает три-шесть месяцев, когда метод почти не зарабатывает, и тогда лучше сидеть в деньгах.
Все цифры результатов принадлежат Qullamaggie и Джеку. Их нельзя проверить по отчётам, а исследование Джека сделано задним числом на отобранных глазами пробоях.
Правила
Режим рынка (автор)
// дневные бары NASDAQ Composite
N10 = EMA(NasdaqClose, 10)
N20 = EMA(NasdaqClose, 20)
N50 = SMA(NasdaqClose, 50)
// автор говорит о 10- и 20-дневной средней без типа. Finetiq: EMA, как у Джека
RegimeOK = N10 > N20 AND N10 > N10[1] AND N20 > N20[1] // идеально ещё N20 > N50
RegimeOff = N10 < N20 AND N10 < N10[1] AND N20 < N20[1] // автор: высокий процент неудач, лонг не торговать
// Finetiq: новые входы только при RegimeOK
// сообщество (Джек): закрытие месяца NASDAQ выше месячной средней 10
// Джек называет её EMA 10, линия на его графике из Excel SMA (index-ema-regime). Проверьте обе
Сетап на одной акции
ADRpct = 100 * (Average(High / Low, 20) - 1)
// автор: средний дневной диапазон в % за 20 дней без гэпов; Finetiq: формула
BaseHigh = Highest(High, 60)
BaseLen = число баров после бара BaseHigh
Rally = BaseHigh / (минимум за 60 баров до бара BaseHigh) - 1
BigMove = Rally >= 30% // автор: 30-100% и больше за 1-3 месяца
BaseOK = BaseLen >= 10 AND BaseLen <= 40 // автор: база от 2 недель до 2 месяцев
HigherLows = минимум второй половины базы > минимума первой половины // автор: минимумы выше; Finetiq: способ
Surf = Close > EMA(Close, 20) хотя бы на 80% баров базы
AND Close > SMA(Close, 50) // автор: база на растущих 10/20, иногда 50; ниже 50-дневной он почти не покупает
// Finetiq: 80%
Tight = High - Low < 0.5 * Average(High - Low, 20) // автор: узкий триггер-бар; Finetiq: порог
DryUp = Volume < Average(Volume, 30) // автор: объём сохнет; Finetiq: сравнение с 30-дневной
Setup = BigMove AND BaseOK AND HigherLows AND Surf AND Tight AND DryUp
Pivot = High триггер-бара // сообщество (Джек): максимум последней узкой свечи
// вариант для проверки: Pivot = BaseHigh
Вход и стоп (автор)
// день после Setup, внутридневные данные
IF RegimeOK
ORH = High первой N-минутной свечи, N = 1, 5 или 60 // 60-минутная первая свеча фактически 30-минутная
BUY STOP at MAX(ORH, Pivot) // Finetiq: если ORH ниже пивота, ждём пивот
StopLoss = минимум дня на момент входа // автор: low of the day
RiskPct = (EntryPrice - StopLoss) / EntryPrice * 100
IF RiskPct > ADRpct THEN CANCEL // автор: стоп не шире ADR
// автор: идеал 1/3-1/2 ADR; сообщество (Джек): держит 1/2-2/3 ADR
IF EntryPrice - Close[1] > ATR(20) THEN CANCEL // автор: не покупать, если за день прошла больше ATR
// Finetiq: ATR 20
// сообщество (Джек, второе видео): дневное приближение без внутридневных данных
BUY STOP at Pivot LIMIT Pivot * 1.005 (до 1.01)
StopLoss = Low триггер-бара
Размер позиции (автор)
RiskMoney = Equity * 0.5% // автор: обычно 0.3-0.5%, на маленьком счёте 1-2%
Shares = RiskMoney / (EntryPrice - StopLoss)
Shares * EntryPrice <= 25% * Equity // автор: не больше 25% счёта в одну бумагу
// автор: брать только сделки с реальным потенциалом от 10R. Механически это не проверить.
// Finetiq: прокси ADRpct >= 3%; сообщество (Джек): ADR бумаги от 1.5-2 ADR QQQ
Сопровождение (автор)
// через 3-5 дней продать от трети до половины, стоп остатка в безубыток
IF BarsSinceEntry = 3 AND позиция в плюсе // Finetiq: день 3, условие «в плюсе»
SELL 1/2 AT NEXT BAR OPEN
StopLoss = EntryPrice
// сообщество (Джек), free roll: SELL 1/3 LIMIT at EntryPrice + 2R или SELL 1/2 LIMIT at EntryPrice + 1R.
// Зафиксированная прибыль равна риску оставшейся части
// остаток: первое закрытие ниже средней, не касание внутри дня
IF Close < EMA(Close, 10) THEN EXIT AT NEXT BAR OPEN // быстрые бумаги, для новичков всегда 10
// медленные бумаги: EMA 20; сообщество (Джек): EMA 21
// Finetiq: исполнение на открытии следующего дня; вариант для проверки: за минуты до закрытия
Отбор бумаг (отдельное правило)
// считается по всей вселенной акций США после закрытия, результат идёт в список наблюдения
// Qullamaggie: три скана за 1, 3 и 6 месяцев; долларовый объём, ADR% и рост в топ-7% всех акций
// сообщество (Джек), пример 3-месячного скана:
Close > 1 AND Close > SMA(Close, 200) AND Close > SMA(Close, 50)
AND Average(Volume, 50) > 100 000
AND рост за 3 месяца > 50%
// сообщество (Джек): сортировка по RS rank за 3 месяца, 99 = лучшая. В его базе около 64 бумаг из 5000
// сигнал выше считается на каждой бумаге из списка отдельно
Параметры
| Параметр | Значение | Откуда |
|---|---|---|
| Режим | NASDAQ: 10 выше 20, обе растут | автор |
| Тип средних режима | EMA | Finetiq |
| Предшествующий рост | от 30% за 1-3 месяца | автор |
| Длина базы | 10-40 торговых дней | автор |
| Средние базы | EMA 10 и 20, SMA 50 | автор |
| Доля баров над EMA 20 | 80% | Finetiq |
| Узкий бар | диапазон меньше 0.5 от среднего за 20 | Finetiq |
| Вход | ORH первой 1, 5 или 60-минутной свечи | автор |
| Стоп | минимум дня | автор |
| Максимальный стоп | ADR% за 20 дней, идеал 1/3-1/2 | автор |
| Фильтр погони | рост за день не больше ATR | автор |
| Лимит в дневной версии | 0.5-1% над пивотом | сообщество (Джек) |
| Риск на сделку | 0.3-0.5% | автор |
| Доля счёта в бумаге | до 25% | автор |
| Прокси потенциала 10R | ADR% от 3% | Finetiq |
| Частичный выход | 1/3-1/2 через 3-5 дней, стоп в безубыток | автор |
| День частичного выхода | 3 | Finetiq |
| Трейлинг | закрытие ниже EMA 10 (медленные: 20-21) | автор; EMA 21 сообщество (Джек) |
| Скан | цена > $1, выше SMA 50 и 200, объём > 100 000, рост > 50% за 3 месяца | сообщество (Джек) |
Что проверить
- Фильтр режима. Прогоните сигнал без фильтра, с правилом 10/20 по NASDAQ и с месячной средней Джека (EMA 10 и SMA 10). Цифра 90% у Джека показывает, когда пробои случаются, а не когда они прибыльны. Сравнивайте среднюю сделку в каждом режиме.
- ORH против дневного входа. Вход на 1, 5 и 60-минутной свече против buy stop на пивоте. Смотрите ширину стопа в долях ADR и долю пропущенных сделок, где стоп оказался шире ADR. Джек показывает, что на 60 минутах стоп часто выходит за ADR.
- Трейлинг. EMA 10 против EMA 21 и SMA 50. Сравните не только средний ход, но и время в сделке. У Джека на 60 лучших сетапах выход по EMA 10 дал в среднем +98% за 26 дней, по EMA 21 +148% за 45 дней, по SMA 50 +194% за 72 дня.
- Частичный выход. Половина через 3 дня против free roll (треть на 2R) и против удержания всей позиции до трейлинга. При доле прибыльных 20-30% частичный выход сильно меняет форму распределения.
- Окрестность фильтров сетапа. Рост 30%, 50% и 100%; база 10-40 и 15-60 дней; порог узкого бара 0.4, 0.5 и 0.7. Если сделки и результат резко меняются, формализация базы подогнана.
- Ошибка выжившего и издержки. Скан отбирает лучшие бумаги. Тест на сегодняшнем списке акций завышает результат, нужна история с исключёнными из листинга бумагами. Добавьте проскальзывание на стоп-ордерах пробоя и на гэпах через стоп.
- Длинные серии убытков. При доле прибыльных 25% серия из 10 убытков подряд обычна. Посчитайте максимальную серию и просадку при риске 0.5% и при 1%.
Особенности платформ
TradingView (Pine Script)
- Стратегия торгует только символ графика. Скан по вселенной, топ-7% и RS rank в бэктесте Pine не воспроизводятся. Сигнал можно проверить на заранее выбранном списке бумаг по одной, но такой список уже содержит ошибку выжившего.
- Режим NASDAQ на дневках:
request.security("NASDAQ:IXIC", "D", expr[1], lookahead = barmerge.lookahead_on). - ORH требует 1- или 5-минутных данных за годы по многим бумагам. Глубина внутридневной истории в TradingView ограничена тарифом, поэтому для длинного теста остаётся дневное приближение.
- Частичный выход:
strategy.exitсqty_percent. Если вход и минимум дня задеты одной свечой, нуженuse_bar_magnifier = true.
MultiCharts и TradeStation (EasyLanguage)
- Скан и ранжирование по вселенной делаются в портфельном модуле (TradeStation Portfolio Maestro, MultiCharts Portfolio Trader). Проверьте, есть ли в данных исключённые из листинга бумаги.
- NASDAQ Composite подключается вторым потоком данных на график акции. Для ORH дневной поток идёт вместе с внутридневным,
Timeэто время закрытия бара: первая минутная свеча после 09:30 имеетTime = 931. Buy next bar at X stopживёт один бар, в день пробоя его нужно отправлять на каждом баре. Стоп ценой:Sell next bar at StopLoss stop.- На внутридневных барах TradeStation полный объём исторически лежит в
Ticks, аVolumeможет содержать только объём на повышении. Для фильтра сохнущего объёма берите дневные бары.
MetaTrader 5 (MQL5)
- У брокеров с CFD на акции США обычно несколько сотен крупных бумаг. Быстрые бумаги с ADR от 3%, на которых работает метод, часто отсутствуют, а скан по всей вселенной невозможен.
- У CFD только тиковый объём. Фильтры среднего объёма и сохнущего объёма по нему не воспроизводятся.
- NASDAQ Composite у брокера обычно нет. CFD NAS100 это Nasdaq-100, режим по нему приблизительный.
- Открытие 09:30 ET переводите в серверное время брокера с учётом летнего времени. У части брокеров в дневные бары акций попадают предторговые котировки, и минимум дня получается другим.
Где идея может сломаться
- Результаты Qullamaggie взяты со скриншотов стримов в пересказе, аудированных отчётов нет. Видео Джека рекламируют MarketSmith и его собственную платформу для сканов.
- Качество базы у автора оценивается глазами, у Джека даже по звёздам. Наша формализация ростом, длиной и узким баром может отбирать совсем другие графики, чем выбирает опытный трейдер.
- Скан отбирает лучшие бумаги по прошлой доходности. Без истории с исключёнными из листинга акциями бэктест будет заметно лучше реальности.
- Доля прибыльных 20-30% означает долгие серии убытков. Итог держится на немногих сделках в 20-50R, и на короткой выборке их может не оказаться совсем.
- Исследование Джека на 500 пробоях сделано задним числом: стопы расставлены на глаз, пробои отобраны после факта.
- Вход по ORH требует внутридневных данных по сотням бумаг и быстрого исполнения. Дневное приближение даёт другой стоп и другой набор сделок.