Мультипликатор P/E (цена/чистая прибыль)

  • Мультипликатор P/E
  • Мультипликатор P/E как метод анализа стоимости

Мультипликатор P/E

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

Действительно, как же понять, дорога сейчас компания или нет? Технический аналитик сразу начнет изучать график, строить тренды и определять важный уровни поддержки и сопротивления, ограничивающие рост/снижение цены акции компании. А если график, скажем, постоянно обновляет свои максимумы, то как понять, когда компания будет оценена достаточно дорого? Конечно, нужно проводить технические исследования, но ТА дает лишь часть общего представления. Комплексное представление дает изучение отчетов, в которых публикуются такие показатели, как чистая прибыль, выручка, задолженность компании и прочие. Ежеквартально внимание инвесторов приковано к подобным публикациям – для того, чтобы оценить, идет ли компания в гору или наоборот.

Но для опытных инвесторов этой информации недостаточно, поскольку они понимают, что все познается в сравнении, и если в какой-нибудь отрасли есть компания, развивающаяся еще быстрее, то более целесообразно вложить деньги именно в нее. Но как сравнивать бизнесы, имеющие не только разный размер, но и разную структуру? Посудите сами: одна компания может иметь небольшую прибыль, но агрессивно ее наращивать в процентном выражении из года в год, а другая компания может номинально показывать больший прирост по денежной массе, но при этом быть в аутсайдерах.

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

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

Наверное, самым известным и применяемым доходным мультипликатором является показатель P/E (price/earnings ratio). Этот мультипликатор показывает отношение капитализации компании к ее чистой прибыли. P/E также называют мультипликатор цена/чистая прибыль. Чтобы рассчитать P/E, необходимо понять, в какую сумму рынок оценил сейчас стоимость бизнеса, и какова его чистая прибыль соответственно.

Расчет P/E

Для определения рыночной оценки стоимости бизнеса – капитализации компании – следует зайти на сайт Московской биржи в раздел «», подраздел «Количественные показатели», и выбрать интересующий период. В этом разделе будет указана стоимость акции и количество выпущенных компанией акций (которое можно также посмотреть на сайте компании в разделе «Инвесторам и акционерам» или в Уставе). Значение капитализации вычисляется путем умножения рыночной цены акции на общее количество выпущенных компанией акций.

В конкретном случае, чтобы вычислить капитализацию, нужно умножить 136,25 руб. за акцию «Газпрома» на 23 673 512 900 шт. выпущенных акций и тем самым получить 3 225 516 132 625.00 руб. за бизнес «Газпрома» по рыночной оценке.

Чтобы узнать, сколько заработал «Газпром» за 2015 г. (период, аналогичный расчету капитализации), следует зайти на сайт компании www.gazprom.ru и в разделе «Инвесторам и акционерам» выбрать отчет по МСФО за искомый период. В этом документе следует взглянуть на отчет о прибылях/убытках, где и будет отражена чистая прибыль компании.

Из отчета видно, что «Газпром» «заработал» за 2015 год 805 199 млн руб. (цифры в отчете представлены в миллионах рублей). Имея исходные данные, можно вычислить показатель цена/чистая прибыль – 3 225 516 132 625.00 рублей разделить на 805 199 млн руб. Получается, что P/E равен 4. Стоит отметить, что важно не только номинальное значение показателя, но и общая динамика его изменений.

Смысл мультипликатора P/E

Мультипликатор цена/чистая прибыль показывает, за какой период компания, генерируя прибыль аналогичными темпами, сможет окупить свою капитализацию. Т.е. «Газпром», зарабатывая по 805 млрд рублей, сможет окупить свою капитализацию (3,2 трлн рублей) за 4 года при тех же объемах прибыли. Если P/E компании слишком низкий, компания считается недооцененной, так как ее темпы прибыльности способны быстро увеличивать стоимость бизнеса, что должно положительно повлиять на цену акции.

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

