Зміст статті

Докази та сфера застосування

Наведені нижче визначення перевірено за даними Fidelity, Sierra Chart та Chaikin Analytics. Накопичення та розподіл є інтерпретаціями розрахунку ціни та обсягу, а не прямими спостереженнями за ідентичністю учасників або підтвердженою прибутковістю для запропонованої схеми. [1] [2] [3]

Дані та ринкиСтабільні бари OHLCV з дійсними полями максимуму, мінімуму, закриття та обсягу. Версія, що використовує тіковий обсяг, вимірює активність оновлення ціни та має бути ідентифікована окремо.
Таймфрейми дослідженняДенна та внутрішньоденна версії потребують окремих тестів. Тривалість вікон у цій статті є дослідницькими параметрами, а не оптимізованими рекомендаціями.
Синтетичний ряд CMF на шкалі від −1 до 1 перетинає експериментальний поріг 0.05, а потім послаблюється. Це індикаторний ряд, а не ціна чи чистий грошовий потік.Відкрити ілюстрацію в повному розмірі
Оригінальна синтетична ілюстрація. Синтетичний ряд CMF на шкалі від −1 до 1 перетинає експериментальний поріг 0.05, а потім послаблюється. Це індикаторний ряд, а не ціна чи чистий грошовий потік.

Практична послідовність дій

Порядок дій: Грошовий потік Чайкіна: положення закриття з вагою за обсягом
Повні кроки наведено нижче. На кожному етапі потрібно записати причину відхилення, якщо бракує даних або не виконано умови.
  1. Перевірити OHLCVПеревірте узгодженість діапазону, невід’ємний обсяг та пропущені бари.
  2. Обчисліть положення закриттяЗадайте правило для рівних максимуму й мінімуму та шкалу індикатора.
  3. Застосувати фіксоване вікноВикористовуйте завершені спостереження та додатний знаменник.
  4. Підтвердити структуру цінФільтр не може врятувати недійсний прорив.
  5. Порівняйте варіанти зважуванняВиміряйте CMF відносно незваженого місця закриття після врахування витрат.

CMF вимірює місце закриття, а не напрямок від закриття до закриття

OBV надає обсягу знак за зміною ціни від попереднього закриття. CMF оцінює, чи поточне закриття у верхній або нижній частині власного діапазону. Коли H більше L, множник дорівнює (2C−H−L)/(H−L): +1 на максимумі, −1 на мінімумі й нуль посередині. [1] Тому день зі зниженням відносно вчорашнього закриття може дати додатний внесок, якщо завершується близько до власного максимуму.

CMF ділить суму добутків множника на обсяг на сумарний обсяг ковзного вікна. Тут використовується шкала від −1 до 1. Деякі продукти множать результат на 100; Chaikin Analytics описує шкалу ±100. [3] Поріг 0.05 першої шкали відповідає 5 другої. Без урахування одиниць перенесений поріг може пропускати майже всі випадки або майже жодного.

Множник описує кінцеве положення в межах діапазону. Він не реконструює шлях, пройдений через цей діапазон, або сторону, з якої починається кожна угода. Два бари з однаковими максимумом, мінімумом, ціною закриття та обсягом створюють однакові внески CMF, навіть якщо їхні послідовності транзакцій та історія потоку ордерів були дуже різними.

До тесту задайте правила для барів без діапазону та пропусків

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

Відхиляйте дані, де максимум нижчий за мінімум, закриття поза записаним діапазоном або обсяг від’ємний. За нульового сумарного обсягу в знаменнику результат недоступний, а не нейтрально дорівнює нулю. Fidelity вказує 21 період як поширене налаштування. [1] [2] Вікна 10, 20 або 50 — окремі дослідницькі варіанти, які треба записувати до журналу експериментів.

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

for i in full_window(t, n=21):
    assert L[i] <= C[i] <= H[i] and V[i] >= 0
    multiplier[i] = 0 if H[i] == L[i] else (2*C[i]-H[i]-L[i])/(H[i]-L[i])
denominator = sum(V[i] for i in full_window(t,21))
cmf[t] = NA if denominator == 0 else sum(multiplier[i]*V[i] for i in full_window(t,21))/denominator
filter_ok = cmf[t] > 0.05  # proposed threshold, scale -1..1

Розрахунок за трьома барами й контрприклад із гепом

Коротке вікно тут лише показує арифметику. У бара A значення H=110, L=100, C=108 та V=100 дають множник 0.6. У бара B значення H=112, L=102, C=104 та V=200 дають −0.6. У бара C значення H=L=C=105 та V=100 дають нуль за заданим правилом для бара без діапазону. CMF дорівнює (60−120+0)/400=−0.15.

Якщо вилучити бар без діапазону з чисельника й знаменника, результат буде −0.20. Порівнювати будь-яке з цих значень із платформою можна лише після з’ясування її правила розрахунку. Цей малий тест перевіряє реалізацію: відмінність може змінювати перетини порогів.

