gregbar (gregbar) wrote,
gregbar
gregbar

Categories:

ПОЛУЧИЛОСЬ!

Тот, кто заглядывает в этот журнал, знает, что я иногда дискутирую со сторонниками инвестирования исключительно в индексы (в ETF, точнее говоря). Мне кажется довольно странным, что люди отрицают фундаментальный анализ экономики компаний, акции которых они хотят купить, а предлагают не заморачиваться и покупать акции оптом, целым пакетом, не анализируя каждую фирму, владельцем которой они собираются стать. В этом есть какая-то нелогичность, которая не даёт покоя голове. «Так не должно быть!», как поётся в одной песенке.

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

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

Как поставить точку в этом споре? Может быть, обратить внимание, что у меня самого уже около 10 лет очень неплохо получается с моим подходом, что уже 4 года есть документированные личные результаты? Это, однако, тоже не доказательство. Мой оппонент снисходительно похлопает меня по плечу (виртуально) и скажет: «4 года, ну-ну! А у нас 150 лет документированной статистики и горы аналитики на ней». И будет прав.

Вот я и решился затратить время, деньги и силы на принципиальный аргумент. Железобетонный! Я решил построить алгоритм и сделать программу, которая будет отбирать акции, базируясь на принципах фундаментального анализа. А затем прогнать эту программу на тысячах акций, которые реально имеются в мире, отобрать автоматически, алгоритмом, портфель и посмотреть на результат. Причём, если найти базу данных за много прошлых лет, то можно сделать бэктестинг на большом объёме исходного материала, погонять алгоритм в разных ситуациях рынка: в периоды рецессии и в периоды роста. Сравнить с индексом, который будет бенчмарком. И сделать статистически значимые выводы. То есть, побить оппонентов их же оружием: вот большая статистика, вот результаты, вот средняя доходность в сравнении с бенчмарком, вот сравнение рисков (СКО) в сравнении с бенчмарком. И так далее.

Идея очевидно сумасшедшая. Нужно очень большое по объёму время на эту работу (но я же пенсионер, у меня есть время). Надо найти хорошего программиста (я сам не программирую), но тут мне повезло. Надо найти базу данных с подробными финансовыми показателями по тысячам компаний за десятки лет (но мои читатели подсказали мне несколько таких источников). Хватит ли сил? И что будет в результате? «Ты собираешься построить алгоритм, который переиграет рынок?», - спрашивал я себя. У тебя почти точно ничего не получится! Посмотри на горы аналитических материалов, которые как дважды два доказывают, что дело дохлое. Выпиши в столбик десяток известных тебе аргументов, что НЕ ПОЛУЧИТСЯ.

Короче, я взялся.

Что мной двигало? Две вещи.

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

Второе. У моих оппонентов есть сильный аргумент, перед которым я пасую. Они говорят, что если даже и есть метод анализа, который приведёт к результатам лучше рыночных, то не все же инвесторы - специалисты в экономике. Как же они будут делать анализ? Им потребуется много времени, много пота и много потраченных денег, пока они овладеют этим искусством. Не проще ли для них «купить рынок», иметь достойную среднерыночную доходность и не заморачиваться проблемами отбора (я понимал, что это лукавство, что ETFы тоже надо отбирать и сложностей с этим никак не меньше, но это опять спор «слово твоё против слова моего», это не работает). Так вот, если будет построен алгоритм, то для получения результата неспециалисту не нужно потеть и изучать эту проклятую экономику, нужно будет просто кликнуть на кнопку «Дай список акций».

Короче, я взялся! И, вы уже догадались, да?

ПОЛУЧИЛОСЬ!!!

Я хочу поделиться с вами, мои читатели, что же получилось в результате. Услышать критику. Она мне необходима. Услышать ваше мнение. Итак:

Во-первых, должен сказать большое спасибо Михаилу Шардину, который сделал скрипт, который терпел меня долго, сделал большую и хорошую работу и, надеюсь, будет терпеть меня и дальше. Большое спасибо, Михаил!

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

Что и как считалось? Исходные данные для анализа брались из базы данных сайта https://financialmodelingprep.com/. Кое-что бралось из других источников.

Все доходности – и доходность полученного с помощью алгоритма портфеля, и доходность индекса – считались с учётом выплаченного дивиденда (рост цены плюс дивиденд, Total Return). В долларах и в процентах роста. Рост за несколько лет и среднегодовой рост считался всегда «накопленным итогом» (Compound), по формуле сложных процентов.

