← Усі ідеї
#053НовеІмпульсПозиційна

Моментум Кленоу: нахил регресії, помножений на R²

Через логарифм ціни проводиться пряма. Нахил дає зростання у відсотках за день, множення на R² штрафує рване зростання. Індикатор переноситься на будь-яку платформу, а ранжування акцій за ним потребує портфельного тесту.

The Algorithmic Advantage · Andreas Clenow · Дивитися відео

Ринки

Акції, Індекси

Таймфрейм

D1

Дані

OHLC, Список інструментів

Правила

Частково формалізовано

Складність

Середня

Статус

Не перевірено

Частину правил дописали ми, це позначено в тексті.

TradingView потрібні дані або обхідні шляхи
EasyLanguage є пастки
MetaTrader 5 потрібні дані або обхідні шляхи

Ідея коротко

Andreas Clenow шукав міру моментуму для відбору акцій, у якій є і сила руху, і оцінка її надійності. Просту зміну ціни за період, навіть поділену на ATR, він вважає спадщиною епохи розрахунків на папері.

Його індикатор будується у два кроки. Спочатку через ціни за вікно проводиться експоненційна регресія, тобто пряма через логарифм ціни. Її нахил показує зростання у відсотках за день, а не в доларах, і однаково читається на дешевому й дорогому папері. Потім нахил множиться на R², коефіцієнт детермінації. R² лежить від 0 до 1 і показує, наскільки рівно ціни лягли вздовж прямої. Папір, який місяць стояв, а потім подвоївся, отримує крутий нахил і низький R², і його оцінка падає. В інтерв'ю нахил названо у відсотках за день. У книзі автора «Stocks on the Move» нахил переводиться в річний відсоток, і на R² множиться вже він.

Індикатор і ранжування варто розділяти. Індикатор це одна формула на одному ряді, вона переноситься на будь-яку платформу. Ранжування це портфельна система: сотні акцій, топ-25 або більше, періодична заміна і розмір позиції за ризиком. Її параметри в інтерв'ю не названо, тут вони наші.

Відмінність від картки «Подвійний моментум»: там порівнюються доходності кількох індексів за період, тут оцінюється якість тренду окремої акції всередині великого всесвіту.

Чому це може працювати

Clenow розрізняє трендслідування і моментум. Трендова модель ф'ючерсів тримається на ринках, які рухаються незалежно (сировина, валюти, облігації), і на дешевому плечі. В акціях немає ні того, ні іншого: у бичачому ринку зростають майже всі папери, у ведмежому майже всі падають, плече дороге й небезпечне. За його словами, стандартна трендова модель ф'ючерсів на акціях провалюється. Акціям потрібен відбір: із безлічі схожих паперів вибрати ті, де рух сильніший і стійкіший.

Множення на R² віддає перевагу рівному зростанню перед ривком. Ми трактуємо це так: ривок часто спричинений однією подією (звіт, чутка про купівлю компанії) і не обов'язково продовжиться, а рівне зростання ближче до того, що Clenow називає якістю тренду. Це наша інтерпретація, в інтерв'ю її немає.

Сам автор каже, що довгостроковий моментум давно підтверджений і на практиці, і в академічних працях, але магії в ньому немає. У своєму сервісі він використовує його лише для невеликої поправки ваг.

Правила

Індикатор (автор)

// регресія логарифма ціни за номером бару за останні L барів
y[i] = ln(Close[i]),  x[i] = 0, 1, ..., L-1     // x зростає від старого бару до поточного
b    = нахил прямої МНК y = a + b * x
R2   = (кореляція x і y)^2                        // від 0 до 1 (автор)

SlopePct = exp(b) - 1                             // зростання у відсотках за бар (автор: нахил у відсотках)
Score    = SlopePct * R2                          // автор: нахил, помножений на R²

L = 90                                            // Finetiq: довжину вікна автор в інтерв'ю не назвав

Річний масштаб (книга автора)

// книга автора «Stocks on the Move»: річний нахил, помножений на R².
// В інтерв'ю річний масштаб не прозвучав
AnnualSlope = exp(b * 252) - 1     // Finetiq: 252 торгові дні на рік
ScoreAnn    = AnnualSlope * R2     // книга автора
// порядок паперів за Score і за ScoreAnn може відрізнятися: у крутого нахилу
// річний масштаб зростає швидше, і R² стримує його слабше

