Был раньше такой журнал — «Сделай сам». Если у вас был молоток, лобзик и отвертка, вы могли сами сделать что-нибудь полезное для дома.
Предлагаю продолжить рубрику «сделай сам» и сконструировать простую базу данных сделок на Фортс-е, чтоб потом ее как-то анализировать.
В первую очередь нам нужны сами сделки. Берем их как обычно с фтп сервера rts. Но чтобы лишний раз туда не лазить, сделаем локальную копию у себя на диске.
Придется подождать пару часов, т.к. фтп сервер ртс-а раздает файлы медленно.
Данные за 2013 год занимают 1.2G. Как только архивы со сделками загрузились, нужно их как-то дальше извлечь и поместить в хранилище с возможность гибко делать запросы. SQL не самый оптимальный вариант, зато простой и распространенный. Чтоб все максимально упростить нам подойдет движок баз данных SQLite.
Некоторые скрипты для импорта сделок в SQLite я уже подготовил
Создадим схему бд:
Далее запустим скрипт импорта сделок в базу (снова придется подождать)
NB. после импорта сделок за 2013 год размер бд будет 17G
Открываем бд
Теперь можно проводить какой-либо анализ, например, мне интересно какую долю среди всех сделок по фьючу ртс занимают внесистемные (адресные) сделки.
Для этого я подготовил специальный sql-запрос. Да, сразу сделаем так, чтобы вывод резальтатов запрос отправлялся в файл, чтобы потом на его основе можно было посроить график. Визуально числовую информацию проще воспринимать. Для простоты смотрим только по декабрьскому контракту.
Снова нужно подождать. SQLite не поддерживает некоторые типы запросов, поэтому получился немного медленный вариант с двойным проходом по всему индексу.
В результате получили файл sample.data — Топ-50 самых больших долей внесистемных сделок за весь контракт. 3,4-ая колонки — суммы сделок соотв. системых и внесистемных. 5-я — nosys/sys*100 (%)
Как видим внесистемных сделок довольно много проходит. О чем это говорит? Кто-то кукловодит индекс?
Сделаем картинку из полученных данных.
Вот и результат (внесистемные по правой шкале, т.к. их относительно мало)
Как бы на этом все. SQL интерфейс к сделкам теперь есть, можно кoпать что-нибудь интересное для себя.
Скрипты вот сдесь —
bitbucket.org/bocman/tickdb