Индикатор OBV: как устроен и что показал на данных Мосбиржи

Джозеф Гранвилл построил индикатор OBV на одной идее. Объём приходит раньше цены, поэтому накопленный объём предсказывает будущее движение. Я проверил это утверждение на дневных котировках шестнадцати акций Мосбиржи за 2019-2026 годы. Связь изменения OBV с доходностью следующей недели оказалась в районе нуля, от минус 0,04 до 0,06 по разным бумагам. Связь того же изменения OBV с доходностью, которая УЖЕ случилась, составила от 0,66 до 0,77. Индикатор не заглядывает вперёд, он аккуратно записывает прошлое. Дальше разбираю, откуда взялась легенда об опережении, что осталось от классических сигналов после честной проверки и в каком единственном месте объёмный индикатор действительно полезен российскому инвестору.

Предупреждение о рисках: Торговля на финансовых рынках (Forex, CFD, фьючерсы) сопряжена с высоким уровнем риска и подходит не всем инвесторам. По статистике, 70-80% розничных трейдеров теряют средства. Информация в этой статье носит исключительно образовательный характер и не является инвестиционной рекомендацией или призывом к торговле. Прошлые результаты не гарантируют будущую доходность. Перед началом торговли оцените свой уровень подготовки и финансовые возможности.

 

Что такое индикатор OBV и откуда он взялся

 

On Balance Volume, или балансовый объём, суммирует дневные объёмы торгов с плюсом или минусом. Знак задаёт цена закрытия. Закрылись выше вчерашнего уровня, весь дневной объём прибавляется к накопленной сумме. Закрылись ниже, тот же объём вычитается. Закрылись ровно на вчерашнем уровне, значение остаётся прежним. Получается одна линия, которая ползёт вверх, пока рынок закрывается в плюс на больших оборотах, и разворачивается вниз, когда крупные обороты приходятся на падающие дни.

Автор индикатора Джозеф Гранвилл описал метод в книге «Granville’s New Key to Stock Market Profits» в 1963 году, назвав теорию балансового объёма главным ключом к успешной торговле. Идея была смелой для своего времени. До Гранвилла объём смотрели как отдельную гистограмму под графиком, всплеск за всплеском, без накопления. Гранвилл предложил считать нарастающий итог и тем самым превратил разрозненные столбики в линию, которую можно сравнивать с ценой.

Логика такая. Крупный капитал набирает позицию раньше, чем движение становится очевидным, и следы этого набора остаются в объёмах. Значит, если объёмы уже растут на растущих закрытиях, а цена ещё топчется, скоро будет рывок. Формулировка «volume precedes price» стала визитной карточкой метода и до сих пор открывает описание индикатора в ChartSchool.

 

Кем был автор индикатора

 

Про Гранвилла стоит рассказать отдельно, и не ради колорита. Его биография сама по себе поучительна для всякого, кто собирается торговать по чужому методу.

Гранвилл вёл платный бюллетень и был звездой рынка на рубеже 1980-х. Шестого января 1981 года при значении Dow Jones 1004,69 он разослал подписчикам сигнал продавать всё. На следующий день индекс потерял 4,2% при рекордном на тот момент объёме 92,9 млн акций, и это падение вошло в историю как «эффект Гранвилла» (Benzinga, This Day In Market History). Подписчиков у бюллетеня было около одиннадцати тысяч, годовая подписка стоила 250 долларов, а срочные телефонные оповещения ещё вдвое дороже.

Дальше случилось то, о чём в обзорах индикатора обычно не пишут. Гранвилл остался медведем и на 1982 год, а именно в августе 1982 года начался самый длинный бычий рынок XX века. Он звал продавать в точке, с которой Dow пошёл от 785 пунктов к одиннадцати тысячам. Совокупный результат его рекомендаций с 1980 года по январь 2005 года составил минус 0,5% годовых против плюс 11,9% годовых у самого рынка за тот же период.

Двенадцать процентных пунктов отставания в год на четвертьвековой дистанции. Человек, придумавший индикатор для опережения рынка, проиграл рынку с редкой последовательностью.

Это не повод выбрасывать OBV. Это повод не принимать на веру фразу «объём предшествует цене» только потому, что её произнёс автор метода.

 

Как считается индикатор OBV

 

Формула помещается в три строки, и в этом её главное достоинство. Никаких сглаживаний, весов и подгоняемых коэффициентов.

Если закрытие сегодняшнего дня выше вчерашнего, то OBV сегодня равен вчерашнему OBV плюс сегодняшний объём. Если закрытие ниже вчерашнего, из вчерашнего значения вычитается сегодняшний объём. Если закрытия совпали, значение не меняется.

Обратите внимание на то, чего в формуле нет. В расчёт не входит размах свечи, не входит соотношение открытия и закрытия внутри дня, не входит направление отдельных сделок. День, когда бумага выросла на 0,1%, и день, когда она выросла на 8%, добавляют к индикатору один и тот же объём при равных оборотах. Балансовый объём различает только знак движения, а не его силу.

Отсюда первое практическое следствие. Абсолютное значение индикатора не значит ничего. Оно зависит от того, с какой даты терминал начал считать накопление, и на разных платформах будет разным для одной и той же бумаги. В ChartSchool это сформулировано прямо, шкала OBV нерелевантна и на графиках вообще не показывается. Смотреть надо на направление линии и на её сравнение с ценой, а не на цифру.

Второе следствие тоньше и важнее. Индикатор строится из цены закрытия, той же самой, по которой вы считаете доходность. Он не приносит на график информацию из другого источника, он перевзвешивает уже известное направление дневным оборотом. Заранее видно, что такая конструкция будет тесно связана с уже случившимся движением. Насколько тесно, я посчитал ниже, и цифра оказалась выразительной.

 

Что происходит при гэпах и одинаковых закрытиях

 

