Tick Data sendiri tidak misterius, karena bursa akan mengirimkan kepada Anda status order jual beli dari setiap saham (atau futures options) yang ada di dalam buku order aktif (yaitu, pesanan Anda masih ada di bursa tetapi tidak disintesis).
**举例说明:**
某天的市场一开始的时候苹果股票的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 data sangat sederhana, dan pasar akan mengulangi prosesnya.Tapi yang lebih menjengkelkan adalah:
- 1. banyak kali data tik akan dikirim dengan UDP, bayangkan di bursa saham jika transaksi sangat aktif, maka volume data yang sangat besar, UDP akan ada kehilangan paket, bagaimana menangani.
- 2. bagaimana cara mempercepat pemrosesan data tik secara real time, jika tidak, data yang sangat besar, sekali ditunda, Anda tidak akan bisa mengikuti irama tik secara real time lagi sampai program Anda hang.
- 3. bagaimana cara menghindari beberapa situasi khusus yang menyebabkan bug, jika satu tik tidak benar, maka semua tabel tik di belakangnya adalah salah:)
** Juga ada masalah pemahaman tentang tik: ada juga titik tik yang berbeda di berbagai pasar, seperti di atas, pasar saham negara maju, yang dipromosikan secara real-time. (Jika ada pesanan baru dan hanya ada 8 level tik yang dikirim di level tik, misalnya di bursa Tokyo, maka Anda tidak akan melihat full tick, karena mungkin ada lebih dari 100 level jika banyak orang yang berdagang). Berapa banyak mili detik untuk memotret sebuah snapshot, dan 3 detik untuk mengirimnya kepada Anda, mungkin sistem perdagangan domestik sudah sangat tua dan tidak dapat mengikuti perkembangan IT. Jadi data tik ini tidak real time, Anda hanya tahu ya!
(Artikel ini disusun secara komprehensif oleh pedagang kuantitatif WeChat id:quantcity..)
Untuk data tick frekuensi tinggi di luar negeri, ada proses data order yang lengkap, sehingga Anda dapat menggunakan data order ini untuk memulihkan data snapshot.
Dua saham dan empat futures terbesar di negara ini secara teori adalah data snapshot. Misalnya, bidang data khas meliputi: Apa yang terjadi? Harga awal, harga tertinggi, harga terendah, harga terbaru, volume transaksi, volume transaksi Apa yang terjadi? Harga terendah di sini adalah harga terendah yang pernah terjadi sejak awal transaksi hingga saat ini, asumsikan Anda memiliki detail detail setiap transaksi, sebenarnya data ini dapat diindikasikan dengan max, jadi data tik asing biasanya tidak memiliki bidang ini. Apa yang terjadi? Ada tiga jenis transaksi real time yang ditawarkan oleh Bursa Efek dan Perdagangan Sentral, yaitu transaksi instan dan transaksi dan penugasan secara berurutan. Apa yang terjadi? Snapshot adalah setiap 3 detik (dalam perdagangan besar, perdagangan tinggi adalah 5 detik) mengambil gambar pasar, dan kemudian mengirim foto pasar seperti harga saat ini, tertinggi, terendah, volume transaksi, jumlah transaksi. Karena foto setiap 3 detik, kita tidak tahu apa yang terjadi di pasar selama 3 detik ini. Waktu penawaran berturut-turut setiap hari adalah dua jam setiap sore. Apa yang terjadi? Transaksi per butir adalah transaksi per atom yang sebenarnya. Namun, data ini juga dikirim dalam jumlah 3 detik, dan bukan secara real time. Misalnya, transaksi yang terjadi pada 1,5 detik, hanya dikirim pada 3 detik. Apa yang terjadi? Di level 2 hanya ada 50 daftar teratas yang menjual satu, bukan semua daftar teratas. (Artikel ini disusun secara komprehensif oleh pedagang kuantitatif WeChat id:quantcity..)
**典型的有几类原因导致数据的差异**
- **1. 数据记录方式**
Sebagai contoh, misalnya, data Level 1 dari saham, sebuah bursa menerbitkan sebuah file dbf yang mencatat semua data status terbaru dari saham, dan file dbf itu terus-menerus diperbarui secara otomatis. Jadi penyedia data atau orang yang mencatat data perlu membaca file ini setiap beberapa saat, dan kemudian memasukkan semua data ke dalam database, tetapi karena bursa tidak memperbarui data dengan frekuensi yang unik, maka cara terbaik untuk tidak melewatkan data adalah Anda membaca lebih sering daripada dia memperbarui frekuensi. Masalahnya muncul karena Anda membaca banyak jika setiap kali data yang dicatat sangat besar, dan banyak yang berulang. Karena ada aturan seperti itu, maka Anda akan melihat beberapa data sekuritas yang tidak aktif diperdagangkan akan lebih sedikit daripada sekuritas yang aktif diperdagangkan, data berjangka panjang kurang dari yang baru-baru ini, masalah waktu yang tidak sejalan, dll.
- **2. 运维问题**
Tidak ada yang bisa menjamin tidak akan terputus. Jika terjadi gangguan jaringan, kesalahan mesin, kesalahan program, dll., Anda akan melewatkan pemutaran data pertukaran. Menurut mekanisme data yang disebutkan di atas, sebenarnya tidak ada hubungan logis untuk saat-saat T dan T + 1 data Level 1.
- **3. 程序导致的数据错误**
Beberapa kesalahan yang relatif tidak biasa, seperti harga saham tertentu yang tidak normal, kosong, dll, mungkin disebabkan oleh kesalahan dalam prosedur yang mencatat data. Mengapa itu terjadi? Ada banyak alasan, dan kita tahu itu bisa terjadi. Sebagian kecil adalah karena masalah pertukaran, misalnya, pertukaran pernah membuat kesalahan harga pembukaan data Level 2. Oleh karena itu, pada prinsipnya sulit untuk memiliki data yang dapat diandalkan 100%, pemeriksaan dan pembersihan data diperlukan, dan juga hal yang membosankan, pengaturan aturan juga tergantung pada pengalaman pribadi.