wiki:Analytics_v2

Мотивация Аналитикса обеих версий

Глобальные наши мотивы:

  • продвижение идей фримаркета
  • 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
Last modified 6 years ago Last modified on Feb 10, 2016, 11:39:31 PM
Note: See TracWiki for help on using the wiki.