На российском рынке два случая ломают простую логику расчёта. Первый, закрытие в точности совпало со вчерашним. На ликвидных бумагах с ценой в сотни рублей такое случается редко, а вот на бумаге ценой в полтора рубля совпадения идут регулярно, и индикатор просто замирает. Второй случай интереснее. Дивидендный гэп, когда бумага открывается на 8-10% ниже вчерашнего закрытия и весь день торгуется в узком диапазоне. Формально это день падения, и весь дневной объём уходит в минус, хотя никакого распределения не было, просто из цены вышли дивиденды. Балансовый объём такие дни не различает, и на бумагах с высокой дивидендной доходностью это накапливает систематический перекос вниз.

 

Как читать индикатор на графике

 

Линия OBV живёт в отдельном окне под ценой, шкала подстраивается автоматически. Читают её тремя способами.

Подтверждение тренда. Цена растёт, линия индикатора растёт вместе с ней, значит за движением стоят обороты. Цена растёт, а линия стоит на месте, значит рост идёт на тонком рынке.

Расхождение. Цена обновила максимум, а балансовый объём до своего прошлого максимума не дотянул. Классическая трактовка называет это медвежьей дивергенцией и ждёт разворота вниз. Зеркальная ситуация на минимумах называется бычьей дивергенцией.

Графический анализ по самой линии. По OBV строят трендовые линии и горизонтальные уровни ровно так же, как по цене, и ждут пробоя раньше, чем он случится на графике котировок.

Все три способа звучат убедительно. Все три ниже проверены счётом, и результаты сильно расходятся с ожиданиями.

Индикатор OBV в нижней панели дневного графика Сбербанка
Шкала индикатора условна и зависит от того, с какой даты терминал начал накопление, поэтому сравнивать абсолютные значения двух бумаг бессмысленно.

 

Настройки индикатора OBV, которых нет

 

У большинства индикаторов первым делом спрашивают период. У балансового объёма периода нет вообще. В окне настроек MetaTrader есть только выбор цены для сравнения и цвет линии, в TradingView добавляется опция сглаживания. Настраивать нечего, и это редкое для технического анализа свойство.

Практический плюс очевиден. Индикатор невозможно подогнать под историю, а значит нельзя получить красивый бэктест простым перебором параметров. Когда я в статьях про RSI и MACD прогонял перебор настроек, лучший по прошлому набор регулярно проваливался на новых данных. С OBV этой ловушки нет по устройству.

Минус ровно оборотный. Раз подстроить индикатор нельзя, то и адаптировать его к конкретной бумаге не выйдет. Единственное, что остаётся в руках у трейдера, это наложить на линию скользящую среднюю и работать с пересечениями. Такую связку я тоже проверил на данных, результат в разделе про сценарии.

 

Что показывают данные Мосбиржи

 

Дальше идёт ядро статьи. Все цифры ниже посчитаны на дневных свечах шестнадцати ликвидных акций Мосбиржи с января 2019 года по 5 сентября 2026 года, это 32,6 тысячи торговых дней суммарно. Котировки взяты из MOEX ISS, значения индикатора посчитаны функцией OBV из библиотеки TA-Lib, чтобы формула не зависела от моей памяти.

Методика везде одинаковая. Условие сигнала проверяется по данным на закрытие сигнального дня, вход считается по цене открытия следующего дня, результат меряется закрытием через пять, десять и двадцать торговых дней. Из выборки исключены бумаги, у которых в периоде было дробление или обратный сплит, иначе разрыв в ряду котировок исказил бы и цену, и накопленный объём.

Рядом с каждым результатом привожу базовую частоту, то есть что получилось бы при входе в случайный день той же бумаги без всякого сигнала. Winrate без базы сравнения бесполезен. Шестьдесят процентов выигрышных сделок выглядят прекрасно ровно до того момента, пока не выясняется, что бумага росла в шестидесяти двух процентах случаев вообще без повода.

 

Предшествует ли объём цене

 

Начинаю с главного тезиса Гранвилла. Если объём действительно приходит раньше цены, изменение OBV за последние дни должно быть связано с тем, что цена сделает дальше.

Я взял изменение балансового объёма за пять дней, нормировал его на средний объём бумаги, чтобы величины разных акций были сопоставимы, и посчитал корреляцию с доходностью следующих пяти дней. Затем ту же величину сравнил с доходностью предыдущих пяти дней, то есть с движением, которое уже произошло.

Бумага Связь с будущим движением Связь с уже случившимся Наблюдений
Сбербанк 0,06 0,66 2022
Газпром 0,06 0,77 2022
Лукойл −0,04 0,75 2022
Роснефть 0,05 0,76 2022

Разница между колонками драматичная. С прошлым движением индикатор связан очень сильно, коэффициент 0,66-0,77 означает, что линия OBV почти повторяет пройденный ценой путь. С будущим движением связи нет, значения около нуля болтаются в обе стороны, у Лукойла коэффициент вообще отрицательный.

Результат не должен удивлять после раздела про формулу. Балансовый объём собирается из знака дневного изменения цены. Он обязан идти вместе с ценой, потому что сделан из неё. Опережение появилось бы только в том случае, если бы объём систематически рос до движения, а не вместе с ним.

Чтобы проверить и это, я посчитал обратную связь. Насколько прошлое движение цены объясняет будущее изменение OBV. Значения тоже около нуля, от −0,001 у Лукойла до 0,094 у Роснефти. Ни одна из двух величин не бежит впереди другой, они просто идут рядом.

Связь индикатора OBV с будущим и прошлым движением цены на акциях Мосбиржи
Связь с прошлым сильна ровно потому, что индикатор из прошлого и сделан, знак ему задаёт та же цена закрытия.
Главное о методе
Корреляция изменения OBV с доходностью следующих пяти дней составила 0,06, с уже прошедшими пятью днями от 0,66 до 0,77. Индикатор не опережает цену, он идёт с ней синхронно, потому что собран из тех же закрытий.

 

Дивергенции, или как посчитать 90% вместо 55%

 

