Блог им. chikago_bears
Оглавление
Часть 1 - Основная идея
Часть 2 — Обзор первого функционала
Коротко о содержании предыдущих частей: я инженер-конструктор, который решил написать собственный сервис для статистического анализа акций Мосбиржи. На данный момент готов MVP и идет активное обогащение функционалом.

1. Добавил Prophet
Пара слов о том, что это такое:
Prophet — это библиотека автоматического прогнозирования временных рядов на основе аддитивной модели, где нелинейные тренды сочетаются с годовой, недельной и дневной сезонностью. Библиотека изначально создана специалистами Meta (признана в РФ экстремистской) для бизнес-задач с выраженной сезонностью.—
Сначала я хотел разместить его как «игрушку», но потом подумал: почему бы не фиксировать каждый прогноз и сравнивать его с фактическим значением рынка?
Приведу пример того, как это выглядит сейчас:

Prophet ежедневно пересчитывает прогноз на 30 дней вперед и рисует сезонность.
В данном случае алгоритм пророчит снижение акций Сбербанка на 10%. При этом сервис фиксирует прогноз на следующий торговый день в отдельную таблицу, а потом сравнивает «отклонение» этого прогноза с фактом и оценивает качество:

Получается, что среднее отклонение (из 2 сравнений) — плюс-минус 3,9% (по качеству 0,19 из 1). Довольно посредственно, мягко говоря. Возникает резонный вопрос: зачем тогда держать такой функционал и пересчитывать каждый день прогноз такой сомнительной библиотеки для 65 акций, добавленных в скрининг?
Как оказалось, для некоторых акций, прогноз получился довольно точным.
Например:

Здесь приблизительно 0,5% отклонения и 0,82 по качеству. Допускаю, что связано это с более низкой ликвидностью или ярко выраженными паттернами конкретной акции.
Да, я прекрасно понимаю, что статистически обсуждать среднее значение по двум зафиксированным отклонениям — смешно. На данном этапе это лишь функционал, который методично продолжает собирать данные. Мне интересно, как будет меняться отклонение точности по всем бумагам на дистанции. Во вкладке «Скринер» уже есть возможность фильтрации по точности Prophet, но, к сожалению, пока это просто «пыль» из-за малой выборки.
2. Добавил Карту
Карта есть у всех — пусть будет и у меня.

Разбил её по классическим секторам. Размер блока отражает дневной объем изменения, а цвет — направление. Значения и блоки меняются в режиме реально времени.
3. Тестирование сервиса
Тестирование планирую запустить в ближайшие две недели после устранения шероховатостей и подключения авторизации для новых пользователей. Если у вас есть желание поучаствовать в раннем тесте — вступайте в ТГ-канал. Там будет размещена вся информация, а также новости по доработке и обновлению функционала.
Кстати, в этом же ТГ-канале сегодня выложил пост о добавлении экспериментальной функции фиксации динамики Стакана. Заходите посмотреть.
Послесловие
Разработка движется семимильными шагами. Возможно, вы найдете в сервисе пользу для себя или подскажете, что нужно добавить, чтобы эта польза появилась. Вам — полезный аналитический инструмент, а мне — востребованный продукт, созданный собственными силами.
Антон, справедливый вопрос. Мне кажется, что LLM может быть полезен при необходимости оценить конъюнктуру отдельной акции или рынка в целом. Но мне сложно представить, чтобы языковая модель корректно считала тяжелую статистику сразу по 65 акциям, строила прогнозы через Prophet, да еще и самостоятельно вела базу точности своих же наблюдений.
LLM выдаст полотно текста, а не интерактивный скринер где результаты можно отсортировать в один клик и сравнить показатели. Так или иначе пришлось бы писать бэк и фронт, чтобы сделать что-то такое.
Поскольку сервис я делал изначально для себя, мне было критически важно понимать, что стоит за расчетами, а также быстро и удобно пользоваться результатами.
Сейчас всё работает самостоятельно без LLM, только на формулах: котировки тянутся по API каждые 2-3 секунды, а все тяжелые параметры и прогнозы пересчитываются и фиксируются в фоне по заданному таймеру.
LLM и чат-ботов для анализа внедрять не планирую.
Рад, что Вы обратили на это внимание.
Тем более Prophet сейчас занимает лишь незначительный процент от общего функционала