В формуле расчета P/E обычно используют показатель чистой прибыли за год, а не за квартал. Причем даже взятая за год чистая прибыль достаточно волатильна и не всегда отражает процессы, происходящие в компании. Так, например, компания может зарабатывать прибыль в течение трех кварталов, а в четвертый распределить ее в виде дивидендов (или пустить на погашение задолженности). При этом компания за год не покажет чистой прибыли или даже отразит чистый убыток, что несколько исказит показатель P/E. Менее волатильным будет заменить в расчете мультипликатора чистую прибыль на выручку и получить мультипликатор P/S, причем эти мультипликаторы – P/E и P/S – желательно рассматривать в паре. Хорошо, когда увеличение выручки дублируется увеличением прибыли.

Вывод

Мультипликатор цена/чистая прибыль заслуженно считается одним из самых значимых показателей, используемых для сопоставления компаний отрасли друг с другом. Однако у него есть как плюсы, так и минусы, поэтому значения P/E необходимо рассматривать совместно с другими мультипликаторами, причем в динамике за несколько лет. Хотите научиться правильно работать с мультипликатором P/E и извлекать прибыль из его показателей?

Преимущества, недостатки, как его использовать

В отчетах аналитиков частенько упоминаются рыночные мультипликаторы. Наиболее известным из них считается P/E.

Речь идет о соотношении капитализация/прибыль. Некоторые считают его «священным Граалем», другие указывают на недостатки этого показателя. Истина где-то посередине.

Как и любой другой мультипликатор, P/E необходимо правильно использовать, а ситуацию полезно оценивать в комплексе, не полагаясь на один единственный показатель.

Для чего нужны мультипликаторы

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

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

Не факт. Для получения более объективной картины необходимо привести две компании к единому знаменателю. Точнее, сопоставить стоимость предприятия с его финансовыми показателями (доходами и т.д.). Такой подход позволит избавиться от эффекта разного числа акций в обращении, позволив найти реальные расхождения в ценообразовании активов.

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

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

Мультипликатор P/E и его собратья

P/E

Представляет собой соотношение капитализации компании и ее чистой прибыли за год (предыдущий отчетный период или последние 4 квартала), Price (Market Capitalization) /Net Income. Фактически речь идет о соотношении цены на акцию к прибыли на одну акцию — Price/EPS – за сколько лет предприятие окупает себя.

Наиболее известный, доступный и интуитивно понятный мультипликатор, ведь прибыль в расчете на акцию зачастую является ключевым мерилом деятельности топ-менеджмента компании. P/E частенько используют для оценки рынка в целом, то есть фондовых индексов.

Несмотря на свою распространенность, показатель этот имеет множество недостатков. Во-первых, он неприменим для корпораций с отрицательной чистой прибылью, то есть убыточных. Тут необходимо либо использование форвардных мультипликаторов (с учетом будущих доходов, о них речь пойдет далее), либо сглаживание P/E с учетом цикла.

Форвардные мультипликаторы — те же самые мультипликаторы, но в знаменатель подставляется оценка финансовых показателей в будущем. Частенько речь идет о консенсус-прогнозе аналитиков на ближайшие 12 месяцев.

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

P/E не учитывает разницу в налогообложении и долговой нагрузке сравниваемых компаний. Немаловажный момент на развивающихся рынках – оргструктура предприятия, список ключевых собственников, а значит риски для миноритариев. Получается, что два предприятия могут выглядеть по-разному с точки зрения P/E именно из-за расхождений в этих аспектах бизнеса. То, что P/E сравниваемых предприятий сильно расходятся – это еще не повод говорить о недооценке/переоценке одного из них.

Зачастую показатель P/E наиболее адекватен для анализа банковских акций. В этом плане оптимально его использование в сочетании с показателем P/BV (рыночная капитализация/ балансовая стоимость собственного капитала).

PEG

Показатель P/E, скорректированный на долгосрочный рост. Как правило, представляет собой соотношение P/E и среднегодовые темпы роста eps, спрогнозированные на ближайшие пять лет. Мультипликатор неплохо подходит для оценки быстрорастущих компаний, позволяет сгладить эффект низкой базы. PEG ниже 1 свидетельствует о возможной недооценке акций. Чем более PEG превышает 1, тем «дороже» выглядят бумаги.

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

Shiller P/E