Расхождение цены и балансового объёма считается главным сигналом индикатора. Здесь меня ждала самая поучительная часть работы, и я показываю её целиком, потому что на этой ошибке строится половина восторженных обзоров в интернете.

Дивергенцию нельзя увидеть в момент экстремума. Чтобы понять, что вершина сформировалась, нужно дождаться, пока цена от неё отойдёт. Я определял вершину как точку, выше которой не было ни одного закрытия пять дней до и пять дней после. Значит, увидеть эту вершину и построить по ней расхождение можно только на пятый день после неё, никак не раньше.

Дальше я посчитал отработку двумя способами. Честный вариант, вход на следующий день после подтверждения вершины. И наивный вариант, вход по цене самого экстремума, как будто трейдер знал заранее, что вершина именно здесь.

Сигнал и горизонт Наивный подсчёт Честный подсчёт База Наблюдений
Медвежья дивергенция, 5 дней 90,3% 54,8% 50,5% 93
Медвежья дивергенция, 10 дней 79,6% 55,9% 51,1% 93
Медвежья дивергенция, 20 дней 65,6% 48,4% 50,6% 93
Бычья дивергенция, 5 дней 93,9% 53,6% 49,5% 112
Бычья дивергенция, 10 дней 75,0% 50,0% 48,9% 112
Бычья дивергенция, 20 дней 68,8% 58,9% 49,4% 112

Разрыв между колонками и есть цена заглядывания в будущее. Девяносто процентов отработки против пятидесяти пяти, и вся разница создана одним допущением, что вершину видно в день её формирования.

Так рождаются обзоры, где индикатор творит чудеса. Автор открывает историю, находит расхождение, отсчитывает движение от экстремума и получает великолепную статистику. В реальном времени этого экстремума не видно, он становится вершиной только через несколько дней, и к моменту входа лучшая часть движения уже позади.

Отработка дивергенций OBV при подсчёте от экстремума и от дня подтверждения
Разница между колонками говорит не о рынке, а о методе подсчёта. Любая статистика сигналов, где вход берут в точке экстремума, завышена по построению.

Что осталось после честного подсчёта. Медвежье расхождение даёт 54,8% и 55,9% отработки на пяти и десяти днях против базы около 50%, а на двадцати днях уходит ниже базы. Статистически это ничто, отклонение в 0,9 стандартной ошибки. Бычье расхождение на горизонте двадцати дней даёт 58,9% против базы 49,4%, и это единственный результат во всей статье, который дотянул до двух стандартных ошибок. Слабо, на грани, но честно.

Практический вывод простой. Медвежьи расхождения OBV на российских акциях можно не смотреть. Бычьи заслуживают внимания как один из входных фильтров, но не как сигнал сам по себе, и работать они начинают на горизонте месяца, а не недели.

Ловушка расчёта
Отсчёт дивергенции от экстремума даёт 90,3% отработки, отсчёт от дня подтверждения вершины 54,8% при базе около 50%. Разница целиком объясняется тем, что в первом случае в расчёт попадает знание будущего.

 

Фильтрует ли индикатор OBV ложные пробои

 

Это самое частое практическое применение, ради которого объёмный индикатор вообще ставят на график. Цена пробила уровень, вы смотрите на балансовый объём. Подтвердил пробой своим максимумом, значит движение настоящее. Не подтвердил, значит пробой ложный и брать его не надо.

Проверка устроена так. Пробоем считается закрытие выше максимума предыдущих двадцати дней. Подтверждением считается ситуация, когда в тот же день OBV тоже обновил свой двадцатидневный максимум. Ложным пробоем считается возврат цены под пробитый уровень в течение десяти торговых дней.

Пробой Случаев Оказался ложным Медиана за 10 дней Доля прибыльных
OBV подтвердил 936 38,1% +0,20% 51,8%
OBV не подтвердил 382 38,7% +0,26% 51,6%

Разница в шесть десятых процентного пункта на выборке в 1318 пробоев. Это ноль, отклонение в 0,2 стандартной ошибки. Более того, по медианной доходности и по доле прибыльных исходов неподтверждённые пробои оказались чуть лучше подтверждённых, хотя разница там тоже статистически пустая.

Вывод неприятный для метода и важный для читателя. Балансовый объём не отличает истинный пробой от ложного на российских акциях. Правило, которое повторяют все обзоры индикатора, включая прошлую версию этой статьи, на данных не подтверждается.

Причина, скорее всего, механическая. Сильный пробой почти всегда идёт на повышенном обороте, а OBV после дня с большим оборотом и ростом обязан обновить максимум. Индикатор подтверждает почти всё подряд, поэтому и различающей силы у него не остаётся. Из 1318 пробоев подтверждёнными оказались 936, то есть 71%.

Доля ложных пробоев с подтверждением индикатора OBV и без него
Индикатор подтверждает 71 % всех пробоев подряд, поэтому различающей силы у такого фильтра не остаётся.

 

Пересечение OBV со скользящей средней

 

Раз своих настроек у индикатора нет, самая популярная попытка сделать из него торговую систему выглядит так. На линию накладывают скользящую среднюю, а сигналом считают пересечение линии индикатора со своей средней снизу вверх.

Я взял среднюю с периодом двадцать, посчитал все пересечения по четырём голубым фишкам с 2019 года и получил 524 сигнала. Доля прибыльных входов составила 51,9% на горизонте недели, 49,3% на горизонте двух недель и 51,4% на горизонте месяца. Базовая частота роста на тех же бумагах и тех же горизонтах составляет 49,5%, 48,9% и 49,4%.

Преимущество в один-два процентных пункта на выборке в пятьсот сделок неотличимо от случайности, а комиссия и спред съедают его целиком. При тарифе 0,05% за сделку пятьсот входов и выходов стоят пятьдесят процентных пунктов оборота.

 

Кульминация объёма

 

Ещё одна классическая трактовка. На вершине тренда крупный капитал раздаёт бумагу толпе, поэтому резкий скачок балансового объёма у максимума означает близкий разворот.