Ранжування акцій (логіка автора, параметри Finetiq)

// всесвіт: акції індексу з історичним складом
// автор: великі чи малі компанії це питання мети, найкращого всесвіту немає
// рішення раз на тиждень на закритті, виконання на відкритті наступного бару   // Finetiq

Candidates = [x in Universe : Score(x) > 0]     // Finetiq: лише ті, що зростають; автор: лише лонг
N          = 25                                  // автор: для звичайного використання 25-30
Top        = N паперів з максимальним Score

SELL утримувані папери, які опустилися нижче місця 2 * N   // Finetiq: буфер проти зайвих угод
BUY папери з Top на вільні місця

// розмір за ризиком (автор), міра ризику Finetiq
ATRpct(x) = ATR(x, 20) / Close(x)
Weight(x) = (1 / ATRpct(x)) / Σ(1 / ATRpct по паперах портфеля)
// ребалансування частки, лише коли вона відійшла далі ніж на ±20% від цілі
// автор: зона без угод; Finetiq: ширина зони

// фільтр ринку (автор: модель із книги поступово виходить з ринку)
IF Close(Index) < SMA(Close(Index), 200)         // Finetiq: форма фільтра
    нових купівель немає, місця, що звільнилися, залишаються в кеші

Індикатор на одному-двох символах (Finetiq)

// фільтр якості тренду на одному ринку, рішення на закритті дня
IF Score > 0 AND R2 >= 0.5 AND немає позиції      // Finetiq: стартовий поріг R²
    BUY AT NEXT BAR OPEN
IF Score <= 0 AND є позиція
    SELL AT NEXT BAR OPEN

// два символи: тримаємо той, у якого Score вищий, якщо його Score > 0, інакше кеш

Параметри

Параметр Значення Звідки
Регресія експоненційна (за логарифмом ціни) автор
Нахил у відсотках за день автор
Поправка на якість множення на R² автор
Вікно регресії 90 барів Finetiq
Річний масштаб exp(b × 252) − 1 автор (книга Stocks on the Move), 252 дні Finetiq
Напрямок лише лонг автор
Кількість позицій 25 автор (25-30)
Частота ранжування раз на тиждень Finetiq
Буфер на вихід нижче місця 2 × N Finetiq
Розмір позиції за ризиком автор
Міра ризику ATR(20) у відсотках ціни Finetiq
Зона без угод ±20% від цільової частки Finetiq (автор: зона є)
Фільтр ринку індекс вище SMA 200 Finetiq (автор: фільтр тренду в книзі)
Поріг R² для одного символу 0.5 Finetiq

Що перевірити

  1. Чи дає щось R². Три рейтинги на одному всесвіті: ROC за 90 днів, ROC, поділений на ATR (простий варіант, який згадує автор), і Score. Якщо Score не кращий за другий, краса формули результату не дає.
  2. Вікно. 60, 90, 125 і 250 барів. Дивіться на всю криву результатів, а не на найкращу точку.
  3. Score проти ScoreAnn. Порівняйте склад топ-25 щотижня і підсумковий результат. У книзі автора використовується річний варіант. Якщо різниця велика, зафіксуйте у своїй системі, який варіант використовується.
  4. Чи потрібен фільтр ривків. Виключіть папери з денним рухом понад 15% усередині вікна. Якщо результат не змінюється, R² уже сам справляється з ривками.
  5. Кількість позицій. 10, 25 і 50 паперів: доходність, волатильність, просадка. Це пряма перевірка слів автора про диверсифікацію.
  6. Фільтр ринку проти постійної присутності. Clenow будував обидва типи моделей. Порівняйте їх на 2008, 2020 і 2022 роках.
  7. Частота й витрати. Раз на тиждень проти раз на місяць, зона без угод 10%, 20% і 40%. Рахуйте оборот і результат після комісій.

Особливості платформ

