Хабрахабр

Другая реальность финансового рынка

«Нашей задачей было исследование возможности и потенциала HoloLens для игроков финансового рынка», — рассказали нам ребята из dxFeed. А мы не удержались и хотим рассказать про это вам.

Disclaimer: данная статья не призвана научить вас разработке под HoloLens на Unity. Для этого есть эта статья. Ниже вы найдёте отличный сценарий использования смешанной реальности в сфере финансов.

Передаю слово автору.

dxFeed — поставщик данных с мировых бирж и разработчик сервисов для анализа рыночных данных. В финансах рыночные данные — это данные о ценах и торговле финансовыми инструментами, о которых сообщает торговая площадка (например, биржа). Рыночные данные позволяют трейдерам и инвесторам узнать последнюю цену и увидеть исторические тенденции для таких инструментов, как акции, продукты с фиксированным доходом, деривативы и валюты.

Конечные пользователи большинства наших аналитических терминалов — это люди, которые сидят перед несколькими мониторами весь свой рабочий день и внимательно изучают графики изменения котировок, тестируют различные торговые стратегии на исторических данных, анализируют огромный поток рыночных данных и одновременно следят за новостными каналами перед тем, как принять решение о покупке или продаже финансового актива.

Чтобы разнообразить свои сервисы и повысить качество визуализации огромного количества информации, dxFeed разработал приложение для анализа данных на основе HoloLens.

Mixed Reality в финансовой индустрии

Финансовые рынки и трейдинг сегодня сильно зависят от степени автоматизации и алгоритмов. Человеку требуется анализировать и обрабатывать огромные потоки информации.

Мы перенесли финансово-аналитические платформы в среду Mixed Reality, чтобы дать пользователям (трейдерам и инвесторам) возможность работать с информацией на более глубоком уровне.

Плоские ранее графики стали объемными, размеры монитора перестали иметь значение, а обзор в 360 градусов дал возможность открыть неограниченное количество экранов.
По нашим наблюдениям, наибольший интерес к этим технологиям проявляют частные трейдеры, инвесторы и консультантов в финансовых организациях по всему миру: для них возможность сотрудничества без привязки к локации является крайне полезной. Банки, инвестиционные фонды, хедж-фонды, FX-брокеры и биржи также осваивают технологии MR, чтобы обогнать своих конкурентов и предложить клиентам услуги, например, консультацию в виртуальном кабинете или отслеживание своего портфеля в 3D.

Поговорим про сценарии

В начале 2016 года мы начали разработку финансового приложения dxFeed Holographic Solution, как только получили первый HoloLens Development Kit.

Первым делом мы визуализировали собственные данные, которые получаем с мировых бирж, а для технической реализации ориентировались на рекомендации Microsoft: использовать Unity, технологию распознавания жестов HoloLens, а также распознавание голоса с помощью Cortana.

Эта функциональность, а также возможность манипуляции голографическими объектами могут быть крайне полезны во многих сценариях:

  • Инвестор может пригласить консультанта в виртуальную переговорную для того, чтобы показать, как рост или падение цены влияет на портфель, и продемонстрировать возможные решения.
  • Финансовый аналитик, отслеживающий акции определенной компании на бирже, может получить и визуализировать огромное количество данных, проанализировать прошлые курсы акций и мгновенно передать своему клиенту полученную информацию в голографическом виде.
  • Студенты или новые сотрудники, которые только обучаются трейдингу, могут использовать технологии AR/MR для изучения индикаторов и анализа паттернов по историческим данным и воспроизведению рыночной активности. Это также будет для них отличной возможностью погружения в финансовые рынки для дальнейшего взаимодействия.

Реализация на одном примере

Для примерного понимания принципа работы приложения и перечня используемых технологий рассмотрим конкретный пример. Допустим, что мы хотим отобразить один из наиболее простых виджетов — например, тиковый график (Tick Chart). Такой график показывает пользователю время, цены и объем совершенных индивидуальных сделок, а также коридор лучших цен спроса и предложения (Bid/Ask).

Данные для графика предоставляются в виде потока данных о событиях Time and Sales, который dxFeed получает напрямую от бирж. Для обработки данных будем использовать dxFeed C# API. Обратите внимание, что эта библиотека по сути является обёрткой для dxFeed C API, которая, в свою очередь, была разработана под десктопные Windows и использует WinSock2 для доступа в интернет вместо инструментов Windows Runtime.

Итак, мы подключили поток данных Time and Sales по конкретному задаваемому символу (например, MSFT).

