Немного корреляционного анализа при сравнении акций российских компаний

Цель: познакомить читателей с алгоритмом анализа мультипликаторов и обсудить/внедрить более эффективные пути решения этой задачи

Кто-то намерен что-то считать?

Немного корреляционного анализа при сравнении акций российских компаний

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

Отсутствие доказательной базы при анализе мультипликаторов, а именно конкретных цифр, это главное, что меня смущало в такого рода размышлениях. Да, никто не против что теоретически отдельный показатель должен быть близок к 1, чем быть равным 2 или 3, но! Нас же интересует совсем другой вопрос: цена этой акции вырастет сильнее относительно других?

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

И такой несложный инструмент я выбрал и все вы о нём слышали – корреляционный анализ. И я не буду говорить о том, что при 1 и -1 наблюдаются максимальная корреляция между двумя случайным величинами, а при 0 этой корреляции совсем нет. Здесь будут приведены конкретные действия, а не рассуждения и эмоциональный анализ происходящего. Хотя если говорить конкретнее, то корреляционный анализ чаще отвечает на один вопрос: на сколько две одинаковые последовательности чисел друг с другом связаны, что при добавлении нового числа в одну последовательность, на сколько вероятно, что в том же соотношении добавится новое число в другой последовательности.

Принцип анализа компаний

Немного корреляционного анализа при сравнении акций российских компаний

Изначально «движок» расчетов выполнялся в среде гугл таблиц, за счет более удобного пользования интернет-ресурсами сайтов, но позже был создан Excel-документ, доступ к которому можно получить по следующей ссылке. Алгоритм для расчетов основывался на основании рассуждений в книге Думай медленно... Решай быстро" Канемана (об этом алгоритме там не сказано) и ушло на проработку этого решения 3 месяца.

Последовательность работы книги следующая

1. Собирается максимальная статистика по мультипликаторам для каждой организации в отдельные листы в Excel книге. Один лист – это статистика одной компании за все возможные года, эту информацию, например, предоставляет smart-lab.ru [все листы с названием тикеров]

2. Создаются отдельные листы для каждого определенного мультипликатора, я их выбрал 8. В котором каждая величина мультипликатора организаций группируется по макросектору и отрасли относительно выбранного года [Avg_Capital, Avg_PE, Avg_PS и т.д.]

3. Подсчитываются медианные значения показателя на этих листах относительно каждой отрасли для определенного года. Также делал подсчет относительно каждого макросектора, но нигде не использовал, так как планирую выбирать акции организаций относительно отраслей, а не макросекторов. А медианные значения использовал вместо средних, чтобы минимизировать влияние грубых ошибок на расчеты [Avg_Capital, Avg_PE, Avg_PS и т.д.]

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

5. Производится подсчет соотношения изменения цены акции за текущей год, относительно прошлого года в средних ценах за март, так как чаще всего в марте вывешиваются окончательные финансовые отчетности за год [на всех листах с названием тикеров]

6. Подсчитываются корреляции (как рассчитывать брал отсюда) для каждого соотношения мультипликатора и среднего значения по отрасли за доступные года относительно соотношения цены акции двумя годами позднее. Под доступными годами имеются ввиду года, где имеются данные для анализа, так как не всю информацию можно получить из доступных источников, а разница в два года позволяет «предсказать» цену акции на следующий год. Так как отчет мультипликатора за год доступен только в начале следующего года, а цена акции интересует на следующий год [на всех листах с названием тикеров]

7. Подсчитываются медианные значения корреляций по отраслям, которые в дальнейшем используется как коэффициенты или веса для оценки весомости каждого отдельного показателя в текущей отрасли [CORR_Tickets]

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

9. В каждой отрасли выбирается не более 3 акции/компании, показывающее наибольшее кол-во баллов относительно других в выбранной отрасли [EVAL_Tickets]

Итого весь анализ был построен на таком принципе: «при изменении величины мультипликатора за год относительно среднего по отрасли за тот же год и изменении цены акции двумя годами позднее, относительно предыдущего – есть ли вообще какая-то связь? А если есть, то какова величина коэффициента корреляции?»

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

Компании были разделены по системе MorningStar на:

Немного корреляционного анализа при сравнении акций российских компаний

Анализировался каждый из мультипликаторов:

a) Капитализация

b) P/E

c) P/S

d) P/BV (P/B для банков)

e) Долг/EBITDA

f) EV/EBITDA

g) ROE

h) ROA

Итого по результатам моего анализа я выбрал следующие компании:

Немного корреляционного анализа при сравнении акций российских компаний

Чтобы таблица работала корректно, необходимо в настройках Excel выбрать знак разделения целой и дробной части в качестве точки, а также иметь ввиду, что расчеты в таблице могут привести к зависанию программы!

Продублирую ссылку на таблицу (Я.Диск)

Судьба таблицы, недочеты или вопросы и возможные улучшения:

1. Нет оснований полагать что средние значения при расчетах брать «хуже» относительно медианных

2. На сколько можно доверять источнику smart-lab при вытаскивании данных об организациях под большим вопросом, в идеале пересчитать показателя самостоятельно и обновить данные на листах с тикерами

3. Есть сложности с наполнением новых организаций (тикеров), нет автоматизации этих процессов.

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

5. Нет расчетов для анализа эффективности работы "предсказаний" роста компаний и подтверждений что это вообще работает

33
3 комментария

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

Данных достаточно много и вероятно алгоритм сделан не достаточно правильно сразу. Причём расчёт корреляции можно производить не вручную через формулы, а используя готовую функцию КОРРЕЛ или типо того. Работает точно также, но во избежание ошибок расчетов более лучше использовать готовые обертки

1. Есть основания полагать. Поскольку мат. ожидание хоть и может смениться, но предполагает вероятность нахождения в той или иной конкретной цене или значении.

У этих подходов есть минус, поскольку корреляция и связанная ковариация не учитывает минимальную и максимальную силу влияния на параметр/цену. Я пробовал это решать байесовским классификатором, используя P(A|B,..Z)=P(A)*(P(B|A)...P(Z|A))/P(B,..Z), но быстро пришёл к выводу, что либо может отсутствовать соответсвующее мат.ожидание M(X).
Либо будет пороговость для конкретных значений.
Решаю интегрированием