Алгоритм. В основе алгоритма – фундаментальный анализ компании-эмитента акции. Но алгоритм «проще» классического фундаментального анализа. Никто, понятное дело, не ездил в офис компании (как это делал Фил Фишер), никто не беседовал с руководством (как Баффет). Просто считались цифры. Что и как считалось? Начало было положено алгоритмом экспресс-анализа, который изложен в моей книжке «Хочешь выжить? Инвестируй!» Но сейчас этот алгоритм, оставаясь основой, очень сильно видоизменился и значительно усложнился. Однако, суть идеи осталась прежней. Мы анализируем основные показатели деятельности компании за прошлые несколько лет (сколько лет анализировать – задаёт пользователь), а затем, на основе динамики развития фирмы в прошлом, оценивается степень её потенциальной успешности в будущем. То есть, построение алгоритма продиктовано простой идеей, что тенденции, определённые по прошлому развитию фирмы, сохранятся на некотором временном интервале и в будущем. Конечно, в реальности так будет не всегда. Фирма может «споткнуться» в любой момент. Но мы исходим из предположения, что все выбранные фирмы не могут споткнуться враз. В среднем мы получим набор акций хороших компаний, торгуемых по разумным ценам, имеющим хорошие перспективы. Но это, конечно, не означает, что не попадут в портфель и такие акции, которые нас разочаруют. Некоторые акции точно нас разочаруют. Вопрос в том, чтобы нас не разочаровал весь портфель в целом.

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

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

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

Итак, у нас есть три временных отсечки. Первое - год старта. Это год, в последний день которого – 31 декабря – мы покупаем акции, которые выбрал алгоритм. Второе – на какую глубину мы исследуем экономические успехи/неуспехи компании, акции которой рассматриваем. Я взял 4 года. Не уверен, что это оптимальное значение. Можно проверить другие сроки. Но это долго, это трудоёмко. Целое исследование. И третье – сколько лет мы будем держать наш алгоритмически сформированный в год старта портфель и отслеживать, какие результаты он показывает в сравнении с рынком. Я взял 6 лет от старта. И каждый год мы оцениваем результат. То есть мы знаем, как показал себя портфель алгоритмически отобранных акций через 1 год после старта, через 2 года, и так далее до 6 лет. Для каждого из этих периодов мы считали среднегодовой возврат. То есть, для первого года – это был тот возврат, который в этот год получился. И то же для бенчмарка. Для двух лет мы считали не суммарный за два года, а среднегодовой возврат (Compound, по формуле сложных процентов). И так же для бенчмарка. И так далее.

Я прогонял этот алгоритм для 20 лет старта, начиная с 1998 и по 2017. Буду продолжать это делать, чтобы увеличить статистику. Это долго. Снятие одной точки требует нескольких часов работы компьютера. Но уже и сейчас добавление ещё одной очередной точки старта почти не меняет общих статистических результатов работы алгоритма по придуманной мной стратегии (стратегия – это выбор конкретных значений большого числа доступных для задания пользователем параметров). Думаю, что увеличение точек старта уже не повлияет существенно на результаты. Ведь в этот период попали две рецессии и период бурного роста рынка в течение длительного периода. Тем не менее, планирую расширить статистику до 25 лет: с 1995 по 2019 год включительно.

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

- Каковы же, наконец, результаты?», спросит разгневанный читатель.
- Результаты хорошие!
- Всегда ли алгоритмический выбор портфеля даёт превышение над «рынком»?
- Нет, в 8% случаев портфель немного проигрывает рынку. А в 92% случаев – портфель опережает рынок. Причём, существенно. Кстати, если держать неизменным алгоритмический портфель в течение 5 или 6 лет, проигрыша по отношению к рынку не встретилось вообще ни разу. Только превышение. То есть для того, кто сформировал портфель в соответствии с алгоритмом и имел терпение ничего в нём не менять 5-6 лет, получится превышение над рынком (если в будущем сохранятся прежние закономерности). По крайней мере, так было в проанализированных случаях (20 разных точек старта).
Ну, и вот, наконец, результаты бэктестинга, сведённые в таблицу:

Таблица 1. (Кликабельно, как и все другие таблицы)
:

Некоторые выводы.

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

В среднем сформированный портфель опережает рынок на 3,7% для 5 и 6 лет владения и на 5% для одного года владения.

