Сам по себе Tick Data не является загадкой, поскольку биржа отправляет вам активные ордера на каждую акцию (или фьючерсные опционы) в Active Order Book (т.е. ваши ордера все еще существуют на бирже, но не были синтезированы).
**举例说明:**
某天的市场一开始的时候苹果股票的order book(委托挂单)清空(这里不进行auction period的探讨):
1. 接着来了第一个卖家:1000@100 :
这时候交易所会发给你一个message,告诉你是苹果股票有人想以100块钱卖出1000股,
那么这个order就先挂在了order book上,成为卖一。
卖:1000@100
2. 第二个卖家来了,他想卖得更高: 1000@101:
这时候交易所会发给你另一个message,告诉你是苹果股票有人卖的价格比你差,于是排序在更上面,卖二。
卖:1000@101
1000@100
3. 刚才的第一个卖家后悔了,cancel了他的order:1000@100撤消了,那么交易所会有message告诉你,
现在只剩一个1000@101(卖一)。但是你可能需要自己编程处理这种remove掉一个tick的情况。
卖:1000@101
4. 终于有买家来了... 500@90 , 这个价格是不会成交的,因为买家低于现在的最佳卖价:101,
那么order book里面会继续存着这个order,同时会发送一个tick告诉市场上的其他人,有买单了:
卖:1000@101
买:500@90
5. 继续,接着有一位买家以101块钱买入1000股,等于要把目前的bestoffer 1000@101给match - 撮合了,那么你是不会收到这个最新的bid: 101@1000 的,
因为它会进入matching engine的瞬间跟对面的best offer 撮合了,tick table的一个规则: bid offer 永远不会cross,
否则要么是数据商的bug,要么是交易所的bug。现在,你只会收到一个告诉你delete the best offer的message,那么tick table长这样:
买:500@90
Поскольку Tick-данные настолько просты, что рынок повторяет этот процесс.Но есть и другие проблемы:
- 1. Часто данные, отправляемые тиком, отправляются в UDP, представьте, что на фондовом рынке, если сделка очень активна, то объем данных будет очень большой, UDP будет иметь место, как это сделать.
- 2. как быстрее обрабатывать данные о тиках в режиме реального времени, иначе объем данных будет таким большим, что после задержки вы никогда не сможете отслеживать ритм тиков в режиме реального времени, пока ваши программы не отключатся.
- 3. Как избежать некоторых особых ситуаций, вызывающих ошибки, если один клик не считается правильным, то все последующие клик-таблицы являются ошибочными:)
** Также есть проблемы с пониманием тика: различные рынки имеют различные точки тика, о которых говорится выше - фондовые рынки в развитых странах, которые продвигаются в режиме реального времени (если есть новый заказ и в пределах уровня отправки тика, например, Токийская биржа отправляет только 8 уровней тика, то вы не можете увидеть весь полный тик, потому что может быть более 100 уровней, если много людей торгуют). Сколько миллисекунд внутреннего срочного обмена, чтобы снять снимки (снимки), и 3 секунды, чтобы отправить их вам. Возможно, внутренняя система торговли уже очень старая и не может идти в ногу с развитием ИТ.
(Этот пост был скомпилирован количественным трейдером WeChat id:quantcity..)
Для высокочастотных тиковых данных из-за рубежа существует полный процесс получения данных о порядке, поэтому вы можете использовать эти данные для восстановления снимков.
Две крупнейшие национальные акции и четыре крупнейшие фьючерсные бумаги теоретически представляют собой данные о снимках; например, типичные поля данных включают: Я не знаю. Цена открытия, максимальная цена, минимальная цена, последняя цена, количество сделок, количество сделок Я не знаю. Здесь максимальная цена - это самая высокая цена, с которой произошла транзакция с момента открытия с момента открытия. Предположим, что у вас есть подробная информация о каждой транзакции. Фактически, данные могут быть вычислены с помощью max (min), поэтому в зарубежных данных обычно нет этого поля. Я не знаю. В настоящее время существуют три вида реального времени торговли, предоставляемых биржами и ценными бумагами: оперативные и расчетные сделки и поручения. Я не знаю. Снимок - это фотография рынка каждые 3 секунды, а затем рассылка фотографий текущих цен, максимумов, минимумов, объемов сделок и сумм сделок. Поскольку фотография происходит каждые 3 секунды, мы не знаем, что происходит на рынке в течение этих 3 секунд. Я не знаю. Сделка по купюре - это сделка на атом в реальном времени. Однако данные также отправляются за 3 секунды, и не в реальном времени. Я не знаю. Данные заказчиков, в которых только один из 50 лучших покупателей и продавцов на уровне 2, но не все заказчики. (Этот пост был скомпилирован количественным трейдером WeChat id:quantcity)
**典型的有几类原因导致数据的差异**
- **1. 数据记录方式**
Например, если вы хотите, чтобы биржа публиковала файл с данными уровня 1, в котором записываются последние данные о состоянии всех ценных бумаг, то файл с данными постоянно обновляется. Так что поставщик данных или человек, записывающий данные, должен читать этот файл каждые несколько минут, а затем вводить все данные в базу данных. Но поскольку частота обновления данных биржей не является единственной, чтобы не пропустить данные, лучше всего читать их чаще, чем обновлять их. Поскольку существует такое правило, то вы видите, что некоторые неактивные ценные бумаги имеют меньше данных, чем активные ценные бумаги, что долгосрочные фьючерсы имеют меньше данных, чем недавние, и так далее.
- **2. 运维问题**
Никто не может гарантировать, что вы не отключите сеть. В случае отключения сети, ошибки машины, ошибки программы и т. д. вы пропустите передачу данных биржи. Согласно вышеупомянутому механизму данных, на самом деле нет никакой логической связи между моментами T и T+1 данных уровня 1, предположим, что отсутствие невозможно обнаружить из самих данных.
- **3. 程序导致的数据错误**
Некоторые более необычные ошибки, например, что цены некоторых типов акций становятся необычными, пустыми и т. д., могут быть вызваны ошибкой в процедуре записи данных. Почему это происходит? Таким образом, в принципе трудно иметь 100% достоверные данные, проверка и очистка данных необходимы, это скучно, установление правил также зависит от личного опыта.