← Усі ідеї
#054НовеІмпульсСвінг

Ранжування акцій за прибутком самої стратегії: топ-N з люфтом замість стопа

Трендова стратегія проганяється по 500 акціях, папери ранжуються за її прибутком на кожному за останні місяці. Тримаємо 10-20 найкращих з тих, де є позиція, і виходимо при падінні в рейтингу. Стопів немає.

The Algorithmic Advantage · Perry Kaufman · Дивитися відео

Ринки

Акції, Ф'ючерси

Таймфрейм

D1

Дані

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

Правила

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

Складність

Складна

Статус

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

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

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

Ідея коротко

Perry Kaufman торгує акції та ф'ючерси однією трендовою моделлю. У ній сім індикаторів: п'ять трендів різної довжини і два підтвердження. На акціях він входить лише в лонг і лише коли всі сім указують угору.

Папери для портфеля він вибирає незвично. Стратегія проганяється по списку приблизно з 500 акцій, і для кожної записується, скільки стратегія на ній заробила за останні місяці. Усі папери ранжуються за цим прибутком, а не за зростанням ціни. Потім з рейтингу прибираються папери, де в стратегії зараз немає відкритої позиції, і з решти в портфель ідуть 10-20 верхніх.

Рейтинг перераховується щодня. Папір іде з портфеля, коли опускається на кілька місць нижче межі топу. Kaufman називає це люфтом, у прикладі чотири місця. Стоп-лоса немає, його роль виконує рейтинг. Папір можна продати і в прибутку, якщо інший працює краще.

Відмінність від картки «Подвійний моментум» і від ротацій за ROC у тому, що саме ранжується. Там рейтинг будується за доходністю активу. Тут за тим, скільки конкретна стратегія змогла з активу видобути. За словами Kaufman, рейтинг за доходністю самих акцій у нього не спрацював.

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

Kaufman спирається на стійкість руху. Якщо ринок уже йде добре і всі сім індикаторів у лонгу, він схильний продовжувати якийсь час. Папери на кшталт Nvidia та Apple з його прикладу роблять основний прибуток портфеля.

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

Рейтинг як вихід розв'язує відому проблему довгострокового тренду. Трендова система на одному папері виходить пізно й віддає помітну частину прибутку. Тут паперу досить випасти з топу, і його місце займе сильніший. За словами автора, утримання скорочується приблизно вдвічі, а довгі тренди залишаються основою відбору.

Усе це пояснення автора. Підсумкових цифр доходності методу в інтерв'ю немає.

Правила

Базова стратегія на кожному папері

// автор: п'ять трендів і два підтвердження, в акціях вхід, коли всі сім у лонгу
// індикатори автор не розкрив; періоди трендів він вибирає в діапазоні 30-120 днів
// Finetiq: заміна для перевірки самої ідеї ранжування
T(n)     = Close > SMA(Close, n)    for n in [30, 45, 60, 90, 120]   // Finetiq
Confirm1 = SMA(Close, 30) > SMA(Close, 30)[5]                        // Finetiq: коротка середня зростає
Confirm2 = SMA(Close, 60) > SMA(Close, 120)                          // Finetiq
AllLong  = усі п'ять T(n) AND Confirm1 AND Confirm2

// тіньова стратегія рахується на кожному папері завжди,
// незалежно від того, чи є папір у портфелі
IF AllLong AND немає тіньової позиції       THEN тіньова купівля AT NEXT BAR OPEN
IF Close < SMA(Close, 60) AND є тіньова     THEN тіньовий продаж AT NEXT BAR OPEN   // Finetiq: вихід не названо
ShadowShares = 10000 / Close на вході      // автор: $10 000 на папір
ShadowEquity = прибуток закритих тіньових угод + відкритий за поточною ціною

W         = 63 бари                        // автор: 3-6 місяців, в іншому місці 30-60 днів; Finetiq: 63
ShadowPnL = ShadowEquity - ShadowEquity[W] // Finetiq: прибуток за вікно

Відбір, рейтинг і вихід (автор)

Universe = близько 500 акцій, Close >= 10        // автор: без акцій, дешевших за $10
N        = 10                                    // автор: 10-20
Latitude = 4                                     // автор: «скажімо, чотири» місця

// щодня після закриття (автор)
Eligible = [x in Universe : у тіньової стратегії на x відкрита позиція]   // автор
Rank(x)  = місце x в Eligible за ShadowPnL(x), за спаданням               // автор: абсолютний прибуток
// автор: ранжує всі папери і прибирає ті, де позиції немає.
// Finetiq: місце й люфт рахуємо вже після виключення, так у топі завжди N паперів з позицією

FOR each x in Portfolio
    IF x NOT in Eligible                         // Finetiq: базова стратегія сама вийшла
        SELL x AT NEXT BAR OPEN
    ELSE IF Rank(x) > N + Latitude               // автор: випав з топу з люфтом
        SELL x AT NEXT BAR OPEN

WHILE у портфелі менше N паперів
    BUY найкращий за Rank папір з Eligible, якого немає в портфелі, AT NEXT BAR OPEN
    // Shares = 10000 / Close (автор)