Но это только в среднем. Когда сформированный портфель инвестор продаёт через год, то результаты могут быть очень разные. Например, если инвестор стартовал в год 2007 (31 декабря 2007), то за первый год его портфель потеряет 29,23% от своей величины. Это худший результат за всё время исследования. И для инвестора будет не сильным утешением узнать, что рынок потерял в этом году вообще 37%. Зато большим утешением для него было бы (когда он плакал в подушку), если кто-то шепнул бы ему на ушко, что ещё через год с небольшим его портфель восстановится, а к концу 6-го года его среднегодовая доходность составит достойные 10,17% годовых. А это значит, что его исходный портфель за 6 лет вырастет на 79%, даром, что падал. В то время, как рынок будет восстанавливаться ещё три с лишним года, а его среднегодовая доходность через 6 лет составит только 6,27% годовых. А это значит, что рынок дал инвесторам за этот 6-летний период только 44% роста.

Но инвестору может и повести в первый год. Если инвестор стартанул в 2012 году (31 декабря 2012), то в первый год он получит доходность +32,17% (лучший результат за всё время исследований). Причём, его мало огорчит, что и рынок показал почти такой же результат –  32%. Догадывается ли он, что к концу 6 года владения он получит очень хорошие, но всё же совсем не такие, как в первый год, 13,98% процентов среднегодовой доходности? А рынок даст не намного меньше –  12,15%.

Здесь же можно заметить, что в периоды хорошего роста рынка, как в 2012, опережение алгоритмическим портфелем рыночного индекса относительно невелико. А вот в период серьёзных просадок рынка, как в 2007 году старта (фактически 2008, поскольку старт 31 декабря 2007), алгоритмический портфель показывает серьёзное превышение рынка. Если это так, то алгоритмический портфель не только даёт повышенную доходность, но и сглаживает просадки рынка. Надо проверять этот вывод. Он как-то слишком уж хорошо выглядит.

Нетрудно также сделать вывод, что чем дольше инвестор держит портфель, тем менее волатильные результаты он получит. Например, за один год результаты очень зависят от точки старта и могут колебаться по доходности от -29% до +32%. А за 6 лет владения среднегодовой разброс результатов составит только от +6,65% до +19%. Ну, это обычная вещь. "Держи долго". Чем мы все и занимаемся.

Любопытно, что средняя доходность на всём периоде наблюдений не очень существенно уменьшается с ростом времени владения портфелем: от 12,2% до 10,9%. А волатильность снижается существенно.

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

Таблица 2.

Из второй таблицы и графика тоже можно сделать интересные выводы.

Из 114 заполненных клеток в таблице только в 9 клетках стоят отрицательные величины. То есть, рынок опередил алгоритмический портфель лишь в 8% случаев.

Из этих случаев отставания от рынка только один раз оно составило 5,73% (старт 2002, 1 год владения). Это реально большая величина. Ещё в одном случае отставание от рынка составило 1,15% (старт 2015, 1 год владения). Остальные 7 случаев – это случаи, когда отставание составило доли процента.

Интересно, что оба случая приличных отставаний от рынка попадают на год, когда сам рынок показал экстремально хорошие результаты, а результаты алгоритмического портфеля сами по себе являются вполне достойными. Например, 2002 год старта: рынок – 29%, портфель – 23,27%. 2015 – рынок – 13%, портфель – 11,85%.

В 105 случаях из 114 алгоритмически отобранный портфель показывает превышение доходности над рынком.

При владении алгоритмически отобранным портфелем в течение 5 или 6 лет во всех случаях портфель показывает превышение над рынком.

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

Риск.

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

Первая строка – среднегодовая доходность портфеля.
Вторая строка – среднегодовая доходность рыночного индекса.
Мы за любой период получили премию за риск. А что же риск?
Третья строка – стандартное (среднеквадратичное) отклонение портфеля.
Четвёртая строка - стандартное (среднеквадратичное) отклонение рыночного индекса.
 Риск владения алгоритмическим портфелем ниже, чем риск вложений в рыночный индекс. Нам снижают риск и приплачивают за это!

Общий вывод.

Из всего изложенного можно сделать вывод, что разумным инвестиционным поведением при работе с алгоритмом Greg мог бы быть такой:

Инвестор каждый год покупает ещё один портфель в соответствии с выбором алгоритма. При этом он не продаёт старый или старые портфели (если их несколько), пока не наступит для какого-то из старых портфелей срок 6 лет владения. Как только какой-то портфель находится во владении инвестора 6 лет, инвестор продаёт его полностью, а на полученные средства покупает вновь портфель в соответствии с алгоритмическим выбором. Таким образом на шестой год у инвестора имеются 6 портфелей разного срока владения от только что купленного до близкого к 6-тилетнему. И это будет продолжаться так же и в дальнейшем. Важно не путать портфели и знать для каждого срок владения. Никакого внимания на просадки и взлёты рынка обращать не надо. Просто делать своё простое дело. Раз в год продавать портфель, раз в год покупать портфель. Всё.

