Блог им. AVBacherov
Как и любой исследователь-инвестор, я сталкиваюсь с необходимостью обрабатывать огромное количество различных данных, чтобы принять взвешенное инвестиционное решение.
И одна из самых трудоемких частей работы — это сбор данных, их систематизация и подготовка для работы. Конечно, очень хочется как можно больше автоматизировать данную работу, чтобы тратить на это как можно меньше времени.
Я уже рассказывал, что на самоизоляции осваивал Python, и демонстрировал, что мне удалось написать профессиональный инвестиционный калькулятор, который рассчитывает различные финансовые показатели и сравнивает между собой два актива. Кстати, в последней его версии я добавил возможность учета комиссий и налогов. Это позволяет намного легче сравнивать NET результаты для инвестора, особенно если в стратегии по ДУ есть вознаграждение управляющего за успех, а в ПИФах комиссия за приобретение и погашение паев.
Все первичные данные для сравнения приходилось формировать в ручном режиме — скачивать котировки в файл, потом их обрабатывать, и уже потом считать результаты. И даже немало известная программа HYDRa от STOCKSHARP, хоть и помогала в автоматизации данного процесса, но имела массу недостатков. К тому же после очередного большого обновления, зачастую приходилась настраивать в ней всё заново, что откровенно раздражало.
Идея завести свою базу данных была давно, и вот наконец дошли руки.
Что мне получилось сделать❓
✅ С помощью своего институтского друга, я «поднял» и настроил собственный SQL Server
✅ Научился с помощью Python работать с таблицами в SQL: читать, записывать, редактировать, добавлять данные и т.д.
✅ Нашел здесь — на Smart-lab.ru код для загрузки данных с сайта Finam, доработал его под свои нужды, и теперь в автоматическом режиме могу легко обновлять данные по нужным мне бумагам и контрактам в своем SQL
✅ Немного переписал свой инвестиционный калькулятор для работы с SQL
Все это раз в 10 сократило мои временные затраты на сбор данных и их подготовку к работе, высвободив массу времени для исследований. Кроме этого, теперь я могу с легкостью работать из любой точки Мира 😉
✅ Научиться загружать данные с yahoo finance и moex, чтобы лучше исследовать американский рынок и иметь альтернативные источники. Конечно, преобразовывать их в нужный мне формат.
✅ Переписать код на Matlab в моем инвестиционном бюллетене ABTRUST, чтобы также легко и просто забирать данные c SQL
✅ Добавить в SQL таблицы с характеристиками облигаций, поля финансовых отчетностей компаний, которые я использую для фундаментальной оценки акций, и различные показатели макро- и денежно кредитной статистики.
Скоро, я «одним нажатием» на кнопку смогу формировать любые отчеты, которые меня интересуют, а также намного легче смогу тестировать свои портфельные стратегии.
Удачных Вам инвестиций и интересных исследований❗️
Для мозгов реально полезно, в 45 лучше и быстрее стал соображать, чем когда бы то ни было, в процессе изучения и создания всяких алгоритмов научился мыслить логически, не по инерции, даже банально считать в уме стал лучше, порешав кучу всяких задачек на питоне
Ну, если у вас SQL-Server в инете торчит и сам данные собирает и обрабатывает, тогда конечно. В других случаях, смысла такой БД не вижу.
Да, автоматизация — наше все!)
А финам разве не ввел тему с токенами или чем там, которая препятствует автоматическому скачиванию истории?
Нужна БД для хранения миллионов строк. Можно, конечно, сейчас коннектиться к любой БД. Но работа с БД остается
Мне надо, к примеру, историю всех сделок по опционам где то хранить, это уйма строк. И вытащить я пока только из квика умею
Tsdb я от Вас узнал только что. Штука интересная, надо пробовать.
Сейчас организация хранения данных как раз основная задача.
— описание структуры таблицы для хранения данных — где посмотреть / кто поделится.
— если проходит сплит / обратный сплит — смена тикера — тоже надо правильно учитывать