Ідея коротко
ADR% це середній денний діапазон паперу у відсотках за 20 днів: наскільки акція зазвичай проходить від мінімуму до максимуму за день. Jack Corsellis використовує це число для двох рішень.
Перше рішення: що взагалі торгувати. Середній ADR% індексів S&P 500 і NASDAQ близько 1-1.5%. Джек міркує так: папір з ADR%, у кілька разів вищим за індекс, у тренді проходить помітно більше за нього. У його прикладах співвідношення не пропорційне: у NVDA ADR% у 2.4 раза вищий за індекс, а зростання 56% проти 15%; у AIRM ADR% приблизно у 8 разів вищий, а зростання 76% проти 32%. Папір з ADR% як в індексу навіть з ідеального патерну майже не обганяє ринок. Джек шукає папери з ADR% хоча б у 1.5-2 рази вищим за QQQ, на практиці від 3%. Поріг 3% у нього м'який: сам Джек купив NVDA при ADR% 2.84, і сувора версія блоку нижче цю угоду пропустила б.
Друге рішення: чи годиться стоп. Початковий стоп у відсотках має бути меншим за ADR% паперу. У найкращих входів із вузькою свічкою він займає від половини до двох третин ADR%, у Qullamaggie від третини до половини. До цього додається фільтр Qullamaggie проти погоні: не купувати, якщо за день папір уже пройшов більше за свій ATR.
Це блок, а не система. Вхід, стоп і вихід беруться зі стратегії-господаря, блок вирішує, чи пропускати угоду. Нижче приклад на картці new-high-breakout-ma10-exit.
Чому це може працювати
Пояснення автора: у паперів різний характер. Повільний папір фізично не може дати +50% за кілька тижнів, хоч би як добре виглядав графік. Швидкий папір працює як важіль до індексу: якщо ринок зростає на 10%, папір з ADR%, удвічі вищим за індекс, може вирости на 20%, утричі вищим на 30%. Джек сам застерігає, що важіль працює й униз.
Стоп у частках ADR% робить ризик порівнянним між паперами. Стоп, ширший за ADR%, означає, що ризик більший за звичайний денний хід паперу: той самий хід ціни дає менше початкових ризиків, і співвідношення ризику й потенціалу «роз'їжджається». Збитки працюють проти рахунку геометрично, тому автор воліє пропустити угоду, а не розширити стоп.
Цифри NVDA, AIRM і Foot Locker взято з прикладів, відібраних після факту. Перевірки на всіх паперах поспіль у відео немає.
Правила
Швидкість паперу (автор)
// денні бари, значення на закритті дня перед входом
ADRpct = 100 * (Average(High / Low, 20) - 1)
// автор: 20 днів, діапазон від мінімуму до максимуму, геп між закриттям і відкриттям не враховується
// формула індикатора ADR% у TradingView, яким користується автор
IndexADR = 100 * (Average(IndexHigh / IndexLow, 20) - 1)
// автор: «застосовний» індекс: NASDAQ для технологічного паперу, інакше SPY або Dow
Speed = ADRpct / IndexADR
SpeedOK = Speed >= 2 // автор: мінімум 1.5-2 рази, краще 2 і більше
FastOK = ADRpct >= 3 // автор: «в ідеалі» від 3-4%, найсильніші 5-10% і вище
// Finetiq: базово вимагаємо обидві умови, поріг Speed 1.5 залишаємо як варіант
// поріг 3% в автора м'який: його купівля NVDA з ADR% 2.84 проходить лише за Speed,
// базова версія блоку її пропустила б. Варіант без FastOK у «Що перевірити», п. 3
Допустимий стоп (автор)
// EntryPrice і StopLoss беруться зі стратегії-господаря
RiskPct = (EntryPrice - StopLoss) / EntryPrice * 100
Ratio = RiskPct / ADRpct
IF Ratio > 1 THEN пропустити угоду // автор: стоп менший за ADR%
IF RiskPct > 5 THEN пропустити угоду // автор: понад 5% лише для виняткового сетапу
// Finetiq: трактуємо як заборону
// зона якості за типом входу (автор)
// вузький тригер-бар або inside bar: Ratio від 1/2 до 2/3 (Джек)
// Qullamaggie: Ratio від 1/3 до 1/2, стоп зазвичай близько половини, рідко повний ATR
// хвіст вибивання або розворот після гепу вниз: Ratio близько 1, допустимо до 1.5 (Джек)
// Finetiq: для цих двох входів поріг Ratio 1.5 замість 1
Фільтр погоні (Qullamaggie в переказі автора)
DayMove = EntryPrice - Close[1]
IF DayMove > ATR(20) THEN пропустити угоду
// автор: не купувати, якщо за день папір пройшов більше за свій ATR
// автор: краще входити, поки пройдено 1/3, 1/2 або 2/3 ATR
// період 20 із прикладу Джека; згладжування ATR автор не назвав
// хід рахується в день входу: від вчорашнього закриття до ціни входу; ATR(20) на закритті попереднього дня
Розмір позиції після фільтра (Finetiq)
Shares = Equity * 0.5% / (EntryPrice - StopLoss) // Finetiq: стартовий ризик на угоду
Shares = MIN(Shares, Equity * 25% / EntryPrice) // Finetiq: стеля частки, як у Qullamaggie
// з вузьким стопом розмір швидко зростає, без стелі один папір займе весь рахунок
Приклад: пробій 100-денного максимуму
Картка new-high-breakout-ma10-exit: купівля на відкритті після закриття вище 100-денного максимуму, вихід за закриттям нижче MA10, окремого стопа немає. Додаємо блок.
IndexADR = ADR% індексу за 20 днів // Finetiq: QQQ для NASDAQ, SPY для NYSE
Signal = Close > Highest(High, 100)[1] // з картки
StopLoss = Low - 0.01 // Finetiq: мінімум сигнального дня як початковий стоп
EstRisk = (Close - StopLoss) / Close * 100 // Finetiq: оцінка до відкриття
IF Signal AND SpeedOK AND FastOK
AND EstRisk <= ADRpct AND EstRisk <= 5 // блок: допустимий стоп, оцінка за закриттям
BUY AT NEXT BAR OPEN
SELL STOP at StopLoss
// Finetiq: у день входу блок перераховується від ціни виконання
DayMove = EntryPrice - Close[1] // блок: фільтр погоні; Close[1] це закриття сигнального дня
RiskPct = (EntryPrice - StopLoss) / EntryPrice * 100
IF DayMove > ATR(20) OR RiskPct > ADRpct OR RiskPct > 5
EXIT AT CLOSE of this bar // виконання на тому ж барі, позиція закривається в день входу
// при вході на відкритті DayMove дорівнює гепу; ADRpct і ATR(20) на закритті сигнального дня
IF Close < SMA(Close, 10) THEN EXIT AT NEXT BAR OPEN // з картки
Параметри
| Параметр | Значення | Звідки |
|---|---|---|
| Період ADR% | 20 днів | автор |
| Формула ADR% | 100 × (середнє High / Low − 1) | автор (індикатор TradingView) |
| Індекс | застосовний: NASDAQ, SPY або Dow | автор |
| ADR% індексів | близько 1-1.5% | автор |
| Мінімальна швидкість | 2 × індекс (варіант 1.5) | автор |
| Мінімальний ADR% | 3% | автор («в ідеалі» 3-4%), обов'язковість Finetiq |
| Стоп проти ADR% | менше 1 ADR% | автор |
| Абсолютний стоп | до 5% | автор, заборона Finetiq |
| Зона для вузької свічки | 1/2-2/3 ADR% (Qullamaggie 1/3-1/2) | автор |
| Розворотні свічки | до 1.5 ADR% | автор |
| Фільтр погоні | хід дня входу не більший за ATR(20) | автор, період із прикладу |
| Ризик на угоду | 0.5% | Finetiq |
| Стеля частки | 25% рахунку | Finetiq (за qullamaggie-breakout) |
| Приклад: стоп | мінімум сигнального дня | Finetiq |
Що перевірити
- Чи дає швидкість щось. Візьміть одну стратегію-господаря на широкому всесвіті й розбийте угоди за Speed: до 1.5, 1.5-2, 2-4, більше 4. Порівняйте середню угоду у відсотках і в R, частку прибуткових і максимальну просадку. Важіль працює в обидва боки, тому дивіться на результат з урахуванням збитків.
- Поріг стопа. Розбийте угоди за Ratio: до 1/3, 1/3-1/2, 1/2-2/3, 2/3-1, більше 1. Якщо угоди зі стопом, ширшим за ADR%, не гірші за решту, фільтр лише скорочує вибірку.
- Околиця параметрів. Період ADR% 10, 20 і 50 днів. Speed 1.5, 2 і 3. Мінімальний ADR% 2, 3 і 4% і без порогу (лише Speed). Поріг Ratio 0.75, 1 і 1.5.
- Фільтр погоні. З ним і без, поріг 0.5, 1 і 1.5 ATR. У пробійних стратегій сильний день і є сигнал, фільтр може зрізати найкращі угоди.
- Абсолютний і відносний поріг. У паперів з ADR% від 10% половина ADR% уже більша за 5%. Порівняйте правило «лише Ratio» з правилом «Ratio і не більше 5%».
- ADR% проти ATR%. Формула High / Low не бачить гепів, ATR їх враховує. Порівняйте обидва варіанти на паперах із частими гепами на звітах.
- Витрати. У швидких паперів ширший спред і більше прослизання на стоп-ордерах. Прослизання на гепі через стоп фільтр не ловить, закладіть його окремо.
Особливості платформ
TradingView (Pine Script)
- ADR% в один рядок:
100 * (ta.sma(high / low, 20) - 1). Для індексу той самий вираз усерединіrequest.securityіз символом індексу на денному таймфреймі. - Якщо на графіку ввімкнено розширені години, High і Low дня беруться з урахуванням премаркету, і ADR% вийде більшим. Рахуйте на основній сесії.
ta.atrзгладжує за Вайлдером. Для фільтра погоні різниця з простим середнім невелика, але день на межі порогу може потрапити в різні боки.- Відбір за Speed по всьому всесвіту в стратегії не повторити: вона торгує лише символ графіка.
MultiCharts і TradeStation (EasyLanguage)
- ADR%:
100 * (Average(High / Low, 20) - 1). Індекс другим потоком:100 * (Average(High of Data2 / Low of Data2, 20) - 1). AvgTrueRange(20)це просте середнє TrueRange, а не Вайлдер. Якщо порівнюєте з Pine, фільтр погоні дасть трохи інші дні.- Перевірку блоку ставте перед
Buy next bar at market, стоп задавайте ціною:Sell next bar at StopLoss stop.SetStopLossпрацює в грошах. - Відбір за швидкістю серед багатьох паперів робиться в Portfolio Maestro або Portfolio Trader. Індекс у портфельному тесті треба підключити до кожного паперу.
MetaTrader 5 (MQL5)
- Денний бар CFD на акцію будується за часом сервера й може включати розширені години. ADR% вийде іншим, ніж у біржового паперу, і пороги 3% і 2× зсунуться.
- Рахуйте Speed за папером та індексом в одного брокера: CFD на індекс (US500, USTEC) теж має свій денний діапазон.
iATRце просте середнє TR, як в EasyLanguage. Значення беріть із закритого бару (індекс 1).- У брокерів із сервером не в GMT+2/+3 бувають короткі недільні бари. Вони занижують 20-денне середнє діапазону.
Де ідея може зламатися
- Усі приклади відібрано після факту. Джек показує швидкі папери, які виросли, і один повільний, який відстав. Швидких паперів, що дали серію збитків, у відео немає.
- Поріг відносно індексу залежить від режиму ринку. Під час паніки ADR% індексу зростає до 2-3%, і фільтр майже нікого не пропускає. У тихому ринку його проходить більше паперів.
- Стоп, менший за ADR%, на денних барах не захищає від нічного гепу. Реальний збиток на частині угод буде більшим за RiskPct.
- Формула High / Low ігнорує гепи. Папір, який багато рухається вночі на новинах, виглядає спокійнішим, ніж є.
- Фільтр ріже угоди з широким стопом. На гепах після звітів (картка
episodic-pivot) стоп часто ширший за ADR%, і блок може прибрати якраз найсильніші події. - Пороги 3% і 1-1.5% в індексу названо для американських акцій зростання. На ф'ючерсах, валютах і облігаціях числа інші, блок треба калібрувати заново.