Аномальным я считал день, когда OBV сдвинулся больше чем на три средних дневных объёма, а цена при этом стояла у двадцатидневного максимума. Таких дней в выборке набралось 67. Через десять торговых дней после них цена оказывалась ниже в 47,8% случаев. Базовая частота снижения на тех же бумагах составляет 49,7%.

То есть после «кульминации покупок» рынок падал чуть реже, чем в обычный день. Сигнал не просто слабый, он направлен в противоположную сторону от учебной трактовки, хотя выборка мала и говорить об устойчивом эффекте я не стану.

 

Наклон OBV на горизонте квартала

 

Осталась последняя возможность. Может быть, индикатор бесполезен на коротких горизонтах, но улавливает медленное накопление, о котором и писал Гранвилл.

Я посчитал наклон линии за шестьдесят торговых дней, разбил все наблюдения на четверти по величине этого наклона и посмотрел, что было с ценой следующие шестьдесят дней. Верхняя четверть, где балансовый объём рос сильнее всего, дала рост в 49,8% случаев. Нижняя четверть, где он сильнее всего падал, дала рост в 49,3% случаев. Базовая частота по всей выборке составила 50,1%.

Три числа в пределах одного процентного пункта друг от друга на выборке в 31,7 тысячи наблюдений. Накопление по Гранвиллу не отличает будущих победителей от будущих аутсайдеров ни на неделю, ни на квартал.

Отклонение сигналов индикатора OBV от базовой частоты в процентных пунктах
Отклонение в один-два пункта на выборке в сотни наблюдений неотличимо от случайности и целиком съедается комиссией.

 

Опережает ли линия индикатора цену хотя бы на день

 

Последняя проверка касается самого правдоподобного варианта опережения. Не на месяц, а на день или два, когда крупный участник уже начал набирать, а цена ещё не вышла из диапазона.

Я нашёл все случаи, когда цена пробивала двадцатидневный максимум, и посмотрел, когда свой двадцатидневный максимум пробил OBV. Из 306 пробоев в 48,0% случаев оба события произошли в один и тот же день. Медианное опережение составило один торговый день, среднее 2,3 дня.

Половина «опережающих сигналов» приходит одновременно с ценой, то есть не опережает ничего. Оставшаяся половина даёт день или два, и этого не хватает, чтобы отбить спред на входе.

 

BUYHOLD · рассылка по субботам

Весь рынок за неделю — в одном письме

Рынки в цифрах, крипта, валюты и сырьё, вклады и ОФЗ, налоги РФ — и что это значит для инвестора. За 5 минут.

Где объём настоящий, а где нарисованный

 

Теперь о том, что делает разговор про OBV на форексе бессмысленным, а на бирже осмысленным. Это самая практичная часть статьи, и в прошлой версии материала её не было вовсе.

Индикатор считает объём. На Московской бирже объём означает буквально количество бумаг, перешедших от продавца к покупателю через центральный стакан. Биржа видит каждую сделку, потому что все сделки проходят через неё. Когда терминал показывает по Сбербанку оборот в десять миллиардов рублей за день, это реальные деньги реальных участников.

На валютном рынке центрального стакана нет. Форекс децентрализован, единого места, где сходятся все сделки по паре евро-доллар, не существует, и ни один брокер не видит общего объёма. Поэтому в MetaTrader под словом «объём» показывается тиковый объём, то есть количество изменений цены за период. В программном интерфейсе платформы это два разных поля, tick_volume и real_volume, и для валютных пар розничный брокер отдаёт первое.

Разница принципиальная. Тиковый объём считает, сколько раз котировка дёрнулась, а не сколько денег прошло. Сделка на тысячу лотов и сделка на один лот дают по одному тику каждая. В спокойные азиатские часы котировка обновляется редко, в момент выхода статистики по США часто, и тиковый объём покажет всплеск активности котирования, а не приток капитала.

Индикатор балансового объёма, посчитанный на тиках, измеряет не то, ради чего был придуман. Гранвилл строил свой метод на объёмах Нью-Йоркской фондовой биржи, где каждая акция проходила через централизованный учёт. Перенос его логики на валютную пару из розничного терминала подменяет предмет измерения, и никакая настройка этого не лечит.

Разница между биржевым объёмом и тиковым объёмом в MetaTrader
Перенос метода Гранвилла на валютную пару подменяет предмет измерения, и никакая настройка этого не лечит.

Отсюда практическое правило. Если вы смотрите на OBV, смотрите на него на акциях, фьючерсах или крипте с биржевым стаканом. На валютной паре в MetaTrader линия индикатора рисуется, но означает совсем не то, что написано в учебнике.

 

Ликвидность бумаги решает больше, чем любые настройки

 

Второй фактор, который определяет пригодность индикатора, это оборот самой бумаги. Разброс на Мосбирже огромный, и его стоит увидеть в цифрах.

Бумага Медианный дневной оборот Максимальный скачок OBV за день (в средних объёмах)
Сбербанк 9,95 млрд ₽ 4,6
Газпром 6,77 млрд ₽ 7,0
Лукойл 4,56 млрд ₽ 6,7
Роснефть 1,89 млрд ₽ 11,1
Ленэнерго преф 27,9 млн ₽ 10,0
МРСК Центра и Приволжья 26,1 млн ₽ 12,0
Казаньоргсинтез 4,0 млн ₽ 13,5

Между Сбербанком и Казаньоргсинтезом разница в обороте почти в две с половиной тысячи раз. На Сбербанке самый экстремальный день за семь лет сдвинул накопленную линию на 4,6 обычных объёма. На Казаньоргсинтезе такой день сдвигает её на 13,5 объёма.

Оборот бумаг Мосбиржи и максимальный однодневный сдвиг индикатора OBV
Порог применимости проходит не по названию бумаги, а по обороту. Ниже сотен миллионов рублей в день линия перестаёт быть статистикой.