Нехай учорашнє закриття дорівнює 110, а сьогодні після гепу вниз торгівля дала H=101, L=99 та C=100.8. Множник додатний, 0.8, хоча ціна закриття впала на 9.2. CMF безпосередньо не вимірює втрату на гепі. Система, яка сприймає кожне додатне значення як бичачий сигнал, може купити актив під час сильного зниження.

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

Окремо перевірте фільтр пробою та стійкість додатного CMF

Зафіксуйте опір за попереднім вікном чи підтвердженими півотами. Коли ціна закривається вище нього, порівняйте два фільтри: поточний CMF вище нуля або щонайменше чотири з останніх п’яти значень CMF вище нуля. Другий вимірює стійкість, а не одну точку. Чотири й п’ять — експериментальні налаштування, а не приписуване джерелу первинне правило.

Вхід відбувається на наступній доступній для виконання події після закриття. Поставте стоп на вже відомий рівень скасування структурного сценарію. Якщо базова версія використовує ціль 2R і вихід через 20 барів, збережіть їх у гілці без CMF. Інакше вплив відбору та зміни виходу змішується, ускладнюючи порівняння.

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

Перекриваючі вікна стійкості є дуже залежними. Чотири позитивні спостереження у п'яти стовпцях не є чотирма незалежними голосами з різних джерел. Уникайте перетворення кількості корельованих спостережень на непідтверджений показник ймовірності або достовірності.

Зіставляйте дивергенцію з підтвердженими півотами ціни

Запропонована бичача дивергенція використовує два підтверджені мінімуми ціни: другий нижчий, а CMF на відповідних часових мітках вищий на другому. Не вибирайте привабливу западину CMF незалежно без наперед заданого допуску зіставлення. Кандидат виникає лише після підтвердження пізнішого півота ціни та все ще потребує подальшого цінового сигналу.

CMF — ковзне відношення. Вихід спостереження з великим обсягом із вікна може змінити знак самого CMF навіть за звичайного поточного бара. Записуйте внески до чисельника, які додаються та вибувають, щоб пояснити перетин. Цей механічний ефект не обов’язково означає новий приплив грошей.

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

Виберіть порівняння, що виділяють внесок ваги за обсягом

Порівняйте CMF із незваженим середнім значенням тих самих множників місця закриття для ідентичних цінових кандидатів. Це безпосередньо запитує, чи додає зважування за обсягом корисну інформацію, окрім місця закриття. Тільки потім додайте RVOL як ще один експеримент; дві величини, отримані за обсягом, не повинні автоматично вважатися незалежними підтвердженнями.

Окремо покажіть результати для днів із гепами, частоти барів без діапазону та вікон, де домінують нечисленні великі обсяги. До фінального хронологічного тесту зафіксуйте вікно й пороги. Врахуйте спред, прослизання та реальне виконання на наступній події; потім покажіть чисте математичне очікування, частоту та просадку.

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

Поширені помилки

Позитивний CMF після великого розриву вниз

Закриття у верхній частині власного діапазону сумісне з великою втратою відносно попереднього закриття.

Ігнорування спостереження, що виходить із вікна

Зміна знаку може бути результатом закінчення терміну дії старого внеску, а не незвичайної поточної активності.

Сприйняття накопичення як встановлення особи покупця

Формула не може встановити, що установи купували активи або що чисті гроші надійшли до активу.

Список перевірки перед застосуванням методу

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

0/7 пунктів

Поширені запитання

Чи CMF те саме, що й OBV?

Ні. CMF використовує місце закриття в межах поточного діапазону; OBV використовує напрямок між послідовними закриттями.

Чи підтверджує CMF вище нуля прорив?

Це перевірювана ознака. Чи поліпшує вона чисті результати, залежить від визначення події, ринку та витрат виконання.

Джерела дослідження

Кожне джерело підтверджує визначення або докази, описані поруч. Псевдокод, штучні приклади та запропоновані параметри потребують окремої перевірки.

  1. Chaikin Money FlowFidelity. Визначення, формула, поширене налаштування у 21 період та звичайна інтерпретація. Перевірено: .
  2. Chaikin Money Flow — Studies ReferenceSierra Chart. Реалізація розрахунку CMF на платформі. Перевірено: .
  3. Chaikin Money FlowChaikin Analytics. Документація постачальника, що пояснює його шкалу ±100 та інтерпретацію ціни та обсягу. Перевірено: .

Пов’язані методи

Примітка про ризики

Матеріал призначений для навчання й планування досліджень, а не є фінансовою порадою. Backtest моделює минулі дані, не гарантує майбутніх результатів і не здійснює реальних угод. Методи бібліотеки не обов’язково реалізовані в застосунку. Дивіться методологію і навчальний центр.

Перевірте правила, перш ніж ризикувати реальним капіталом

Перевірте можливості застосунку, дані й кожну змодельовану угоду; складні детектори можуть потребувати окремої реалізації.

Завантажити Backtest в App Store