// стоп-лоса немає (автор)

Перегрів папера і всього портфеля (частково автор)

Vol20(x) = StdDev(ln(Close / Close[1]), 20) * sqrt(252)   // автор: річна волатильність за 20 днів
IF Vol20(x) > 50%                                          // автор: поріг для типової акції
    чекати ознаки вершини, потім SELL x AT NEXT BAR OPEN   // автор: одразу не продавати
    // Finetiq: ознака вершини = закриття нижче мінімуму останніх 5 барів

// автор: коли збитки йдуть по всьому портфелю одразу, він виходить з усього портфеля
// і повертається після зниження волатильності та стабілізації денних результатів.
// Правило він назвав секретом. Прозвучало число 0.32 без одиниць, формалізувати його не можна

Ф'ючерси (автор)

// той самий рейтинг за прибутком стратегії, позиції в обидва боки
// автор: індекси й процентні ставки лише в лонг, інші ринки в обидва боки
Sectors = кількість різних секторів серед відібраних ринків
IF Sectors = 1  THEN плече × 0.50      // автор
IF Sectors = 2  THEN плече × 0.75      // автор: зниження на 25%
IF Sectors >= 3 THEN плече × 1.00      // автор

Версія для одного-двох символів (Finetiq)

Ранжування на одному символі не перевірити. Можна перевірити слабшу форму: брати сигнал стратегії, лише коли сама стратегія на цьому символі нещодавно заробляла.

IF AllLong AND ShadowPnL > 0 AND немає позиції
    BUY AT NEXT BAR OPEN
IF (немає тіньової позиції OR ShadowPnL <= 0) AND є позиція
    SELL AT NEXT BAR OPEN

// два символи: реальна позиція відкривається там, де ShadowPnL вищий

Параметри

Параметр Значення Звідки
Базова модель п'ять трендів і два підтвердження, усі в лонгу автор
Індикатори моделі п'ять SMA 30-120 і два підтвердження Finetiq
Вихід базової моделі закриття нижче SMA 60 Finetiq
Кандидати близько 500 акцій автор
Мінімальна ціна $10 автор
Розмір $10 000 на папір, поділені на ціну автор
Міра рейтингу абсолютний прибуток стратегії за вікно автор
Вікно рейтингу 3-6 місяців або 30-60 днів автор (дві версії)
Вікно в барах 63 Finetiq
Умова відбору у стратегії відкрита позиція автор
Кількість паперів 10-20 автор
Люфт 4 місця автор (приклад)
Перерахунок щодня автор
Стоп-лос немає автор
Поріг волатильності 50% річних за 20 днів автор
Ознака вершини закриття нижче мінімуму 5 барів Finetiq
Ф'ючерси: плече 1 сектор −50%, 2 сектори −25% автор

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

  1. Що ранжувати. Один всесвіт і одна базова стратегія, п'ять рейтингів: прибуток стратегії, доходність самої акції за те саме вікно, Sharpe тіньових угод, відношення прибутку до ризику (Finetiq: прибуток за вікно до максимальної просадки тіньової кривої), дні відновлення після просадки. Kaufman стверджує, що працює лише перший. Це головна перевірка картки.
  2. Вікно. 30, 60, 90 і 126 днів. Автор назвав два діапазони в одному інтерв'ю, перевірте обидва.
  3. Люфт і оборот. Люфт 0, 2, 4 і 8 місць. Дивіться середнє утримання (автор говорить про 16-17 днів), кількість угод на рік і результат після комісій і спреду.
  4. Кількість паперів. 10, 20 і 50 проти S&P 500 з дивідендами. Автор очікує, що 50 паперів дадуть результат індексу.
  5. Рейтинг проти стопа. Ті самі входи, але вихід лише за сигналом базової стратегії і стопом 3 ATR. Якщо рейтинг не кращий, його користь у відборі, а не у виході.
  6. Інша базова стратегія. Замініть сім індикаторів перетином SMA 50 і 200 або пробоєм 100 днів. Автор каже, що ранжування допомагає майже будь-якій стратегії.
  7. Відбір кандидатів. Проженіть метод на всьому індексі з історичним складом і на списку, відібраному за трендовістю на всій історії. Різниця покаже, скільки результату дає зазирання вперед під час складання списку.

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

TradingView (Pine Script)

  • Ранжування по сотнях акцій як стратегію не протестувати: торгується лише символ графіка, запити request.security обмежені.
  • Перевіряється версія на одному символі. Тіньові угоди доведеться рахувати вручну в змінних var: strategy.netprofit та інші поля strategy.* відображають лише виконані, тобто вже відфільтровані угоди.
  • Другий символ читається через request.security, усередині якого викликається та сама функція тіньового прибутку. Торгувати цей символ стратегія не зможе.
  • Розмір $10 000 на угоду: default_qty_type = strategy.cash, default_qty_value = 10000.