Что это значит на практике. На неликвидной бумаге одна крупная заявка перекраивает картину накопления целиком, и линия OBV после неё месяцами показывает след одной сделки, а не настроение рынка. Дивергенция, построенная на таком графике, говорит вам о том, что кто-то один вышел из позиции, и ни о чём больше.

Скачок индикатора OBV на неликвидной бумаге Казаньоргсинтез
После такого дня индикатор месяцами показывает след одной заявки, а выглядит это как устойчивое накопление.

Правило простое. Объёмный индикатор имеет смысл на бумагах с оборотом хотя бы в сотни миллионов рублей в день. Ниже этого порога линия перестаёт быть статистикой и становится летописью отдельных заявок.

 

Чего индикатор OBV не делает

 

Соберу ограничения в одном месте, чтобы их было легко перечитать перед тем, как ставить линию на график.

Он не опережает цену. Проверено выше на четырёх бумагах и восьми годах, связь с будущим движением около нуля, связь с прошлым 0,66-0,77.

Он не различает силу движения. День роста на 0,1% и день роста на 8% добавляют одинаковый объём при равных оборотах. Для индикатора это одинаковые дни.

Он не фильтрует ложные пробои. Доля неудачных пробоев с подтверждением 38,1%, без подтверждения 38,7%.

Он не отличает распределение от дивидендного гэпа. День отсечки формально выглядит как день продаж, потому что закрытие ниже вчерашнего, и весь объём уходит в минус.

Он не работает там, где объём тиковый. На валютных парах в розничном терминале индикатор считает частоту обновления котировки.

Он не имеет абсолютной шкалы. Сравнивать значение OBV двух разных бумаг, или одной бумаги в двух терминалах, бессмысленно.

Он ничего не знает о будущих корпоративных событиях, и это ограничение стоит отдельного разбора ниже. Именно на нём разваливается самый убедительный сигнал.

 

Балансовый объём среди других объёмных индикаторов

 

OBV был первым в своём классе, но не остался единственным. Понимать различия полезно, потому что соседние инструменты чинят ровно те дефекты, которые я разобрал выше.

Накопление и распределение, оно же Accumulation Distribution. Мэрк Чайкин отказался от главного упрощения Гранвилла и стал взвешивать объём по тому, в какой части дневного диапазона закрылась свеча. Если цена закрылась у максимума дня, в накопление уходит почти весь объём, если у середины, почти ничего. Логика в том, что закрытие у верхней границы говорит о силе покупателей внятнее, чем сам факт роста на копейку. Дефект «день роста на 0,1% равен дню роста на 8%» здесь вылечен, зато появился новый. Индикатор игнорирует гэпы, потому что смотрит только внутрь дневного диапазона.

Денежный поток, он же MFI. По сути осциллятор перекупленности, но считаемый с учётом объёма. У него, в отличие от балансового объёма, есть шкала от нуля до ста и есть период расчёта, а значит появляется и параметр для подгонки под историю.

Средневзвешенная по объёму цена, VWAP. Отвечает на принципиально другой вопрос. Не «копят или раздают», а «по какой средней цене реально прошёл оборот сегодня». Это рабочий инструмент для исполнения крупной заявки и ориентир для внутридневной торговли, а не сигнальный индикатор.

Дельта и профиль объёма. Инструменты другого поколения, они разбирают объём на покупки по рынку и продажи по рынку внутри каждого уровня цены. Гранвилл в 1963 году такой информации не имел в принципе, а сегодня она доступна на срочном рынке Мосбиржи через биржевой стакан.

Отсюда видно место OBV в этом ряду. Он самый простой, самый прозрачный и самый грубый. Обзор остальных объёмных инструментов с их настройками я собрал в отдельном материале про индикаторы объёма, здесь важно другое. Ни один из них не отменяет главного ограничения всего класса. Все они считают то, что уже произошло.

 

Как читать линию, если сигналы не работают

 

Торговые сценарии и что с ними стало на данных

 

Собираю четыре классических способа работы с индикатором и рядом ставлю то, что показала проверка. Порядок от самого популярного к самому редкому.

Сценарий Что обещает учебник Что вышло на MOEX 2019-2026 Вердикт
Подтверждение пробоя Отсеивает ложные выходы из диапазона 38,1% ложных против 38,7% без фильтра, 1318 случаев Не работает
Медвежья дивергенция Предупреждает о развороте вниз 55,9% на горизонте 10 дней против базы 51,1%, 93 случая В пределах случайности
Бычья дивергенция Предупреждает о развороте вверх 58,9% на горизонте 20 дней против базы 49,4%, 112 случаев Слабый эффект на грани значимости
Пересечение со средней Даёт точки входа и выхода 51,4% прибыльных против базы 49,4%, 524 сигнала Съедается комиссией

Один сценарий из четырёх подаёт признаки жизни. Разберу его отдельно, потому что даже он требует оговорок.

 

Единственный сценарий, который что-то дал

 

Бычье расхождение выглядит так. Цена делает минимум ниже предыдущего, а балансовый объём при этом рисует минимум выше предыдущего. Трактовка простая. Продавцы додавливают цену, но объёмы на новом дне уже не те, продажи выдыхаются.

На горизонте месяца такие ситуации заканчивались ростом в 58,9% случаев против базовых 49,4%. Прибавка почти в девять с половиной процентных пунктов, отклонение в две стандартные ошибки на выборке из 112 наблюдений.

Теперь оговорки, без которых цифра превращается в рекламу. Две стандартные ошибки означают, что случайность как объяснение маловероятна, но не исключена, а 112 наблюдений это немного. На горизонте недели и двух недель тот же сигнал не даёт ничего, 53,6% и 50,0%. И медианный результат сделки составил 1,7%, что при стопе в разумные несколько процентов не даёт привлекательного соотношения риска и прибыли.

Как этим пользоваться на практике. Не как сигналом на вход, а как поводом присмотреться к бумаге, которую вы и так собирались покупать. Расхождение говорит, что распродажа теряет силу, а решение о покупке принимается по другим основаниям.

 