Или CAPE (P/E, базирующийся на средней скорректированной на инфляцию прибыли за 10 лет). Был разработан нобелевским лауреатом Робертом Шиллером для оценки фондового рынка США, а точнее S&P 500. Сейчас рассчитывается и для прочих рынков акций.

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

Примеры использования P/E

Российский рынок

По мультипликатору P/E российский фондовый рынок является самым «дешевым» в мире: 6,7 против 14,1 по группе развивающихся рынков и 25 по S&P 500. Сказываются структурные проблемы экономики РФ, геополитические риски, хотя заметная недооценка все равно налицо.

Данные на 31.08.2018 (чтобы получить более четкое изображение, кликните по таблице)

Это изображение имеет пустой атрибут alt; его имя файла - 77431

 

Источник: starcapital.de

По прочим показателям российский рынок также низок, хотя консолидированная дивидендная доходность составляет вполне достойные 5,7% годовых.

Данные на 31.08.2018 (чтобы получить более четкое изображение, кликните по таблице)

Это изображение имеет пустой атрибут alt; его имя файла - 77432

 

Источник: starcapital.de

Рынок США

Если сопоставить американский фондовый рынок с другими, то выяснится, что он входит в топ-3 по P/E (25) и по P/E Шиллера (33,1).

Показатель Shiller P/E не дотягивает до пикового значения пузыря доткомов 1999 г. (44), но на 96% выше исторической средней 16,9. Обычный P/E также заметно превышает средние 16.

График Shiller P/E индекса S&P 500

Это изображение имеет пустой атрибут alt; его имя файла - 77433

 

В секторальном разрезе наиболее «дороги» по Shiller P/E в рамках S&P 500 сегменты недвижимости и технологий, «дешевы» — сегменты производителей товаров первой необходимости и коммуникационных услуг.

Это изображение имеет пустой атрибут alt; его имя файла - 77434

 

Источник: gurufocus.com

JP Morgan

Возьмем для примера крупнейший американский банк, ибо мультипликатор P/E наиболее адекватен для оценки банковской индустрии. Сочетать его будем с показателем P/BV (капитализация/ балансовая стоимость) – еще одним типичным мультипликатором для банков. Еще один ценный мультипликатор – P/TBV – соотношение капитализации и балансовой стоимости материальных активов.

Данные и прогнозы взяты из терминала Reuters. Многие показатели также есть в базах Morningstar и прочих аналитических агентств.

Мультипликаторы с учетом показателей за последние 12 мес.

Это изображение имеет пустой атрибут alt; его имя файла - 77435

 

Форвардные мультипликаторы

Это изображение имеет пустой атрибут alt; его имя файла - 77436

 

По совокупности мультипликаторов имеем чуть ли не самый «дорогой» банк из выборки крупнейших финучреждений США. Форвардные мультипликаторы еще в большей мере подтверждают сравнительную «дороговизну» JP Morgan.

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

С начала года P/E JP Morgan заметно сгладился (сократился) за счет увеличения прибыли.

Это изображение имеет пустой атрибут alt; его имя файла - 77438

 

Теперь посмотрим на фундаменталии. Из таблицы видно, что рентабельность собственного капитала (ROE, чистая прибыль/собственный капитал) и маржа чистой прибыли (чистая прибыль/выручка) заметно превышают медианы по выборке сопоставимых компаний. Однако ожидания по приросту прибыли на акцию (eps) слабы – 6,4% среднем в год на ближайшую пятилетку. Показатель PEG равен не слишком интересным 1,35.

Это изображение имеет пустой атрибут alt; его имя файла - 77437

 

Вывод: учитывая сравнительно высокие значения мультипликаторов и неоднозначные фундаменталии, JP Morgan смотрится высоковато.

Надо понимать, что резюме требует дополнительного анализа и не является рекомендацией на покупку от текущих уровней. После публикации квартальной отчетности JP Morgan возможен пересмотр фундаменталий, а вслед за ними – переоценка мультипликаторов.

Насколько полезен показатель P/E

Мультипликатор этот привлекателен своей простой и интуитивной понятностью. Его легко найти в свободном доступе.

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

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

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

