Трендовушки на MOEX
Добрался до реализации расчёта трендов по квартилям на Московской бирже.
Этот проект манил меня давно. Один хороший человек его уже реализовал в t.me/kpd_investments, но хотелось повторить идею самостоятельно и добавить недостающие функции. Одна из них - динамическое отображение на сайте.
Реализация ИИ-агентами
К реализации подошёл с толком и расстановкой: попробовал новые подходы вайбкодинга, о которых писал в прошлой статье про ИИ.
Первым делом добавил трекер задач прямо в репозиторий проекта. Эксперимент оказался успешным. Идеи не теряются: на каждую новую мысль просишь AI оформить задачу, и постепенно накапливается список todo. По ходу развития проекта разгребаешь эти задачи, возможно, не в том порядке, в котором создавал. Ничего не забывается, проект планомерно развивается.
Список завершённых задач с результатами тоже оставляю в репозитории, хотя пока он мне не пригодился. Проект делал три недели, но рассчитываю, что при более долгом сроке жизни проекта к этому списку можно будет обращаться в поисках истины, когда причины тех или иных решений уже забылись.
Вторым пунктом попытался внедрить TDD. Заставить агента писать по TDD сложно. Пару раз у меня получилось, и результат был отличный. Один из плюсов TDD - архитектура становится легче тестируемой, а это хорошо заметно при ревью агентского кода. Когда архитектуру легко тестировать, она обычно получается понятнее и чище.
Выработать стабильный подход, при котором всё делается через TDD, пока не удалось. Возможно, проблема в том, что я и сам написал по TDD не так много кода. На GitHub есть готовые skills для агентов под этот процесс, но их я пока не пробовал. Awsome-list со всяким “полезным” для ИИ.
Сбор данных
Самым сложным в проекте оказался сбор данных. Кажется, что сейчас зайдёшь на сайт Московской биржи, скачаешь историю и дело сделано. Но нет.
Актуальные данные есть и выглядят корректно, а вот в исторических регулярно встречаются пробелы. И это несмотря на то, что мне нужны были всего лишь дневные цены и дивиденды по месяцам. В итоге пришлось парсить «Доход», Yahoo Finance, Тинькофф и Смартлаб. После этого ещё полировать результат агентским поиском по интернету, чтобы разобраться с расхождениями.
Дополнительной боли добавляют редомициляции, ребрендинги и сплиты.
Зато сам парсинг сайтов и реализация формулы расчёта даются AI легко.
ИИ везде, не только в пет-проектах
Кроме разработки пет-проектов на Python, я семимильными шагами интегрирую Claude Code в рабочие процессы.
Дал ему доступ через MCP к Confluence, Jira и GitLab. Записываю особенности workflow в глобальную память, связываю несколько отдельных Git-репозиториев в единое рабочее пространство.
Параллельно тюню свою ОС, делая её удобнее лично для себя. Для этого больше не нужно искать серебряные пули в интернете - во многом помогает ассистент. Обычно меня не устраивает какая-нибудь мелочь, которая исправляется одной настройкой в конфиге или небольшим скриптом с автозапуском.
Если раньше бухгалтеры автоматизировали всё через табличные процессоры, то AI-агенты стали новой вехой автоматизации, в которой эти процессоры сами себя улучшают по ходу выполнения работы.
Программистская рутина тоже автоматизируется. Пишешь skills: как составлять план по задаче, как проводить ревью, как реализовывать изменения и как проверять результат. Следующим этапом появляются мета-skills, которые используют предыдущие. Например, после составления плана автоматически запускается ревью, вносятся правки, и всё это происходит, пока ты «пьёшь кофе».
Хотя про кофе я немного лукавлю. Пока агент работает, ты всё равно думаешь о задаче и погружаешься в контекст вместе с ним. Самое интересное, что агент в этом помогает: бодро исследует рабочую базу знаний, находит связанные материалы и позволяет легко эту базу пополнять.
Получается такой search engine, только не для интернета, как Google, а для внутреннего мира организации. И разве это не чудо?