Блог им. ArtsiomFursevich

Баффет был прав? Почему мой Python-скрипт «забраковал» Apple и нашел жемчужину в битых тачках.

Всем привет.

Я QA-инженер, в инвестициях уже 6 лет. Мой путь стандартный: сначала слушал «гуру», потом поумнел и собрал гигантскую таблицу в Excel. Я из тех, кто не покупает акцию, не посмотрев тренды выручки, маржинальности и ROIC за 5–10 лет.

 

 

В чем была моя личная боль:

На глубокий анализ одной компании по моему чек-листу (14 метрик в динамике) уходило около 2 часов. Забивать руками данные из Macrotrends в таблицу — то еще удовольствие. Самое обидное, когда в конце второго часа понимаешь, что компания — переоцененный шлак с падающей маржой, и время потрачено зря.

Еще одна боль — это «магия цифр» (это касается и книг и обучающих видео).
Книги и видео говорят: «Ищите рост выручки > 7% или ROA > 6.5%». Но почти никто не объясняет — почему? Откуда взялись эти цифры? Почему 7 и 6.5, а не 10 и 8 или не 5 и 3...

 

 

Что я накодил:

Баффет был прав? Почему мой Python-скрипт «забраковал» Apple и нашел жемчужину в битых тачках.
Написал сервис на FastAPI, который через API тянет отчетность и делает «Sanity Check» компании за 2 секунды. А вместо слепого следования догмам из книг и видео, я привязал все метрики к усредненным показателям компаний из S&P 500.
Я смотрю на бизнес через призму создания стоимости: если ROIC компании ниже её стоимости капитала (WACC) или равен ей, то никакой рост выручки её не спасет — она просто быстрее сжигает деньги инвесторов. Мой алгоритм подсвечивает именно этот разрыв.

Но я столкнулся с тем, на чем валятся многие готовые скрипты и даже крупные агрегаторы:

  • Проблема «холодного старта»: Когда у компании появляется новый сегмент или данные за год нулевые, CAGR улетает в бесконечность. Я внедрил метод импутации (подстановка 1% от среднего), чтобы сохранить адекватность тренда.
  • Аномалии в отчетности: Мой алгоритм умеет фильтровать «творческую бухгалтерию» — например, когда ROE становится отрицательным или зашкаливает за 100% из-за долгов. А компания всего-то является жестким байбекером.

Скоринг за 2 секунды: Вместо 2 часов в Excel я получаю вердикт сразу. Это не кнопка «разбогатеть быстро», а фильтр: заслуживает ли компания моего внимания или её нужно закрыть и забыть.

Парочка примеров:

Баффет был прав? Почему мой Python-скрипт «забраковал» Apple и нашел жемчужину в битых тачках.

(Apple vs Google): Баффет скинул львиную долю акций Apple, акции все равно подорожали на 30+% и все вокруг закричали, что старик упустил выгоду, Apple — топ компания и т.д.

А что по факту?
Revenue Growth стагнирует (около 3.3% в год),
EPS Growth за 5 лет в 2 раза хуже, чем рост индекса (7.21 vs 14.7).
Компанию тащит только феноменально широкий экономически ров, что видно по бешеному ROIC (45%).
P/E компании в околоисторических максимумах.


В то же время Google по моим метрикам выглядит фундаментально намного здоровее.


Другой пример:
Баффет был прав? Почему мой Python-скрипт «забраковал» Apple и нашел жемчужину в битых тачках.
Copart (CPRT) — скучный бизнес, который делает деньги.
Пока все ищут «новую Nvidia», мой алгоритм подсветил Copart. Это аукционы битых машин.
Звучит не сексуально? Зато цифры говорят об обратном:

  • ROIC 19.09%: При средней стоимости капитала в секторе около 8–9%, компания создает колоссальную добавочную стоимость.
  • Рост свободного денежного потока (FCF Growth) — 23.5%. При этом у компании отрицательный чистый долг (Net Debt/EBITDA = -1.27x). То есть кэша на счетах больше, чем всех обязательств.
  • Операционная маржа 38.7%. Для реального сектора — это космос.

 

 

Зачем я это выкладываю:

Я довел проект до стадии MVP (назвал OkStock). Денег за него не беру, рекламы внутри нет. Я хочу получить фидбек от опытных инвесторов.

Какие метрики вы считаете «железобетонными» для отсева шлака?
Что бы вы хотели добавить?

Потыкать сервис можно тут (бесплатно): https://okstock.app/

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

1.4К | ★5
#16 по плюсам, #23 по комментариям
14 комментариев
Не нравится мне этот гусь.
Дмитрий-Димас Ермаков, за что же Вы так со стариком Баффетом?
avatar
Важна ликвидность.Это большая фрагментация пакетов акций, чем у других . КП от 30%, а не 51 и более. Сколько пакетов близко к 1%? к 10%? к 25% 
avatar
ezomm, сейчас OkStock сфокусирован на «бизнес-показателях» (выручка, маржа, ROIC), но данные по структуре владельцев — это отличная идея для расширения раздела рисков. Записал в бэклог, спасибо!
avatar
Добрый День!
Прочитал статью до конца и скопировал.
Пожалуй выскажу восхищение проделанной работой и описанием труда!
Это одна из замечательных статей на Смарт Лабе по теме и без воды!
Валентин Борисов, Ого! Огромное спасибо за такую оценку! Честно, очень льстит, особенно на Смартлабе :)