В любом случае, оценка по мультипликаторам – проста, но одновременно груба. Компании-аналоги (индустрия, весь рынок) могут в целом быть слишком перекупленными или перепроданными, тогда медианы по мультипликаторам не слишком годятся для грамотного анализа. Есть еще один интересный момент — сравнительная оценка не позволяет выбрать оптимальный момент для входа в позицию или выхода из нее. Это удел теханализа.

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

Что показывает и как использовать?

Существует множество финансовых показателей для оценки инвестиционной привлекательности акций различных эмитентов. Одним из наиболее простых и популярных является мультипликатор «P/E» (Цена/Прибыль). P = price (Market Capitalization); E = earnings (Net Income). P/E можно рассчитать через отношение цены акции эмитента к годовой чистой прибыли на акцию (Price/EPS) либо при помощи общей капитализации, деленной на совокупную годовую прибыль (Market Capitalization /Net Income).

Для чего вообще нужны финансовые мультипликаторы?

Как возможно сравнить инвестиционную привлекательность двух компаний из одного сектора, но с разным числом акций в свободном обращении? Именно это и позволяют нам осуществить коэффициенты «переоцененности/недооцененности», одним из которых является P/E.

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

Разделив капитализацию эмитента на его годовую прибыль, мы получим стоимость компании, выраженную в числе прибылей. P/E = 10 означает, что компания стоит 10 годовых прибылей – теоретически вложения инвестора должны окупиться за 10 лет. Много это или мало? А вот тут в дело и вступает сравнительная оценка. Сами по себе отдельно взятые величины мультипликаторов не значат практически ничего, ведь 10 годовых прибылей для компании, которая растет более, чем на 100% в год (к примеру, Zoom Video) и для уже достигшей стадии зрелости (к примеру, AT&T) – это совершенно разные значения с точки зрения «стоимости».

Рассмотрим P/E на реальном примере

Капитализация Сбербанка сейчас равна 4,3 трлн руб., а чистая прибыль за 2019 год = 845 млрд руб. Это означает, что годовой P/E Сбербанка = 4,3 трлн руб. / 845 млрд руб. = 5,09.

Капитализация ВТБ сейчас равна 454 млрд руб., а чистая прибыль за 2019 год = 202 млрд руб. Это означает, что годовой P/E ВТБ = 454 млрд руб. / 202 млрд руб. = 2,25.

Итак, ВТБ стоит всего 2,25 годовых прибыли, а Сбербанк «целых» 5,09. Чем ниже показатель P/E, тем дешевле стоит компания. Может показаться, что ВТБ более чем в 2 раза привлекательнее для инвестора в сравнении со Сбербанком, однако в реальности это далеко не так. А все из-за недостатков каждого отдельно взятого мультипликатора.

Недостатки коэффициента P/E

  • Коэффициент «Цена/Прибыль» нельзя использовать в отрыве от прочих финансовых показателей компании, иначе можно сделать ошибочный вывод о «дешевизне» эмитента. Есть масса примеров того, что невысокая оценка свидетельствует не о фундаментальной недооцененности, а о банальном отсутствии интереса у инвесторов, не готовых платить за акции стагнирующего бизнеса.
  • P/E абсолютно неприменим для оценки быстрорастущих компаний, хоть и имеющих небольшую прибыль. В таком случае значения мультипликатора могут достигать нескольких тысяч.
  • Также P/E не подходит для оценки убыточных эмитентов, которое может быть связано с временными финансовыми затруднениями, реальным плачевным состоянием, либо с тем же эффектом быстрого роста.
  • P/E слабо применим к компаниям из секторов с нестандартным бизнесом и налогообложением.
  • P/E не подходит для сравнения акций эмитентов из разных стран. К примеру, российский рынок по данному показателю является одним из самых «дешевых» в мире (6-8 против 14-16). На американском же рынке значение мультипликатора выше 25 не является чем-то удивительным даже для достаточно зрелых игроков рынка.

Как мы видим, недостатков достаточно много, однако есть у коэффициента P/E и очевидные преимущества.

