Đánh giá lượng: Dữ liệu Tick là gì và tại sao rất khó để tìm ra dữ liệu giao dịch đáng tin cậy?

Tác giả:Giấc mơ nhỏ, Tạo: 2016-11-02 19:33:56, Cập nhật: 2016-11-02 19:48:20

  • Thứ nhất, Tick Data là gì?

Tick Data tự nó không phải là bí ẩn, sàn giao dịch sẽ gửi cho bạn các lệnh mua hoặc bán trong sổ lệnh tích cực của mỗi cổ phiếu (hoặc tùy chọn tương lai).

**举例说明:**
  某天的市场一开始的时候苹果股票的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 dữ liệu đơn giản như vậy, và thị trường sẽ lặp lại quá trình này.Tuy nhiên, điều khó khăn hơn là:

- Nhiều lần dữ liệu tick sẽ được gửi bằng UDP, hãy tưởng tượng rằng trên thị trường chứng khoán nếu giao dịch rất hoạt động, số lượng dữ liệu sẽ rất lớn, UDP sẽ có trường hợp bị mất gói, làm thế nào để xử lý.

- 2. Làm thế nào để xử lý dữ liệu tick trong thời gian thực nhanh hơn, nếu không thì số lượng dữ liệu quá lớn, một khi bị trì hoãn, bạn sẽ không thể theo kịp nhịp độ tick trong thời gian thực nữa cho đến khi chương trình của bạn bị treo.

- 3. Làm thế nào để tránh một số tình huống đặc biệt gây ra lỗi, một khi một dấu chấm không được tính là đúng, thì bảng dấu chấm phía sau đều sai:)

** Cũng có một vấn đề về việc hiểu tick: tick của các thị trường khác nhau cũng có điểm khác nhau, trên nói đến thị trường chứng khoán của các nước phát triển, được đẩy theo tình hình thực tế (( có lệnh mới và chỉ có 8 tick được gửi trong cấp độ tick, ví dụ: sàn giao dịch Tokyo chỉ gửi 8 tick, bạn không thể thấy toàn bộ tick, vì có thể có hơn 100 cấp độ nếu nhiều người giao dịch)). Có thể là hệ thống giao dịch trong nước đã rất cũ và không theo kịp sự phát triển của IT. Vậy dữ liệu này không phải là tick real time, bạn chỉ biết wow!

(Bài viết này được biên soạn bởi nhà giao dịch định lượng WeChat id:quantcity)

  • Thứ hai: Những chi tiết về dữ liệu chụp ảnh và dữ liệu sàn giao dịch

Đối với dữ liệu tick tần số cao ở nước ngoài, có quá trình dữ liệu đặt hàng hoàn chỉnh, vì vậy bạn có thể sử dụng dữ liệu đặt hàng này để khôi phục dữ liệu chụp ảnh.

Hai cổ phiếu và bốn kỳ hạn lớn nhất trong nước về mặt lý thuyết là dữ liệu chụp ảnh; ví dụ, các trường dữ liệu điển hình bao gồm: Không. Giá mở cửa Giá cao nhất Giá thấp nhất Giá mới nhất Số lượng giao dịch Số lượng giao dịch Không. Giá thấp nhất ở đây là giá thấp nhất từ khi bắt đầu giao dịch cho đến nay, giả sử bạn có chi tiết chi tiết cho mỗi giao dịch, thực tế dữ liệu này có thể được suy đoán bằng max (min), vì vậy dữ liệu tick nước ngoài thường không có trường này. Không. Các giao dịch thực tế được cung cấp bởi sàn giao dịch và sàn giao dịch có ba loại, chụp ảnh và giao dịch và ủy thác theo từng khoản tiền. Không. Một bức ảnh chụp nhanh là chụp thị trường mỗi 3 giây một lần (trong giao dịch, giao dịch là 5 giây) và sau đó đưa ra những bức ảnh về giá hiện tại, giá cao nhất, giá thấp nhất, khối lượng giao dịch, số tiền giao dịch. Vì bức ảnh được chụp 3 giây một lần, chúng ta không biết thị trường sẽ xảy ra gì trong khoảng thời gian 3 giây này. Thời gian đấu giá liên tục mỗi ngày là 2 giờ mỗi buổi sáng, tổng cộng 4 giờ. Vì vậy, số lần chụp nhanh là 14.400/3 có lẽ là 3.800 lần. Không. Giao dịch từng ký tự là mỗi giao dịch nguyên tử thực. Tuy nhiên, dữ liệu này cũng được gửi một loạt 3 giây, cũng không phải là thời gian thực. Ví dụ: một giao dịch xảy ra trong 1,5 giây, chỉ được gửi đến 3 giây. Không. Số liệu đặt hàng được ủy quyền, chỉ có 50 đầu tiên mua và bán ở cấp độ 2, chứ không phải tất cả các danh sách. (Tác phẩm được biên soạn bởi nhà giao dịch định lượng WeChat:quantcity)

**典型的有几类原因导致数据的差异**
- **1. 数据记录方式**

Ví dụ, lấy dữ liệu cấp 1 của chứng khoán, một sàn giao dịch phát hành một tệp dbf ghi lại tất cả các dữ liệu trạng thái mới nhất của chứng khoán, tệp dbf được tự động cập nhật liên tục. Vì vậy, người cung cấp dữ liệu hoặc người ghi lại dữ liệu cần phải đọc tệp này mỗi khoảng thời gian và đưa tất cả dữ liệu vào cơ sở dữ liệu, nhưng vì tần suất dữ liệu được cập nhật bởi sàn giao dịch không phải là một giá trị duy nhất, vì vậy để không bỏ lỡ dữ liệu, cách tốt nhất là bạn đọc tần suất cao hơn tần suất cập nhật của anh ta. Bởi vì có một quy tắc như vậy, bạn sẽ thấy một số dữ liệu về các chứng khoán không hoạt động giao dịch ít hơn so với các chứng khoán đang hoạt động giao dịch, dữ liệu về tương lai dài hạn ít hơn so với gần đây, thời gian không đồng bộ, và nhiều vấn đề khác.

- **2. 运维问题**

Không ai có thể đảm bảo sẽ không bị ngắt mạng. Nếu xảy ra sự ngắt mạng, lỗi máy, lỗi chương trình, v.v., bạn sẽ bỏ lỡ việc phát dữ liệu của sàn giao dịch. Theo cơ chế dữ liệu đã đề cập ở trên, thực tế không có mối liên hệ hợp lý nào cho thời điểm T và T + 1 của dữ liệu cấp 1, giả sử bạn không thể phát hiện được từ dữ liệu chính nó, vì vậy rất nhiều sự thiếu sót thực sự là do tất cả các nguyên nhân này và không thể bù đắp được!

- **3. 程序导致的数据错误**

Một số lỗi khác thường hơn, chẳng hạn như giá của một số loại cổ phiếu xuất hiện bất thường, trống, v.v., có thể là do lỗi trong quy trình ghi dữ liệu. Tại sao xảy ra? Có nhiều lý do, chúng ta biết rằng nó có thể xảy ra. Một số ít là do vấn đề của sàn giao dịch, ví dụ, sàn giao dịch đã đưa ra giá khai mạc dữ liệu cấp 2 sai. Vì vậy, về nguyên tắc, rất khó có dữ liệu đáng tin cậy 100%, kiểm tra và làm sạch dữ liệu là điều cần thiết, cũng là một điều nhàm chán, việc thiết lập các quy tắc cũng phụ thuộc vào kinh nghiệm cá nhân.


Thêm nữa