Два разобранных сигнала

 

Статистика показывает средние по больнице, а торгует человек конкретными сделками. Беру два случая, один против метода и один за, и разбираю оба по шагам с реальными ценами.

 

Провал. Газпром, 14 июня 2022 года

 

Идеальный по учебнику сигнал. Четырнадцатого июня 2022 года Газпром закрылся на 317,69 рубля, пробив максимум предыдущих двадцати дней. Балансовый объём в тот же день обновил собственный двадцатидневный максимум, то есть пробой был подтверждён по всем правилам. Дневной оборот составил 47,5 млн акций против типичных двадцати миллионов в предыдущие дни. Накопление выглядело настоящим, потому что оно и было настоящим.

Вход по открытию следующего дня даёт цену 319 рублей.

Дальше неделю цена держалась выше трёхсот рублей, а двадцать первого июня началось сползание. Тридцатого июня собрание акционеров Газпрома не утвердило рекомендованные советом директоров дивиденды за 2021 год. В тот день бумага открылась на 299,50, сходила на 200 рублей и закрылась на 207,00, потеряв 30,5% за одну сессию при обороте 308 млн акций, то есть в шесть раз выше обычного.

Через двадцать торговых дней после входа позиция стоила 186 рублей. Убыток 41,7%. Индекс Мосбиржи за тот же отрезок потерял 9,5%, то есть тридцать два процентных пункта из падения приходятся именно на Газпром.

Подтверждённый индикатором OBV пробой Газпрома в июне 2022 года
Технически сигнал был безупречен. Ограничение не в индикаторе, а в том, что решения собрания акционеров не оставляют следов в прошлых сделках.

Что здесь важно понять. Индикатор не ошибся в расчёте. Он честно показал, что до 14 июня бумагу покупали на растущих оборотах. Он не мог знать, как проголосует собрание акционеров через две недели, потому что этой информации не было ни в одной прошедшей сделке. Балансовый объём измеряет совершённое, а решения о дивидендах принимаются в будущем.

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

 

Сработавший сигнал. Магнит, весна 2024 года

 

Раз проверка забраковала классические сигналы, остаётся честный вопрос. Что вообще делать с линией на графике.

Отвечу так, как отвечаю себе, когда открываю дневной график незнакомой бумаги.

Первое, на что смотрю, это согласованность направления на длинном отрезке. Цена за полгода выросла, линия индикатора за те же полгода выросла. Ничего предсказательного в этом нет, но есть подтверждение, что рост шёл на сделках, а не на одном тонком дне, за который никто не голосовал деньгами.

Второе, это ступеньки. На ликвидной бумаге линия ползёт плавно, потому что каждый день добавляет сопоставимую величину. Вертикальная ступенька означает день, когда оборот в разы превысил обычный, и это повод открыть новости за ту дату. Чаще всего за ступенькой стоит попадание бумаги в индекс, крупная сделка мажоритария, дивидендная отсечка или расширение лимитов для нерезидентов. Индикатор здесь работает не как предсказатель, а как навигатор по истории бумаги.

Третье, это поведение линии в период боковика. Когда цена стоит в диапазоне, а балансовый объём уверенно ползёт в одну сторону, это самая интересная из ситуаций, которые он умеет показывать. Проверенной статистической силы у неё нет, я честно посчитал это в разделе про наклон, но как повод присмотреться она работает.

Чего я не делаю никогда. Не открываю позицию по одному пересечению линии со средней и не строю по OBV трендовые линии с последующим ожиданием пробоя. Оба приёма проверены выше, оба дали ноль.

 

Как повторить эти расчёты самому

 

Все цифры этой статьи воспроизводимы, и я специально описываю процедуру, чтобы читатель мог проверить меня, а не поверить на слово.

  1. Котировки берутся из открытого API Московской биржи. Запрос на дневные свечи выглядит как обращение к iss.moex.com/iss/engines/stock/markets/shares/boards/TQBR/securities/SBER/candles.json с параметрами интервала и дат, ключ не нужен, ограничений для разумного числа запросов нет. Ответ приходит с полями открытия, максимума, минимума, закрытия, объёма в штуках и оборота в рублях.
  2. Значение индикатора считается функцией OBV из библиотеки TA-Lib, чтобы формула не зависела от того, как я её помню. Три правила расчёта укладываются в пять строк на любом языке, но библиотека избавляет от глупых ошибок вроде обработки первого бара.
  3. Дальше главное, ради чего затевалась вся работа. Правило вычисления результата. Условие сигнала проверяется на закрытии дня, вход считается по цене открытия следующего дня, выход по закрытию через выбранное число дней. Вершина или впадина считается подтверждённой только после того, как прошло пять баров, потому что раньше её не видно.

Рядом обязательно считается базовая частота. Берутся все дни выборки, для каждого считается результат такого же входа, и получается доля случаев, когда бумага росла без всякого сигнала. Без этой цифры любой winrate бессмыслен.

Проверка на устойчивость делается двумя способами. Сначала сравниваются варианты входа, по закрытию сигнального дня и по открытию следующего, разница показывает, насколько результат держится на исполнении. Затем считается отклонение от базы в стандартных ошибках. Если оно превышает четыре, это почти всегда не открытие, а утечка будущего в расчёт.

Именно так и вскрылась история с дивергенциями. Первый вариант расчёта, где движение мерилось от экстремума, давал по медвежьим расхождениям 90,3% отработки. Это отклонение такого размера, что верить в него нельзя. Перенос точки отсчёта на день подтверждения обрушил цифру до 54,8%, и вот она уже похожа на правду.

 

Индикатор OBV для инвестора, а не для трейдера

 

Всё, что разобрано выше, касается сделок на горизонте от недели до месяца. У инвестора, который держит бумаги годами, вопросы к объёму другие, и на некоторые балансовый объём отвечает лучше, чем на трейдерские.

