Типы данных о состоянии торгов на криптовалютных биржах


При покупке криптовалютных данных вы столкнетесь с наборами данных, которые отличаются полнотой описания произошедших торгов криптовалютами. В зависимости от временных промежутков фиксации состояния торгов и наличия данных по заявкам выделяют несколько типов данных. Материал подготовлен по статье Data types regarding to trading sessions on cryptocurrency exchange

Intraday data

Intraday data — общая характеристика данных, показывающая, что это данные о состоянии торгов на бирже в течение дня. В отличие от классических бирж, торги на криптовалютных биржах не останавливаются на ночь, однако термин справедливо применять и к ним.

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

EOD (end of day)

Это самые укрупненные данные. Приводятся данные на конец дня. Например, BTCUSD 01/10/2018 $6630. Это означает, что в конце дня стоимость одного биткоина составляла $6630. Этими данными пользуются экономисты и аналитики для фундаментальных расчетов. Это своего рода индикатор тенденции изменения стоимости криптовалюты.

Ohlc (ohlcv)

Более полные данные это ohlc — это данные показывающие котировки на момент открытия (open) торгового дня (начало дня), наивысший (high) уровень цен достигнутый за день, наименьший (low) уровень цен достигнутый за день, уровень цен на момент закрытия (close) торгового дня (на конец дня). В случае с ohlcv указывается и объем торгов (volume) за день.
Например, пара BTCUSD на бирже Binance на 1 октября 2018 имеет ohlcv: 6543; 6890; 6125; 6630; 70M. Это означает, что на начало дня курс биткоина к доллару был $6543, наивысшая цена в течение дня была $6890, наименьшая — $6125, цена на конец дня составила $6630. Цена конца дня (цена закрытия) будет являться ценой начала следующего дня (ценой открытия). 70М означает, что объем торгов за день составил 70 миллионов долларов.
Как вы видите это еще очень обобщенные данные, которые не показывают всю картину торгов в течение дня. Более детальная картина получается, если снимать данные через определенные промежутки времени: через 1/5/10/15/30 секунд или 1/5/10/15/30 минут или каждый час (hourly data). Такие данные более точно показывают состояние торгов на бирже и по ним можно анализировать настроение трейдеров и инвесторов.

Вы можете задаться вопросом, почему бы не брать всегда максимально полные данные? Во-первых собрать такие данные труднее и стоят они дороже. Во-вторых объем таких данных существенно больше. Поэтому для каждой задачи необходимо подбирать оптимальный объем данных. Например, для построения экономических моделей в криптоэкономике вполне подходят обобщенные данные по каждому дню (intraday ohlcv). Для стратегических инвесторов вполне хватает данных EOD. В тоже время для настройки и тестирования торгового робота могут потребоваться еще более полные данные.

Но есть еще одна причина для других типов данных. Все указанные выше типы данных это данные состоявшихся торгов на бирже. Однако эти данные не включают несостоявшиеся заявки (orders) на покупку (bid orders) и продажу (sell orders). Например, в указанном выше примере ohlcv: 6543; 6890; 6125; 6630; 70M, может складываться ситуация, когда трейдер выставил на продажу биткоинов на 200 миллионов долларов, но продал лишь на 70 миллионов долларов. 130 миллионов остались невыполненными. Согласитесь, это важная информация для понимания дальнейшего возможного изменения курса, скорее всего цена будет падать ниже $6125. Для отражения таких ситуаций используют еще одну группы типов данных о торгах на бирже.

Tick data

Это самая полная группа данных — это данные по каждому изменению состояния торгов на бирже. Сюда попадают все заявки на покупку и продажу, стоимости и объемы, выполненные ордера.

Level 1 Market Data (top of book, best bid offer)

Этот тип данных включает в себя:
  • Bid price: Наивысшая предложенная цена на покупку
  • Bid size: Количество криптовалюты на покупку
  • Ask price: Наименьшая цена на продажу
  • Ask size: Количество криптовалюты на продажу
  • Last price: Цена, по которой состоялась последняя сделка
  • Last size: Количество криптовалюты в последней сделке
Например,
Bid price: $6750
Bid size: 50BTC.
Ask price: $6780
Ask size: 10BTC
Last price: 6770
Last size: 5BTC
Эти данные говорят о том, что есть трейдеры, желающие продать суммарно 10 биткоинов по цене $6780. В тоже время есть трейдеры, желающие купить суммарно 50 биткоинов, но по цене $6750. Как видим при таких данных торги состоятся не могут. Произойдет пауза в торгах до тех пор пока какая-либо из сторон не изменить цены. При этот это у нас есть ориентир, что предыдущая продажа биткоинов состоялась при цене $6770 и было продано 5 биткоинов.

Данные Level-1 показывают Best-Bid-Offer ("BBO" или"Inside Quote"), то есть минимальную цену продажи и максимальную цену покупки по состоянию на один и тот же момент времени. Данные Level I предоставляют торговым системам всю информацию, необходимую для торговли основанной на анализе графиков рынка. Если ценя является критерием входа в позицию, то Level 1 это все, что вам надо. Однако, «скальперы» (Scalpers), или те, кто торгует в зависимости от ставок других трейдеров, используют Level II, которая предоставляет множество уровней предложений и спроса на актив.

Full orderbook data aka level-2

Это более полные данные по сравнению с Level 1. Отличие состоит в том, что данные приводятся по каждой заявке каждого трейдера. Например, если у нас имеется три тысячи заявок, то все они будут приведены в этом типе данных.

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

Time and sales data

Существует и третий тип данных в реальном времени — "time and sales". Данный тип данных показывает каждую состоявшуюся сделку на криптобирже.
  • Этот тип данных состоит из:
  • Date and Time: Точная дата и время, когда произошла сделка
  • Direction: Была ли это сделка на покупку или продажу
  • Price: Цена, по которой состоялась сделка
  • Volume or Size: Количество актива (криптовалюты).
Разберем на примере:
Date and Time: 01.10.2018 19:37:09
Direction: SELL (Продажа)
Price: $6710
Volume or Size: 0,2BTC
Как вы знаете, все заявки попадают на биржу и ранжируются по цене. Ордера Buy и Sell выстраиваются друг напротив друга в торговом «стакане». Работа биржи основана на выполнении пересекающихся заявок. По этой причине важным моментом является направление торгов. Иначе говоря, чьи заявки «срабатывают» — тех, кто хотел купить (Buy) или тех, кто хотел продать (Sell). Это очень важный индикатор, показывающий в какую сторону вероятнее всего пойдет цена на криптовалюту.

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

Комментарии