Version 9 (modified by 9 years ago) ( diff ) | ,
---|
- Analytics_v2/Technical - технический план
Мотивация Аналитикса обеих версий
Глобальные наши мотивы:
- продвижение идей фримаркета
- jumping on the Bitcoin, Big Data, Artificial Intelligence bandwagons
- извлечение прибыли из текущего хайпа
- создание для себя работы в области, которой хотелось бы заниматься
- получение "фонового дохода"-"пенсии"
По сути, v2 - это не v2, а продолжение работ над v1, реализация первоначальной идеи аналитикса, которую мы в результате не потянули, и остановились на малом:
- Аналитический инструмент для широкого круга лиц:
- Рядовых граждан
- Технических "аналитиков" и форексовцев
- "Настоящих" финансовых аналитиков из HFT-кругов
- Аналитиков из мира Artificial Intelligence, Machine Learning и Big Data, интересующихся Биткоином
- Индикаторы и индексы разной направленности:
- "Телевизор" - для любопытствующих
- "Асtionable" - для трейдеров
- "Research grade" - для учёных
- Лёгкость добавления новых визуализаций
- Лёгкость перетасовки графиков и организации кастомных видов
- Интерактивность: Realtime, Pan-Zoom, выбор параметров
- Расширения спектра доступных в мире Биткоина визуализаций
- Сейчас ограничены рисованием простых индикаторов для торгов без разделения бид-аск
- Исследования ордербуков затруднены и в мире других финансовых инструментов, т.к. Level 2 Data дорогие, непубличные и зарегулированные. В этом плане биткоин может активировать исследования free market в целом, т.к. это считай первый действительно свободный автоматизированный рынок с низким входным барьером.
Вторичные сопутствующие мотивы:
- Беспроблемные микроплатежи - продвижение идеи биткоина как удобного платёжного инструмента для приема оплаты за веб-услуги
- Разработка средств разработки: контейнеры, клауды, супервизоры, docker-beaner-zeromq
- "перекрёстное опыление" между проектами и возможность применения накопленного опыта: тематика пересекается с другими моими проектам - с Роджеровской аналитикой, хакнулом-HNC и Максимовским N2O-Vox-Mad
Проблемы Аналитикса-v1
Проблемы:
- отсутствие денег на разработку
- невозможность заполучить работников, инвесторов или партнёров
Причины:
- низкое качество кода
- низкая производительность
- некрасивый графический дизайн
- малый объём функциональности
Пути разрешения проблем:
- инкрементальное исправление архитектуры и производительности v1 (замена dyCharts на SVG, внедрение базы, свечи-агрегация - что делалось в Харькове в конце)
- написание клона аналитикса без использования существующего кода с применением готовых фреймворков и изоляцией (что обсуждалось в Доминикане)
- написание только новой функциональности в Аналитикс, без реинжиниринга существующего кода, в виде отдельного сайта (на основе Jupyter/IPython/nbviewer)
Видение Аналитикса-v2
- Социальная площадка для тусовки производителей и потребителей аналитического контента - статей, иллюстрированных графиками (аналог quantopian posts)
- Источник новостей о событиях в мире биткоина - https://en.wikipedia.org/wiki/Data-driven_journalism
- Тусовка алготрейдеров (стратегии, backtesting, метрики риcков, slippage)
- Data Market (буки-торги, может, blockchain analytics) - https://www.quantopian.com/data/accern/alphaone
Почему так не сделали сразу
На момент создания аналитикса HTML5 (web sockets, AJAX, SVG, Canvas, local store) и клауды (docker, zeromq, nosql, horizontal scaling) - только начинали развиваться. Соответственно, готовые инструменты были
- либо убогими (jQuery),
- либо cырыми (Meteor, Socketstream),
- либо ориентированными на "старые" многостраничные сайты поверх SQL (Django, Zend Framework, Typo3, Connect-Express)
- и были достаточно низкоуровневыми (ориентировались на произвольные сайты, не было специализированных на аналитике и визуализации)
То же самое можно сказать про
- готовые инструменты для big data, аналитики и визуализации (scientific python, R, Hadoop, Spark),
- и про клиент-серверные IDE (atom editor, R studio, IdeOne...)
- и про высокоуровневые фреймворки виджетов для фронт-энда (webix, cappuccino)
Выбранные инструменты
- http://jupyter.org/
- IPython - плагин для написания под Jupyter на Питоне (наиболее развит из [40 имеющихся])
- pandas - библиотека датасорсов - "фреймов", заполняемых данными и передаваемых аргументами в функции отображения графиков
- matplotlib, seaborn - библиотеки графиков, совместимые c Jupyter и pandas
Прочие инструменты
Для Python
- scipy - библиотека научных рассчётов, численные методы широкого профиля, сейчас используется косвенно внутри seaborn
Для R
- IRKernel - плагин для R (под R больше библиотек анализа и визуализации)
- shiny - библиотека браузерных виджетов для R
- R Studio Server - онлайн-IDE, аналог Jupyter прошлого поколения
- CRAN Finance, Econometrics - библиотеки "взрослой" финансовой аналитики
- CRAN obAnalytics - библиотека анализа исторических ордербуков битстампа (!) (больше никаких библиотек для Level 2 на CRAN нету)
Для клиентского JS
- crossfilter - библиотека сверхбыстрых (30+ fps) интерактивных гистограмм поверх миллионов датапоинтов (тот же seaborn уже неюзабелен при 20к точек)
- dc.js - библиотека подчиненных графиков поверх crossfilter
- D3.js - библиотека художественной резьбы по SVG DOM, включая анимации. Если будем делать наши собственные графики.
Пакеты Archlinux
[andy@arch ~]$ pactree -d 1 jupyter jupyter ├─ipython ├─jupyter-notebook ├─python-setuptools ├─python-jinja ├─python-pyzmq ├─python-tornado ├─python-jsonschema ├─python-terminado ├─python-mistune └─python-pygments [andy@arch ~]$ pactree -d 1 python-seaborn python-seaborn ├─python-pandas ├─python-matplotlib └─python-scipy
Note:
See TracWiki
for help on using the wiki.