TradingView (Pine Script)

  • Індикатор пишеться в кілька рядків. Нахил: ta.linreg(math.log(close), 90, 0) - ta.linreg(math.log(close), 90, 1), це різниця двох сусідніх точок однієї прямої. R²: math.pow(ta.correlation(math.log(close), bar_index, 90), 2).
  • Ранжування сотень акцій як стратегію не протестувати: стратегія торгує лише символ графіка, кількість запитів request.security обмежена. Перевіряється версія на одному символі.
  • Перші 90 барів значення немає, фільтру SMA 200 потрібна ще довша історія.
  • У дивідендних акцій ціна падає в екс-дивідендну дату. Без коригування (adjustment.dividends у ticker.modify) логарифмічна регресія бачить це як падіння, і R² знижується.

MultiCharts і TradeStation (EasyLanguage)

  • Нахил за логарифмом: LinearRegSlope(Log(Close), 90). R² надійніше порахувати самим у циклі за сумами x, y, xy, x² і y², щоб не залежати від вбудованих функцій різних версій.
  • Ранжування роблять у портфельному модулі: TradeStation Portfolio Maestro або MultiCharts Portfolio Trader. Список символів задається заздалегідь, і поточний склад індексу дає помилку вцілілого.
  • Розмір за ризиком і ребалансування часток потребують капіталу всього портфеля. Копія стратегії на окремому символі сама його не знає.
  • Для двох символів вистачає звичайного графіка: стратегія на Data1 рахує Score і за другим рядом (Data2).

MetaTrader 5 (MQL5)

  • Вбудованої регресії немає. Рахуйте нахил і R² за масивом із CopyClose на закритих барах, починаючи з індексу 1.
  • Всесвіту акцій для ранжування в типового брокера немає: CFD на кілька сотень паперів, коротка історія, без виключених з індексу компаній.
  • У CFD на акції дивіденди приходять коригуванням балансу, а ціна на графіку падає в екс-дивідендну дату. Регресія за таким рядом занижує Score дивідендних паперів.
  • Версія на одному-двох символах (індексні CFD, ф'ючерси) переноситься без проблем.

Де ідея може зламатися

  • В інтерв'ю описано лише принцип. Вікно регресії, фільтри, частота і кількість паперів моделі з книги не прозвучали, наші значення стартові. Якщо хочете перевірити саме версію автора, звіряйте їх з його книгою.
  • Clenow сам називає моделі своїх книг навчальними: їхнє завдання пояснити механізм, а не дати готову систему для торгівлі.
  • Автор попереджає про дві помилки даних, які завищують результат: нинішній склад індексу замість історичного і ціни без урахування дивідендів.
  • R² винагороджує рівне зростання. Портфель зміщується до спокійних паперів, а розмір за ризиком додає таким паперам ще більше ваги. Перевірте, чи не повторює підсумок звичайну ставку на низьку волатильність.
  • Після ведмежого ринку розворот часто різкий. Лідери за останні 90 днів у цей момент це папери, які менше падали, а папери відскоку потраплять у рейтинг із запізненням.
  • 25-30 позицій із розміром за ризиком потребують капіталу або дробових акцій. На маленькому рахунку округлення часток спотворює ваги.

Джерела

  • 022 - Andreas Clenow - A Most Private Discussion on Building Long Term Wealth through Trading

    The Algorithmic Advantage · Andreas Clenow · 2024-08-02

    • 19:44Моделі в книгах автора навчальні
    • 24:38Чому трендслідування ф'ючерсів не переноситься на акції
    • 28:26Помилка вцілілого і дивіденди
    • 32:15Потрібні міра моментуму та її похибка
    • 33:47Експоненційна регресія: нахил у відсотках
    • 34:20Боковик, потім подвоєння: погана підгонка
    • 34:42Нахил множиться на R²
    • 36:08Великі чи малі компанії: питання мети
    • 39:2310 акцій ризиковано, зазвичай 25-30
    • 40:15Фільтр тренду в книзі і моделі завжди в ринку
    • 41:27Розмір за ризиком, зона без угод, ребалансування
    • 1:05:26Довгостроковий моментум як поправка ваг

Заявлено автором

Ці цифри й твердження належать автору. Ми їх не перевіряли.

  • Andreas Clenow: 10 акцій у портфелі дають цікаву доходність і таку саму цікаву волатильність. Для звичайного використання він радить щонайменше 25-30, далі користь диверсифікації зростає повільно.
  • Clenow: книзі Stocks on the Move близько 10 років. Модель у ній з фільтром тренду поступово виходить з ринку, але більшу частину часу вкладена на 100%.

Схожі ідеї

Оновлено: 2026-09-11