Преимущества коэффициента P/E

  • Расчет P/E – это один из самых быстрых и простых методов «экспресс-оценки» акций многих компаний.
  • P/E можно также использовать для оценки эмитентов, акции которых еще не торгуются на бирже. К примеру, мы знаем годовую чистую прибыль непубличной компании (допустим 100 млн руб.), а также значение мультипликатора P/E другой «сопоставимой» организации того же сектора (допустим, P/E = 8). Тогда можно предположить, что наша непубличная компания может стоить около 100*8 = 800 млн руб.

Способы расчета показателя P/E

При расчете мультипликатора P/E может возникнуть логичный вопрос: «А какую именно прибыль использовать?». И вопрос окажется верным, ведь считать P/E можно по-разному:

  • Годовой P/E. Стоимость эмитента необходимо делить на прибыль за прошедший календарный год (как в примере со Сбербанком и ВТБ).
  • Скользящий P/E. Стоимость эмитента необходимо делить на прибыль за последние 4 квартала.
  • Прогнозный P/E (форвардный). Стоимость эмитента необходимо делить на прогнозную прибыль за текущий календарный год. Достаточно часто именно прогнозный P/E является наиболее предпочтительным для оценки, однако всегда нужно принимать в расчет вероятность погрешностей в прогнозах.

Как использовать показатель P/E?

Итак, мы разобрались с упрощенной сутью финансовых мультипликаторов. Основной вывод в том, что использовать показатель P/E следует только в связке с другими коэффициентами. К примеру, P/S, P/BV (о них будут написаны отдельные статьи). Кстати говоря, связка P/E, P/BV, P/S является одной из самых популярных для «грубой» оценки компании по отношению к конкурентам или сектору в целом.

При этом, всегда следует помнить о том, что никакой коэффициент (либо их сочетание) не может со 100% вероятностью сказать инвестору о том, когда стоит приобретать акции эмитента и стоит ли вообще. При формировании инвестиционного решения всегда следует описаться на максимальное доступное количество объективных факторов, учитывать отношение менеджмента компании к миноритариям, оценивать стабильность финансовых показателей, перспективность сектора в целом и т.д.

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

Мультипликатор P/E как метод анализа стоимости

Мы рассмотрим, как исторические коэффициенты цена/прибыль (P/E) могут быть использованы в качестве метода анализа стоимости.

Отказ от ответственности: Информация, представленная здесь, предназначена только для информационных целей и не предназначена для личных финансовых, инвестиционных или других советов.

Коэффициент P/E — это хорошо известный показатель для сравнения текущей цены акций компании с ее прибылью на акцию (EPS). На практике используются две формы коэффициентов P/E: форвардный и скользящий P/E, а в статье используется скользящий P/E.

Метод, описанный здесь, отслеживает мультипликатор РЕ на протяжении всего периода, чтобы обеспечить контекст для текущего РЕ. Мультипликатор PE рассчитывается путем деления цены закрытия акции на сумму ее прибыли на акцию за четыре предшествующих ей квартала. В связи с этим мы требуем ежеквартальную прибыль на акцию после даты начала периода для постоянного представительства. Например, для отслеживания PE с 01.12.2021 по 01.12.2023 нам понадобятся как минимум четыре предшествующие квартальные EPS (4 квартал 2020 года и с 1 по 3 квартал 2021 года) для расчета PE за 2021–12-01 год. Для расчета PE за 2022–01–15 год нам понадобится EPS с 1 по 4 квартал за 2021 год.

Я собираюсь использовать yfinance API для получения исторических данных по акциям. Однако он не обеспечивает достаточного количества квартальной прибыли на акцию. Я буду использовать Alpha Vantage, чтобы обойти это ограничение, хотя другие варианты, такие как Macrotrends, являются жизнеспособными альтернативами. Поскольку EPS обновляются только ежеквартально, я сохранил их в JSON-файле для автономного доступа, а не делал повторяющиеся вызовы API к Alpha Vantage, бесплатный доступ к которому имеет ограничения.