Это поведение удобно реализовывать тем, кто постоянно добавляет к своим инвестициям дополнительные средства.

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


Алгоритмический портфель.
Кому-то может быть интересен конкретный алгоритмически отобранный по стратегии Greg портфель. Вот, например, портфель для стартового 2003 года.

Здесь 31 бумага. За первый год, как мы уже знаем из первой таблицы, этот портфель показал доходность 21,87%, а S&P – только 11%. Но в конце шестилетнего периода этот портфель, как и почти все инвестиционные инструменты в то время, влетели в так называемый ипотечный кризис, и всё стало совсем не весело. Тем не менее этот портфель закончил своё существование через 6 лет после рождения со среднегодовой доходностью 5,99%. Не так плохо. S&P за эти же 6 лет дал среднегодовую доходность 2,06% - почти в три раза ниже. Но все ли позиции в этом алгоритмически сформированном портфеле такие молодцы? Совсем нет!

Например, тикер OMC. Акции компании не только не приросли в цене, их цена болталась все 6 лет примерно на одном уровне, постоянно слегка снижаясь. В результате на конец 6-го года владения (конец 2009, когда всё на рынке было не очень хорошо, мягко говоря) она потеряла в цене примерно 10% (4,5 доллара от исходных 44 долларов шесть лет назад), но поскольку она выплатила за эти 6 лет в общей сложности 3,45 доллара дивидендов, то эта фирма дала своему инвестору «всего» 2% убытков за все 6 лет владения суммарно. Не блестящий результат, скажем прямо. А ведь компания получила у нам весьма приличный рейтинг 11,14. Примерно такая же история приключилась с очень хорошей фирмой HD. Гораздо хуже было с MMC, MAS, CCL, CYY, AEE, LOW и CAH. Все они оказались убыточны для инвестора.

Но все дело в том, что в этом портфеле есть и другие компании, которые дали очень приличную доходность. BDX, APA, FCX, DHR, ECL, BAX, GIS, AZO, DRI, NEE. Они дали среднюю доходность на уровне 10% годовых и выше. Они и вытянули весь портфель. Кто-то, вероятно, задумался о том, как бы выкинуть из портфеля плохие акции, оставив только хорошие. Это не просто. Например, у отличной NEE, показавшей среднегодовую доходность на очень хорошем уровне 11,58% (это на фоне кризиса!) рейтинг составляет только 8,06. Очень слабенький рейтинг по сравнению с OMC, которая закончила с убытком (но её рейтинг при этом был значительно выше - 11,14). Как же так? Дело в том, что рейтинг работает по-другому. Неправильно думать, что чем рейтинг выше, тем лучше сработает компания. Рейтинг работает иначе. Портфель с рейтингом от 0 до 8 скорей всего покажет результаты хуже, чем портфель с рейтингом от 8 до 16. Но в обоих портфелях будут свои лузеры. Причём заранее непонятно, кто это будет и сколько их будет. В этом трудность.

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

Кто-нибудь, вероятно, уже давно хочет узнать, каков же сегодняшний портфель, отобранный по стратегии Greg. Могу по секрету сказать. Но на определённых условиях и не бесплатно. Кого очень интересует, пишите на barchevski@gmail.com. Я сообщу условия первым 15 обратившимся.
Subscribe

  • Как реализуются прогнозы?

    Выполнил домашнее задание, которое мне посоветовал сделать Ilya Roslyakov в комментарии к моему посту «Чистый proof». Он посоветовал…

  • ЧИСТЫЙ PROOF

    К вопросу о бессмысленности попыток переиграть рынок с помощью одиночного отбора акций. Два с половиной года назад, 21 декабря 2018 года, когда…

  • Отчёт за 3,5 года: не так плохо пока

    Прошло полгода 2021. Как всегда, буду делится результатами. В последнее время опять слышу довольно много строгой критики со стороны…

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 14 comments

  • Как реализуются прогнозы?

    Выполнил домашнее задание, которое мне посоветовал сделать Ilya Roslyakov в комментарии к моему посту «Чистый proof». Он посоветовал…

  • ЧИСТЫЙ PROOF

    К вопросу о бессмысленности попыток переиграть рынок с помощью одиночного отбора акций. Два с половиной года назад, 21 декабря 2018 года, когда…

  • Отчёт за 3,5 года: не так плохо пока

    Прошло полгода 2021. Как всегда, буду делится результатами. В последнее время опять слышу довольно много строгой критики со стороны…