Сколько денег стоит за движением бумаги. Когда акция выросла на сорок процентов за квартал, полезно понимать, сопровождался ли рост оборотами или бумагу переставили на тонком рынке. Второе типично для третьего эшелона и означает, что выйти из позиции по этим ценам будет заметно труднее, чем войти.

Насколько бумага пригодна для вашего размера позиции. Здесь я смотрю не на саму линию, а на её ступеньки относительно среднего объёма. Если максимальный дневной сдвиг накопленной линии равен тринадцати средним объёмам, как у Казаньоргсинтеза, то ваша заявка на пару миллионов рублей в такой бумаге будет заметным событием дня.

Что происходило в истории бумаги. Ступеньки на линии индикатора это удобная карта корпоративных событий, по которой быстро находятся даты, когда с акцией случалось что-то существенное.

Чего инвестору ждать от индикатора не стоит, так это подсказки о моменте входа. Данные выше показали это на всех горизонтах вплоть до квартала.

Если задача состоит именно в том, чтобы собирать позицию в российских акциях вдолгую, объёмный индикатор поможет отсеять неликвид, но не заменит анализа бизнеса. Купить сами бумаги российскому инвестору можно через любого брокера с лицензией ЦБ, а для тех, кому нужен доступ к акциям США и ETF, у нас разобран вариант с Just2Trade. Оговорюсь честно, это офшорная структура Lime LTD без страховки российского типа, порог входа сто долларов, и валютные переводы туда требуют отдельного внимания к комиссиям банка-посредника.

 

Почему индикатор пережил свою проверку

 

Логичный вопрос после всех цифр. Если сигналы не работают, почему OBV шестьдесят лет стоит в каждом терминале.

Первая причина техническая. Индикатор ничего не стоит в расчёте и не требует ни настроек, ни данных сверх тех, что уже есть у платформы. Убрать его из набора дороже, чем оставить.

Вторая причина в устройстве самой линии. Она красиво согласуется с ценой на исторических графиках, потому что сделана из цены. Человек, который смотрит на график задним числом, видит подтверждение метода в каждом развороте. Это тот же механизм, из-за которого убедительно выглядят любые индикаторы на исторических данных.

Третья причина честная. У балансового объёма действительно есть содержательное ядро, просто оно скромнее рекламного. Он показывает, за какими движениями стояли деньги. На рынке, где половина бумаг третьего эшелона живёт на обороте в несколько миллионов рублей в день, это осмысленная информация.

Претензии стоит предъявлять не индикатору, а обещанию. Гранвилл назвал свою книгу новым ключом к прибыли на фондовом рынке и утверждал, что нашёл опережающий показатель. Ключом линия не стала ни для него самого, ни для тех, кто повторял его метод.

 

Обратный пример, где расхождение действительно предупредило о слабости.

Пятнадцатого апреля 2024 года Магнит закрылся на 8248,50 рубля, и балансовый объём в этот день достиг локального максимума. Тридцатого апреля цена поднялась выше, до 8405 рублей, обновив максимум, а линия индикатора до апрельского пика не дотянула. Цена выше, накопленный объём ниже, классическая медвежья дивергенция.

Увидеть вершину 30 апреля можно было только через пять торговых дней, восьмого мая, когда стало ясно, что выше цена не пошла. Вход в короткую позицию по открытию следующей сессии даёт 8250 рублей.

Дальше бумага сползала весь май, а тридцать первого мая обвалилась на 8,1% за день. Через двадцать торговых дней после входа Магнит стоил 6744 рубля, движение в пользу сигнала составило 18,3%.

Медвежья дивергенция индикатора OBV на акциях Магнита весной 2024 года
Даже удачный сигнал стоит смотреть на фоне рынка. Без сравнения с индексом легко записать общее падение в заслугу индикатора.

И сразу оговорка, без которой пример становится витриной. Индекс Мосбиржи за тот же период потерял 6,0%. То есть примерно треть движения объясняется общим падением рынка, а не проницательностью индикатора. Собственный вклад сигнала составил около двенадцати процентных пунктов, и это по-прежнему много, но втрое меньше, чем показывает голая цифра.

Два разобранных случая иллюстрируют не силу и слабость метода, а его природу. В обоих сигнал был технически корректен. В одном случае будущее оказалось за пределами того, что можно вычитать из прошлых сделок, в другом совпало с ними.

 

С чем сочетать индикатор OBV

 

Раз самостоятельной ценности у сигналов почти нет, остаётся вопрос, в какой связке балансовый объём приносит пользу.

С ценовой структурой. Самое честное применение состоит в том, чтобы смотреть на индикатор как на справку, а не как на сигнал. Вы уже решили, что бумага интересна, разметили уровни, и линия OBV отвечает на один вопрос. Шло ли последнее движение на оборотах или на тонком рынке. Это не говорит, куда пойдёт цена, но говорит, сколько денег стоит за тем, что уже произошло.

С анализом ликвидности перед входом. Если вы собираетесь взять позицию, размер которой сопоставим с дневным оборотом бумаги, накопленная линия покажет, как часто на этой бумаге случаются дни, когда один участник двигает всю картину. Для третьего эшелона это более практичный вопрос, чем любые дивергенции.

С осцилляторами перекупленности. Здесь важно не обманываться. Соединение двух слабых сигналов не даёт сильного. В статье про индикатор RSI я разбирал похожую ловушку, там фильтр по двухсотдневной средней убирал девяносто процентов сигналов и оставлял пятнадцать наблюдений, по которым нельзя судить ни о чём. С OBV та же арифметика. Пересечение двух редких условий превращает выборку в анекдот.

Чего делать не стоит. Не надо строить на линии индикатора вторую линию, потом третью, потом полосы Боллинджера по значениям OBV. Каждый слой добавляет параметры, а параметры добавляют возможность подогнать систему под историю. Единственное преимущество балансового объёма как раз в том, что подгонять в нём нечего.

Читайте также: Индикаторы объёма в трейдинге

 