Вкратце подход:

  1. Получайте ежеквартальную прибыль на акцию (EPS) с помощью Alpha Vantage
  2. Получайте ежедневные исторические данные с помощью yfinance
  3. Рассчитайте коэффициент P/E с помощью EPS и цены закрытия
  4. График зависимости коэффициента P/E от даты
  5. Постройте std +1 и -1 в виде верхнего и нижнего порогов соответственно

Примечание: Приложение Tiger Broker использует аналогичный подход для анализа акций

Предполагается знание основ Python и Plotly. Код доступен в виде записной книжки Jupyter на сайте GitHub.

Библиотеки Python

Необходимые библиотеки Python:

  • yfinance: для доступа к данным финансового рынка; импортирован как YF
  • pandas : DataFrame и другие утилиты; импортируется как PD
  • numpy: для численных расчетов; Импортировано как NP
  • plotly: платформа для построения графиков с открытым исходным кодом для Python

Импорт библиотек

# Read stocks
import yfinance as yf

import pandas as pd
import numpy as np

from datetime import datetime, timedelta

# Load json file containing quarterly EPS
import json

# import plotly
import plotly.graph_objects as go

# To calculate standard deviation
import statistics

Константы

# Using plotly dark template
TEMPLATE=’plotly_dark’

# Replace this with your own stock symbol
SYMBOL=’CNHI’

# Period in years
YEARS=2

# Number of eps quarters
QUARTERS=12

# Margins for rectangles; for top: max(PE) * (1 + RECT_MARGIN), for bottom: min(PE) * (1 — RECT_MARGIN)
RECT_MARGIN=0.02

  • TEMPLATE — шаблон для plotly; Замените на допустимое имя шаблона Plotly
  • SYMBOL — интересующий биржевой символ
  • YEARS — насколько далеко назад от текущей даты до графика. Например, если текущая дата — 2023–12–11, датой начала для графика будет сегодняшняя дата минус 365 * ГОДЫ. Для КУРСОВ 1 и 2 даты начала будут ‘2022-12-11’ и ‘2021-12-11’ соответственно.
  • QUARTERS — сколько четвертей нам нужно; если YEARS равно 2, то нам нужно не менее 12 кварталов, т.е. (YEARS + 1) * 4
  • RECT_MARGIN — поля для сюжетной фигуры; Это значение определяет верхнее и нижнее значения для фигуры Plotly

Создание DataFrame для EPS

def create_eps_df():
json_data=load_json()

data={
‘fiscalDateEnding’:[],
‘reportedEPS’:[]
}

quarterly_earnings=json_data[‘quarterlyEarnings’]
for idx, x in enumerate(quarterly_earnings):
if idx == QUARTERS:
# We have sufficient quarters, quit
break
data[‘fiscalDateEnding’].append(datetime.strptime(x[‘fiscalDateEnding’], ‘%Y-%m-%d’))
data[‘reportedEPS’].append(float(x[‘reportedEPS’]))
return pd.DataFrame(data)

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

В приведенном выше коде используется формат EPS JSON от Alpha Vantage.

Прибыль на акцию (EPS) за последние 12 кварталов

Получить EPS на свидание

def get_eps(search_date, eps_df):
# We need past 4 quarters, so, set the start date to one year back from the search date
start_date=(search_date — timedelta(365))
eps_quarters=list(filter(lambda x: x <= search_date and x > start_date, eps_df[‘fiscalDateEnding’]))
if len(eps_quarters) == 4:
return eps_df[eps_df[‘fiscalDateEnding’].isin(eps_quarters)][‘reportedEPS’].sum()

print(‘not enough eps quarters’)
return np.NaN

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

История цен

Получить ценовую историю по символу из Yahoo Financestart_date=(datetime.now() — timedelta(365 * YEARS)).strftime(‘%Y-%m-%d’)
end_date=datetime.now().strftime(‘%Y-%m-%d’)

ticker=yf.Ticker(SYMBOL)
# Only interested in Close data
ticker_history=ticker.history(start=start_date, end=end_date)[‘Close’]

Первые 5 строк истории

Кадр данных PE