Буду безмерно благодарен, если попробуете OkStock в деле. Мне сейчас важнее всего «критика делом»: всё ли понятно в интерфейсе и каких метрик вам лично не хватило для «полного счастья»?
avatar
Да не, не то. Инвесторы не платят за вакки и роики. Это все скучно, Инвесторы платят за 1)прогнозщируемый рост выручки в течение 1-2 лет, 2)какую долю рынка занимает эта контора, и показыает ли рост ее рынок, Какие прогнозы по росту рынка/сегмента, где работает компания 3)как компания эффективно тратит деньги акционеров-возврашает ли она их через дивиденды или вкладывает в высокоприбыльные бизнесы, 4)теряет ли или увеличивает ли долю рынка компания? 5)есть ли уникальный специфический продукт, который не могут скопировать конкуренты? 6)маржинальность бизнеса — меньше 10 и даже 15% не рассматривается, ищут от 50%+++ 7)долг к основным средствам (каков он), да и вообще Баффет еще хотел покупать по Intristic Value компании-изучите что это. А его выбором всегда являлись конторы которые растут на 10% ежегодно. В течение десятков лет. Усмехаясб, он сказал, что таких компаний практически нет
Павел Дерябин,
Давайте по фактам:

Прогнозировать рост выручки на 1–2 года или какую долю рынка компания будет занимать — это гадание. Я инженер, а не Ванга. Мой подход — «Эффект Линди»: если компания стабильно росла 10 лет, вероятность продолжения — выше, чем у любого прогноза аналитика из инвестбанка.

Маржа 50%+ бывает только у Asset-light компаний (софт, финтех). Ограничивать себя только ими — значит пропустить 80% рынка. У меня в фильтрах стоит порог 15–16%, что уже выше среднего по S&P 500.

ROIC — это и есть математическое выражение «уникального продукта» и «эффективности трат». Если у компании есть «ров» (Moat), он отразится в высоком ROIC. Если рва нет то и ROIC будет слабым. Пример с Apple, по-моему, это идеально отражает.

Мой скрипт — это сито. Он отсеивает тех, кто НЕ соответствует вашим же пунктам (6 и 7), чтобы вы не тратили время на чтение отчетов компаний с дутыми цифрами. За 2 секунды я вижу то, на что вы потратите час или два ручного анализа
avatar
Из-под российского IP без VPN фрейм P/E Ratio не отображается, видимо, из-за блокировки со стороны macrotrends.net, но сходу этого не понять — просто «Firefox не может открыть эту страницу»
avatar
Tony_M, да, есть такая проблема: Macrotrends блокирует прямые заходы из РФ.

У меня есть в планах переезд на собственные графики, чтобы все было в одном стиле и работало без ВПН. Но Macrotrends дают сильно больший диапазон лет, чем я могу пока себе позволить купить на этапе МВП.

В ближайшем обновлении прикручу валидацию: если ресурс недоступен, буду выводить заглушку с текстом, а не пустой фрейм. Спасибо, что подсветили!
avatar
Я искала такой алгоритм!!! Чтобы не просто покупать акции, которые интуитивно нравятся, а но основе анализа! Спасибо большое, что поделился!
Допилить бы только еще мобильную версию…
Ольга Заморская, огромное спасибо за поддержку! Ради таких отзывов и стоило выкладывать.

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

Уже занес адаптив в список приоритетных задач на ближайшее время :)
Постараюсь сделать так, чтобы анализировать компании можно было удобно прямо с телефона!
avatar
А, где берешь данные?
avatar
Denis Stelmak,
Ох, Вы прям по больному :)

Начинал с бесплатного плана FMP + скрапер Yahoo Finance как фолбэк, так как на бесплатном тарифе FMP дает доступ всего к паре десятков компаний. Сейчас подключил их платный пакет, чтобы охватить весь S&P 500.

Вообще найти качественный источник — это одна из самых сложных и дорогих частей проекта. Многие ресурсы дают смотреть данные в браузере, но за API просят от нескольких десятков до нескольких сотен долларов в месяц (особенно если хочешь коммерческую лицензию). Так что пока проект живет на моем энтузиазме и личных вложениях.
avatar

Читайте на SMART-LAB:
Фото
BitGo Holdings: как принять участие в IPO лидера блокчейн-индустрии?
BitGo — платформа и инфраструктура для работы с цифровыми активами для институциональных клиентов. Общий объем активов на платформе...
Фото
Формат QSH в OsEngine: поддержка и особенности работы
Недавно OsEngine начал поддержку бинарного формата хранения и трансляции данных по стаканам. Это было нужно, чтобы: 1)Облегчить работу эмулятора...
Фото
Итоги первичных размещений ВДО и некоторых розничных выпусков на 14 января 2026 г.
Следите за нашими новостями в удобном формате:  Telegram ,  Youtube ,  RuTube,   Smart-lab ,  ВКонтакте ,  Сайт
Фото
Хэдхантер. Ситуация на рынке труда в декабре идет ко дну - хуже не было никогда
Вышла статистика рынка труда за декабрь 2025 года, которую Хедхантер публикует ежемесячно, что же там интересного: Динамика...

теги блога Artsiom Fursevich

....все тэги



UPDONW
Новый дизайн