Где смотреть OBV российскому инвестору

 

Индикатор входит в стандартный набор всех распространённых платформ, ставить сторонние скрипты не нужно.

В QUIK балансовый объём добавляется через меню графика как отдельная диаграмма. В приложениях российских брокеров он обычно лежит в разделе индикаторов на полноэкранном графике, там же, где RSI и MACD. В TradingView ищется по запросу On Balance Volume в разделе «Теханализ».

На живом графике buyhold индикатор выводится в нижнюю панель под ценой, он выбирается в списке «Индикатор в нижней панели» рядом с RSI, MACD, Стохастиком, ATR и CCI. На саму цену накладываются скользящие средние, полосы Боллинджера, VWAP, параболик и Ишимоку. Бумаги Мосбиржи там идут с задержкой в пятнадцать минут, чего для дневного анализа достаточно.

Индикатор OBV в нижней панели живого графика buyhold на акциях Сбербанка
В нижнюю панель выводится один индикатор за раз, поэтому свести OBV и RSI на одном экране не получится, их придётся переключать.

Если хочется проверить сигнал не глазами, а сделками, для этого есть торговый симулятор, где сделка отыгрывается на исторических данных без денег, и журнал сделок для записи реальных входов. Второе важнее первого. Без записи через месяц вы не вспомните, какие расхождения брали в работу, а какие пропустили, и любые рассуждения об эффективности метода превратятся в воспоминания о лучших сделках.

 

Частые ошибки при работе с балансовым объёмом

 

  • Отсчёт результата от экстремума. Главная ошибка, из-за которой индикатор кажется сильнее, чем он есть. Вершина становится вершиной только через несколько дней, и мерить движение надо от момента, когда сигнал стало видно. Разница на моих данных составила от 55% до 90% отработки, то есть цена самообмана здесь измеряется десятками процентных пунктов.
  • Чтение абсолютного значения. Число на шкале индикатора зависит от точки начала расчёта в конкретном терминале. Фраза «OBV достиг рекордного уровня» не значит ничего, пока не сказано, с какой даты идёт накопление.
  • Перенос выводов с акций на валютные пары. На форексе в розничном терминале объём тиковый, и линия считает частоту обновления котировки.
  • Работа на неликвиде. На бумаге с оборотом в несколько миллионов рублей в день одна заявка сдвигает накопленную линию на десяток средних объёмов, и вся последующая картина рисуется этой заявкой.
  • Игнорирование дивидендных отсечек. День гэпа выглядит для индикатора днём продаж, хотя продаж не было.
  • Ожидание предсказания. Индикатор построен из прошлых закрытий и прошлых объёмов. В нём физически нет информации о будущем решении совета директоров, о завтрашней статистике или о санкционном пакете.

 

 

Плюсы и минусы индикатора OBV

 

Преимущества
Нечего подгонять под историю, у индикатора нет ни одного числового параметра
Считается по прозрачной формуле в три правила, результат воспроизводится в любом терминале
Показывает, шло ли движение на реальных оборотах, что особенно полезно при выборе размера позиции
Бычье расхождение на горизонте месяца дало 58,9% против базовых 49,4% на 112 наблюдениях
Есть во всех распространённых платформах, включая QUIK и приложения российских брокеров
Недостатки
Не опережает цену, связь с будущим движением от −0,04 до 0,06 против 0,66-0,77 с прошедшим
Не отделяет ложные пробои от истинных, 38,1% неудач с подтверждением против 38,7% без него
Не различает силу движения, день роста на 0,1% и на 8% для него одинаковы
На валютных парах считает тиковый объём, то есть частоту обновления котировки, а не деньги
На бумагах с оборотом в единицы миллионов рублей линию перекраивает одна крупная заявка
Дивидендный гэп записывается как день распродажи, хотя распродажи не было

 

Заключение

 

Балансовый объём оказался не тем, чем его принято считать. Он не предсказывает цену, не фильтрует пробои и не даёт торговой системы. Из шести проверенных применений пять не отличаются от случайности, а шестое, бычье расхождение на горизонте месяца, держится на двух стандартных ошибках и сотне наблюдений.

При этом выбрасывать его я бы не стал, и вот почему. У индикатора остаётся одна честная функция, которую не выполняет ни один ценовой инструмент. Он отвечает на вопрос, стояли ли за движением обороты. Не «куда пойдёт», а «на чьи деньги пришло». Для инвестора, который выбирает бумагу на месяцы, а не ловит вход на неделю, это осмысленная справка, особенно в третьем эшелоне, где половина движений рисуется одним участником.

Мне самому было любопытно посчитать, что останется от метода, автор которого проиграл рынку двенадцать процентных пунктов годовых за четверть века. Осталось меньше, чем обещают учебники, но больше, чем ноль.

И главный практический вывод, который стоит унести из этой статьи. Проверяйте отработку сигналов от того момента, когда сигнал стало видно, а не от идеальной точки на истории. Эта одна поправка превратила блестящие 90% в скромные 55% и сделала с индикатором то, чего не сделали восемь лет данных.

Часто задаваемые вопросы

Вадим Бон
Вадим Бон
Инвестор, предприниматель, трейдер, автор и создатель сайта buyhold.ru
Основатель проекта BuyHold — независимого медиа об инвестициях, трейдинге и финансовой грамотности для русскоязычной аудитории. Практикующий трейдер и инвестор с двойным высшим образованием — экономическим и юридическим (2015 год). С 2017 года занимаюсь анализом мировых финансовых рынков, инвестициями в акции, облигации, ETF и криптовалюту, а также построением долгосрочных портфелей для…

Раскрытие информации о рекламе: Этот обзор может содержать партнерские ссылки. Мы можем получать комиссию при переходе по нашим ссылкам, что помогает нам поддерживать работу сайта и создавать качественный контент. Это не влияет на наши оценки и мнения - мы всегда предоставляем честную и объективную информацию о финансовых сервисах.