MultiCharts і TradeStation (EasyLanguage)

  • Ротацію по сотнях паперів роблять у портфельному модулі. У MultiCharts Portfolio Trader відбір пишуть окремим портфельним сигналом керування капіталом, який бачить значення всіх стратегій. У TradeStation Portfolio Maestro заздалегідь перевірте, чи вміє ваша версія ранжувати за значенням, яке рахує стратегія.
  • Головна пастка: NetProfit, PositionProfit і OpenPositionProfit рахують лише виконані угоди. Якщо портфель не взяв папір, його прибуток буде нульовим, і папір ніколи не потрапить у рейтинг. Тіньовий прибуток кожна копія стратегії має рахувати сама.
  • Розмір в акціях: Buy IntPortion(10000 / Close) shares next bar at market.
  • Щоденний перерахунок по 500 символах дає важкий портфельний тест. Ф'ючерсна версія на 20-40 ринках помітно легша.

MetaTrader 5 (MQL5)

  • Всесвіту з 500 акцій з історією в типового брокера немає, є CFD на частину американських паперів без виключених з індексу компаній. Для акцій ідея тут фактично неперевірювана.
  • Ф'ючерсна версія реалістичніша: у багатьох брокерів є CFD на індекси, сировину, облігації та валюти, цього вистачить на 20-40 символів мультисимвольного радника.
  • Історію угод термінала для рейтингу використовувати не можна, у ній лише реальні угоди. Тіньові позиції й прибуток зберігайте в масивах радника по кожному символу.
  • Сектори для правила плеча в MT5 не розмічені, їх доведеться задати списком вручну.

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

  • Сім індикаторів автора не розкрито. Базова стратегія тут наша, і слова Kaufman про результати до неї не стосуються.
  • Вікно рейтингу названо двома способами: 3-6 місяців і 30-60 днів. Крайні вікна відрізняються більш ніж учетверо (126 днів проти 30), і яка версія в автора основна, з інтерв'ю не зрозуміло.
  • Список кандидатів автор збирав вручну: волатильні папери з низьким боргом, а нові перевіряв на трендовість за середніми 30-120 днів. Якщо в тесті відібрати список за всією історією, у нього потрапить знання майбутнього.
  • Без стопів портфель уразливий до загального падіння сектора. Ведучий указав на такий ризик (чотири напівпровідникові папери одночасно), Kaufman погодився, що це можливо, хоча в нього так не траплялося.
  • Портфельний вихід при загальному падінні автор не розкрив. Без нього в різкому ведмежому ринку захистом слугують лише виходи базової стратегії і рейтинг.
  • Фраза про щорічне випередження S&P 500 прозвучала від ведучого, а не від Kaufman, і без цифр.
  • Щоденний перерахунок і люфт у чотири місця дають утримання близько двох-трьох тижнів. При позиції $10 000 спред і комісії помітні, особливо на волатильних паперах, яким автор віддає перевагу.

Джерела

  • 020 - Perry Kaufman - A Wealth of Experience Trading Diversified Strategies in Futures & Equities

    The Algorithmic Advantage · Perry Kaufman · 2024-07-07

    • 28:02Модель: п'ять трендів і два підтвердження
    • 29:07В акціях вхід, лише коли всі сім у лонгу
    • 32:49Прогін стратегії по 500 кандидатах
    • 33:59За доходністю самих акцій не працює
    • 35:24Sharpe і дні відновлення не спрацювали
    • 36:15$10 000 на папір, без акцій, дешевших за $10
    • 38:46Вікно 3-6 місяців, лише папери з позицією
    • 45:24Волатильність за 20 днів вище 50%
    • 46:16Вихід з усього портфеля: правило не розкрито
    • 48:1710-20 акцій: 50 дають доходність S&P 500
    • 49:00Вікно 30-60 днів, щоденний перерахунок
    • 49:33Люфт у чотири місця рейтингу
    • 51:07Рейтинг замість стоп-лоса
    • 51:57Утримання 30-35 днів скорочується до 16-17
    • 52:51Ф'ючерси: плече за кількістю секторів
    • 56:11Як відібрано 500 кандидатів
    • 1:00:34Періоди 30-120: брати середнє, а не найкраще

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

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

  • Perry Kaufman: ранжування за Sharpe, за відношенням доходності до ризику і за кількістю днів відновлення після просадки в нього не спрацювало. Працював лише абсолютний прибуток стратегії.
  • Kaufman: ранжування за доходністю самих акцій без стратегії не працює. Ранжування за прибутком стратегії, за його словами, покращує майже будь-яку стратегію: він застосовує його на ф'ючерсах і ще до двох-трьох стратегій, крім трендової.
  • Kaufman: рейтинг скорочує утримання трендової системи з 30-35 до 16-17 днів.
  • Kaufman: 50 акцій у портфелі дають приблизно доходність S&P 500. Щоб випереджати індекс, треба тримати 10-20 і приймати більший ризик.
  • Kaufman: у типової акції тривожний рівень річної волатильності за 20 днів близько 50%.
  • Kaufman: на ф'ючерсах, якщо всі відібрані ринки з одного сектора, плече знижується на 50%, з двох секторів на 25%. Ці числа він називає своєю прикидкою.
  • Зі слів ведучого: Kaufman 15 років торгує по суті одні й ті самі стратегії і щороку випереджав S&P 500. Сам Kaufman в епізоді цифр доходності не наводить.

Схожі ідеї

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