В 2022 году Barclays перестали считать CAPE российского рынка, и источников, где можно посмотреть свежие значения этого показателя, не осталось. Исправляю эту ситуацию!
CAPE (cyclically adjusted price-to-earnings ratio), также известный как Shiller P/E или P/E 10 – это отношение капитализации к средней прибыли компаний за 10 лет с коррекцией на инфляцию. Похоже на обычный коэффициент P/E, но волатильность прибылей в знаменателе сглаживается взятием среднего значения за 10 лет. Отсюда и название – циклически скорректированный.
CAPE = Цена (или капитализация) / Ср. EPS (или чистая прибыль) за 10 лет
Значения EPS (earnings per share) или прибыли за прошлые 10 лет прежде, чем посчитать их среднее, приводятся к сегодняшним деньгам через изменение ИПЦ за период.
Роберт Шиллер, автор коэффициента, публикует его значения для индекса S&P 500 здесь. Для американского и других рынков акций готовые значения CAPE можно найти и в нескольких других местах, например, на сайте Barclays.
CAPE российского индекса акций у нас публично вообще никто не считал (или я не знаю об этом), а из иностранных было даа источника – StarCapital и Barclays. Не помню по какому набору акций эту метрику считали StarCapital, а Barclays за основу брали не лучший индекс MSCI Russia. В любом случае оба уже ничего не считают. Один источник CAPE российских акций все-таки остался – Siblis Research бесплатно публикует новое число раз в полгода. Лучше, чем ничего, но, если прибыли компаний обновляются редко, то цена индекса меняется часто, так что CAPE можно считать и ежемесячно.
Зачем вообще нужны значения CAPE? Всех возможных применений знать не могу, но кто-то использует этот коэффициент, чтобы выбирать размер аллокации в те или иные страны, а кто-то – чтобы знать сколько денег можно вывести из портфеля на текущие расходы. Так или иначе для начала эти значения надо где-то получить.
Мне долго было лень заняться расчетами CAPE, но никто так и не подсуетился за два года, так что эта доля выпала мне. 😅 Если вам не интересно как я сделал полностью автоматизированный расчет по индексу IMOEX, можете сразу проследовать по ссылке ниже и посмотреть актуальные значения в правой крайней части нового графика:
🔗 https://capital-gain.ru/app/stats/cape
А тем, кто остался, расскажу о технических деталях во всех подробностях.
Итак, что нужно, чтобы посчитать сегодняшний CAPE?
- Текущий уровень индекса.
- История по чистой прибыли компаний за 10 лет.
- История базы расчета индекса за те же 10 лет (набор акций, их коэффициенты free-float и весовые факторы), чтобы из набора прибылей получить взвешенную сумму – так же, как это делается с капитализацией.
- История делителя индекса за 10 лет, чтобы из взвешенных сумм прибыли получать EPS – прибыль на одну «акцию» индекса.
- История инфляции за 10 лет.
Надо сказать, что у нас какая-то беда с публичными данными по фундаментальным показателям индексов МосБиржи. Их и раньше не было доступно много и в удобном виде (API или таблица), но в 2021 году МосБиржа почему-то перестала считать и те пару коэффициентов, что были. Если бы публиковался один только EPS, это бы сильно облегчило расчеты.
Вместо этого пришлось искать историю по чистой прибыли каждой компании, которая когда-либо в последние 10 лет участвовала в индексе – таких больше сотни. Спасибо Тимофею Мартынову за его сайт Смарт-Лаб, где есть удобная страничка с прибылью почти по всем компаниям как раз за последние 10 лет. Ей я и воспользовался для пункта №2. Надеюсь, что она никуда не денется!
Данные там имеются и по МСФО, и по РСБУ. Я скачиваю оба значения, но приоритетным считаю МСФО. В единичных для компонентов индекса случаях, когда нет прибыли по МСФО, берется значение из РСБУ.
Инфляция у меня уже была, а историю базы расчета и делителя индекса можно получить из API МосБиржи, что я и сделал. Делитель индекса – это произвольное число, на которое делится капитализация индекса при его старте, чтобы получить красивый уровень. Например, если капитализация была 1 трлн. руб., а мы хотим, чтобы первым значением индекса было 100, то делитель будет равен 10 млрд. Далее, чтобы различные изменения в индексе (включения и исключения компаний и другие) не влияли на его уровень, делитель меняют при каждой ребалансировке индекса.
После автоматизации загрузки и обновления всех этих данных (самое трудоемкое, пожалуй) я смог приступить к расчетам CAPE.
Калькулятор начал писать с юнит-теста, для которого взял последние 10 лет данных Шиллера из его файла ie_data.xls – цены, EPS, CPI и значения CAPE для проверки. Его данные уже подготовлены для расчетов, а в CAPE нет ничего сложного – берешь цену и делишь на средний за 10 лет EPS, предварительно приводя числитель и знаменатель к сегодняшним деньгам. Единственный нюанс – если данных по EPS ещё нет, среднее считается не за 120 месяцев, а за 120 минус количество пропусков (так работает функция AVERAGE в Excel). Вскоре калькулятор был готов и CAPE, который выдавал мой код, полностью сходился с тем, что получался у Шиллера.
Интереснее то, как получить EPS по индексу МосБиржи из того набора данных, что есть. Здесь я кратко опишу процесс, как если бы для меня это было просто, но на самом деле пришлось помучиться, потому что всё это я делал впервые и всех нюансов не знал.
Делать это надо точно так же, как рассчитывается индекс МосБиржи по данным о капитализации компаний (цена акции * объем выпуска) и весовых коэффициентах. Общая капитализация каждой компании (cap_total) в составе индекса на определенный день умножается на два коэффициента – ff_factor и w_factor, из чего получается капитализация, учитываемая в индексе (cap_index) – именно они затем суммируются, образуя капитализацию индекса, и веса компаний.
Таким же образом чистую прибыль компаний я умножаю на те же два коэффициента на последний день каждого месяца пребывания каждой из компаний в индексе, потому что хочу считать CAPE ежемесячно. Данные о прибылях у меня годовые, но каждый месяц они будут взвешены немного по-разному, и поэтому их взвешенная сумма внутри года немного отличается.
Далее взвешенную сумму прибылей надо разделить на делитель (divisor) индекса за тот же месяц, чтобы получить EPS, который годится для знаменателя, если в числителе у нас цена индекса, а не капитализация. Другой вариант – умножить цену индекса на делитель, тогда в знаменатель можно взять сумму прибыли. Или изначально взять из API МосБиржи капитализацию индекса, а не цены, и ничего не делить и не умножать на делитель. В любом случае результат будет одинаковый.
Последний штрих – скорректировать всё на инфляцию. Шиллер приводит историю цен и EPS за всё время к сегодняшним деньгам, умножая их на дробь: CPIt-last / CPIt, где t-last – это последнее доступное значение CPI на сегодня, а t – значение CPI на конкретный месяц, за который мы считаем CAPE. Таким образом любое историческое значение CAPE рассчитывается в деньгах из будущего относительного момента в прошлом, а сегодняшний CAPE рассчитывается по текущей номинальной цене (t-last и t одинаковые), разделенной на среднее привиденных к сегодняшним деньгам прибылей.
В завершение дам пару пояснений о графике CAPE, который получился. Большая его часть – это история, которую я взял с сайта Barclays, потому что данные о прибылях у меня есть только за последние 10 лет, как они отображаются на Смарт-Лабе (дальше они будут накапливаться). Эти данные не вполне идентичны тем, что считаю я, потому что их CAPE считался по индексу MSCI Russia. Но других нет, а показать историю и посчитать средний CAPE за всё время хотелось.
Мой расчет начинается после паузы в самом конце и пока есть только два значения – за декабрь 2023 года (6,18) и январь 2024 (6,36). Эти значения пересчитываются ежедневно, потому что в любой день могут появляться новые данные о прибылях компаний. Вчера выходили отчеты за 2023 год.
У каждого моего значения CAPE на графике указана полнота данных о прибылях, использованных для расчета. Это среднее значение доступности отчетов за 10 лет. На момент написания поста для двух значений CAPE полнота была 87,9% (декабрь 2023) и 87,1% (январь 2024). Они никогда не будут равны 100%, потому что компании отчитываются с лагом, и есть пропуски. За 2023 год отчитались только 20%, а 2024 только начался – это 0%. За прошлые годы доступность отчетов в данных Смарт-Лаба по компонентам индекса получилась 93–97%, иногда 100%. За 2022 – 89%.
Пока в определенном году не наберется 80% доступных отчетов, он не войдет в расчет CAPE. Данные за 2023 год, которых сейчас около 20%, в расчете средней прибыли за 10 лет пока не участвуют – полученный EPS за 2023 год не попадает в 10-летнюю сумму, которая делится не на 120 месяцев, а на 120 – 12 = 108. Позже, когда выйдет достаточно отчетов, 2023 год тоже войдет в выборку, и значения CAPE обновятся, но из-за 10-летнего усреднения сильно они не изменятся. При этом в полноте данных последние неполные года учитываются, чтобы было понимание, что эти значения ещё не финальные.
Кроме CAPE на графике показан и обратный показатель CAEY – earnings yield (1 / CAPE). Это оценка реальной доходности компаний в следующие 10 лет, исходя из текущей цены за их прошлую реальную прибыль.