def create_pe_df(eps_df):
pe_dict={
‘Date’:[],
‘PE’:[]
}
for index, row in ticker_history.items():
close_date=index.replace(tzinfo=None)
eps=get_eps(close_date, eps_df)
pe_dict[‘Date’].append(close_date)
if np.isnan(eps):
print(f’Unable to calculate EPS for given date — {close_date}’)
return None
else:
pe_dict[‘PE’].append(row/eps)

return pd.DataFrame(pe_dict)

Если EPS определены для всех дат, описанный выше метод предоставляет DataFrame с Date и PE в качестве столбцов. Если это невозможно, возвращается объект None.

Участок ПЭ

Все готово к сюжету. Построим график:import warnings

def plot_pe(pe_df):
fig=go.Figure()

# Plot the Close price
with warnings.catch_warnings():
warnings.simplefilter(‘ignore’, FutureWarning)
fig.add_trace(go.Scatter(x=pe_df.Date, y=pe_df.PE, line_color=’lightgreen’, line_width=1, showlegend=False))

# Update y & x axis labels
fig.update_yaxes(title_text=’P/E Ratio’)
fig.update_xaxes(title_text=’Date’)

layout=go.Layout(template=TEMPLATE, title=f’P/E Ratio for {SYMBOL} from {start_date} to {end_date}’, height=700)

# Update options and show plot
fig.update_layout(layout)

fig.show()

Мультипликатор РЕ за 2-летний период

Добавим на график низкий, верхний и средний пороги, используя std +1 и -1

Вот код, который нужно добавить выше: std=statistics.stdev(pe_df[‘PE’])
mean=statistics.mean(pe_df[‘PE’])

# Plot the low threshhold
low=mean — (1 * std)
fig.add_hline(y=low, line_color=’limegreen’, line_width=1, annotation_text=’Low Threshold’, annotation_position=’bottom right’)
# Plot the bottom rectangle
fig.add_hrect(y0=round(pe_df.PE.min() * (1 — RECT_MARGIN), 2), y1=low, line_width=0, fillcolor=’green’, opacity=0.2)

# Plot the high threshhold
high=mean + (1 * std)
fig.add_hline(y=high, line_color=’red’, line_width=1, annotation_text=’High Threshold’, annotation_position=’top right’)
# Plot the top rectangle
fig.add_hrect(y0=high, y1=round(pe_df.PE.max() * (1 + RECT_MARGIN), 2), line_width=0, fillcolor=’indianred’, opacity=0.2)

# Plot the mean line
fig.add_hrect(y0=low, y1=high, line_width=0, fillcolor=’orange’, opacity=0.2)
# Plot the middle rectangle
fig.add_hline(y=pe_df.PE.mean(), line_color=’darkorange’, line_width=1, annotation_text=’Mean’, annotation_position=’top right’)

После добавления линий минимума, максимума и среднего значения

Мы можем сделать больше; Добавим на график максимальную, минимальную и текущую точки PE. # Maximum PE
max_row_id=pe_df.PE.idxmax()
max_row=pe_df.iloc[max_row_id]
fig.add_trace(go.Scatter(x=[max_row.Date], y=[max_row.PE], mode=’lines+markers+text’, name=’Max’,
marker_line_color=’red’, marker_color=’white’, marker_line_width=2,
marker_size=10, text=’Maximum’, textposition=’top center’, textfont=dict(color=’white’)))

# Minimum PE
min_row_id=pe_df.PE.idxmin()
min_row=pe_df.iloc[min_row_id]
fig.add_trace(go.Scatter(x=[min_row.Date], y=[min_row.PE], mode=’lines+markers+text’, name=’Min’,
marker_line_color=’green’, marker_color=’white’, marker_line_width=2,
marker_size=10, text=’Minimum’, textposition=’bottom center’, textfont=dict(color=’white’)))
# Current PE
fig.add_trace(go.Scatter(x=[pe_df.iloc[-1].Date], y=[pe_df.iloc[-1].PE], mode=’lines+markers+text’, name=’Current’,
marker_line_color=’blue’, marker_color=’white’, marker_line_width=2,
marker_size=10, text=’Current’, textposition=’top center’, textfont=dict(color=’white’)))

После добавления максимальных, минимальных и текущих точек PE

Заключение

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

Источник