Сам виджет будет представлять из себя ни что иное как GameObject с набором компонентов. Обработка полученных событий на стороне виджета происходит в несколько этапов:

  • Вычисление текущего диапазона отображаемых данных, надписей на осях, набора отображаемых точек и т.д.
  • Масштабирование и генерация геометрии (треугольников) по отображаемым точкам. Данная операция включает в себя большое количество рутинной вычислительной работы, что делает возможным и сообразным её выполнение посредством вычислительного шейдера (Compute Shader). То есть здесь надо было написать шейдер, который масштабирует точки, генерирует из них сплошную линию с заданной толщиной, обрезает её по границе графика и добавляет ей толщину по оси z для красоты. Заметим, что это вычисление можно производить не на каждом кадре, а всего один раз за обновление данных.
  • Генерация оставшейся части геометрии на процессоре: положений символов текста, горизонтальных и вертикальных линий, границ графика и т.п. В конце всё это будет слито в один Mesh.
  • Завершительные операции в UI-потоке: изменение MaterialPropertyBlocks с учётом данных на выходе вычислительного шейдера (пришедших в ComputeBuffer) и каких-либо ещё изменений; расположение дочерних Unity UI объектов виджета.

Естественно, это лишь один из вариантов хода событий — также виджет иногда нужно обновлять после того, как пользователь нажал на виджете кнопку (Air Tap на HoloLens) или просто посмотрел (Gaze) на него. Иногда виджету нужно поменять свой размер — например, по запросу того же пользователя. У некоторых виджетов есть всплывающие панельки с миниатюрной картинкой среза графика в заданном месте. Или, иногда нужно отобразить список доступных символов (финансовых инструментов), чтобы пользователь поменял текущий, или создать дочерний виджет, показывающий данные в другом разрезе.

Помимо виджетов с графиками, табличками и прочими визуализациями, приложение умеет отображать новостное видео. Сам движок Unity видеопоток отображать не умеет, поэтому пришлось выбирать и использовать конкретный сторонний бэкенд, в данном случае Microsoft Media Foundation. Для него сделали свой нативный плагин.

Также следует отметить, что сейчас в качестве отдельного эксперимента разрабатывается возможность совместного доступа к одному рабочему пространству с нескольких очков. Для этого используется транспорт из Mixed Reality Toolkit и софт компьютерного зрения на базе Vuforia. На уровне виджета это означает, что какую-то часть его внутреннего состояния (положение, размер, текущий отображаемый символ) нужно хранить отдельно в той или иной сериализуемой структуре данных, чтобы ей можно было обмениваться с другими устройствами.

Примеры других виджетов, которые сейчас умеет отображать dxFeed Holographic Solution:

  1. Market depth: классический биржевой стакан в виде таблички. Отображается один символ из списка, который пользователь может поменять кнопкой на виджете.
  2. Watchlist: таблица с различными параметрами по нескольким финансовым инструментам, например, последние котировки, цена и объем последней сделки.
  3. Volatility Surface: зависимость собственной волатильности опциона от его strike и expiration.
  4. Clusterization Summary: разница между последней ценой сделки (last trade price) и итоговой ценой (summary price) по каждому символу в виде гистограммы.
  5. Book Trace 3D: поверхность состояния биржевого стакана. Оси: время, цена, кумулятивный объем спроса/предложения.

Перспектива dxFeed Holographic Solution

Использование технологий MR в трейдинге и анализе данных имеет множество преимуществ для финансовых организаций. Например, фирмы могут заменить множество мониторов в своих офисах на компактные беспроводные MR-очки, тем самым снимая с пользователей ограничения, связанные с размерами экранов компьютеров, смартфонов и планшетов.

Компании могут внедрить концепцию «workplace everywhere»: с обзором в 360 градусов пользователи смогут работать на любой поверхности и даже в воздухе. Голографические технологии позволят пользователям улучшить их производительность и усовершенствовать отображение рыночных данных, что является ключевым элементом в своевременном принятии финансовых решений.

Об авторе

Дмитрий Парилов — руководитель VR/AR направления компании dxFeed, председатель FinTech комитета ассоциации VR/AR (The VRARA). Дмитрий начал свою карьеру в IT-индустрии 12 лет назад и сейчас ведет проекты в сфере финансовых технологий, возглавляя команды, распределенные по всему миру.

Mixed Reality Imagine Hack

Обратите внимание, что сейчас у нас проходит сбор заявок на международный студенческий конкурс Imagine Cup 2018. Победитель может выиграть 100K $.

В преддверии конкурса мы проводим серию хакатонов, на которых вы можете найти команду или ментора, пообщаться с экспертами и презентовать им свой проект. Ближайший из них будет посвящён разработке под MR/VR и пройдёт 9 — 10 февраля в Москве при поддержке AVRA и ТемоЦентр. Присоединяйтесь.

Теги
Показать больше

Похожие статьи

Кнопка «Наверх»
Закрыть