Senin kami melakukan hal yang bertanggung jawab. Agen punya strategi momentum pada perpetual USDT-M mid-cap, clip 25,000 USDT per trade, dan backtest pertama tanpa filter volume mengisi setiap sinyal seolah book-nya BTC. Jadi kami menambahkan gerbang buku teks: dua puluh bar 1 menit volume dolar harus melebihi dua puluh kali clip sebelum sebuah order boleh keluar. Dua puluh menit, setengah juta dolar tape. Koin itu mencetak sekitar $40 million di hari yang ramai. Filter-nya mempertahankan sebagian besar sinyal. Kurva ekuitas menjadi kurang bergerigi. Kami kirim ke paper.
Sebelas jam kemudian buy 25,000 USDT memakan 8,400 bid dan berhenti. Volume dua puluh bar pada menit itu adalah $1.14 million. Filter sudah bilang ya.
Senin: filter yang membuat kami merasa jujur
Catatan agen di pull request: "pemeriksaan kapasitas ditambahkan, notional 20×." Saya setujui. Saya pernah menyetujui kalimat itu sebelumnya. Itu jenis aturan yang Anda tulis setelah seseorang menunjukkan backtest yang memperdagangkan koin $4,000-OI dalam clip $50,000, dan semua orang di ruangan memasang muka, lalu Anda menambahkan kelipatan volume supaya itu tidak terjadi lagi.
Pada Senin aturan itu melakukan apa yang selalu dilakukannya dalam backtest. Ia membuang jam-jam mati. Ia mempertahankan jam ketika angka volume bursa sendiri terdengar nyaring. Turnover turun sekitar sepertiga. Rata-rata ukuran trade tetap 25,000 karena model fill-nya pengecut: ia mengambil seluruh clip di last-plus-beberapa-bps kapan pun gerbang terbuka. Tidak ada yang bertanya ke book apakah 25,000 benar-benar duduk di sana.
Saya masih bergidik ketika volume 24 jam sebuah koin adalah angka bulat di samping open interest yang tipis. Itu sisa dari 2021, ketika bot "market making" Discord adalah dua subakun yang saling trading dan menempelkan screenshot volume di #brag. Tape-nya tampak seperti pesta. Book-nya kardus. Saya bilang pada diri sendiri filter 20× pada bar 1 menit adalah cara keluar dari itu. Bukan. Itu cara merata-ratakan kardus menjadi angka yang lebih halus.
Selasa: paper, lalu sebuah sisa
Paper mulai ramah. Lima clip pertama terisi dalam 2–4 hop turun di ask. Jelek, tapi selesai. Lalu 14:07 UTC, sinyal long, 25,000 USDT, puncak book 1,100, level berikutnya 2,400, lalu udara. Kami dapat 8,400 terisi sebagai taker dan 16,600 resting. Empat puluh detik kemudian remainder di-cancel oleh time-in-force kami sendiri. Strategi mengira sudah long clip penuh. Akun hanya long sepertiga dari satu clip.
Tapi filter sudah bilang ya. Saya tarik bar-nya. Volume dolar dalam dua puluh menit sampai 14:07 adalah $1.14 million, nyaman di atas $500k. Kira-kira $380k dari $1.14 million itu adalah pasangan print: harga sama, size sama, flag aggressor berlawanan, terpisah 2–8 milidetik, dan size bid/ask di harga itu tidak bergeming. Trade-trade itu membayar fee satu sama lain. Mereka tidak menawarkan lubang 25,000 USDT kepada kami.
Rabu: mencocokkan tape dengan book
Rabu adalah hari yang lambat, yang lain kali akan saya anggarkan dua kali lebih lama. Kami mengambil lima hari kerja trade dan snapshot L2 pada perp yang sama, foto book 100ms, dan mengklasifikasikan setiap print terhadap book satu snapshot sebelumnya dan satu snapshot sesudahnya.
- Jika size di harga trade turun sekitar sebesar size trade, itu menyentuh book. Hitung.
- Jika buy dan sell berukuran sama tercetak di satu harga tanpa perubahan book, sebut wash dan buang dari angka kapasitas mana pun.
- Jika trade menembus beberapa level dan level-level itu menghilang, itu taker sungguhan. Hitung, dan jangan berpura-pura Anda juga bisa mengambil likuiditas itu; seseorang sudah melakukannya.
- Jika trade ditandai sebagai likuidasi, itu size sungguhan, dan itu size terakhir yang ingin Anda pakai sebagai bukti bahwa Anda bisa clip 25,000. Order paksa itu sedang balapan dengan Anda.
Snapshot-nya sedikit berbohong. Apa pun yang terisi dan terisi ulang dalam 100ms tampak seperti hantu, dan beberapa market-maker sungguhan melakukan cancel-replace secepat itu. Kami kemudian menyampel beberapa menit book 10ms dan porsi wash bergeser beberapa poin, bukan dengan faktor dua. Saya bisa hidup dengan beberapa poin. Saya tidak bisa hidup dengan memperlakukan ticker volume bursa sebagai sensus likuiditas.
AggTrades sudah menggabungkan satu taker yang mengenai beberapa maker di satu harga. Mereka tidak menggabungkan dua subakun yang sedang wash. Jika feed "bersih" Anda adalah aggregated trades, masalah ini tetap ada. Anda hanya memilikinya dengan lebih sedikit baris.
Dan volume 24 jam di API ticker adalah jumlah kotor yang sama, tertunda, itulah sebabnya agen riset menyukainya. Satu field. Selalu ada. Tampak seperti fitur. Itu statistik pemasaran yang kebetulan ada di protobuf market-data.
Kamis: seminggu dalam satu tabel
Lima sesi, clip yang sama, aturan 20× yang sama, model fill yang sama di backtest. Rasio fill paper adalah notional terisi dibagi notional yang dimaksud untuk order yang benar-benar kami kirim sesi itu. Paper Senin kosong karena kami masih di backtest.
| Sesi | Tape bursa | Penggerak book | Mirip wash | Print likuidasi | Filter bilang jalan | Fill paper |
|---|---|---|---|---|---|---|
| Sen | $38.4m | $22.6m | $13.5m | $2.3m | 41 / 48 sinyal | n/a |
| Sel | $41.1m | $24.2m | $15.2m | $1.7m | 36 / 40 | 0.61 |
| Rab | $29.6m | $20.1m | $8.1m | $1.4m | 22 / 31 | 0.77 |
| Kam | $44.8m | $25.6m | $17.4m | $1.8m | 39 / 44 | 0.54 |
| Jum | $33.2m | $22.3m | $9.4m | $1.5m | 28 / 35 | 0.71 |
Print mirip wash adalah 34% dari tape minggu itu. Mereka tidak tersebar merata. Kamis, sesi yang paling disukai filter asli, adalah yang paling kotor. Itu mode kegagalan yang saya pedulikan. Gerbang tidak hanya melebih-lebihkan likuiditas secara rata-rata. Ia terbuka lebih lebar pada hari bot wash bekerja, karena hari-hari itulah angka mentah tampak paling sehat.
Kami menjalankan ulang backtest hanya dengan volume penggerak book, kelipatan 20× yang sama. Sinyal turun dari 198 dalam seminggu menjadi 121. Banyak yang dibuang berada di jam-jam bergaya Kamis ketika tape nyaring dan puncak book 1,100 USDT. Sharpe asli memakai 198 fill penuh. Saya tidak akan mengutip yang baru seolah itu temuan tentang strategi. Itu temuan tentang model fill: begitu Anda berhenti memberikan 25,000 USDT di harga yang tidak ada di book, sepotong "edge" hanyalah order yang terselesaikan yang seharusnya menjadi remainder.
Jumat: apa yang benar-benar kami rilis, dan apa yang akan saya lewati
Gerbang yang kami pertahankan itu membosankan. Notional rolling penggerak book, dihitung hanya dari print yang mengambil size dari sebuah level, harus melewati 20× clip, dan kami ukur pada bar sebelum bar keputusan supaya wash menit berjalan tidak bisa memberi suara. Print likuidasi mendapat batas terpisah: jika lebih dari seperempat volume penggerak book terkini adalah likuidasi, strategi mundur. Aliran paksa adalah size sungguhan yang sedang balapan dengan Anda.
Impact mendapat diet yang sama. Model lama menyimpulkan Kyle lambda dari volume bursa dan clip kami. Beri ia wash dan lambda turun, karena pasar tampak dalam. Beri ia volume penggerak book dan clip yang sama adalah porsi jauh lebih besar dari apa yang benar-benar mengubah book. Slippage paper pada beberapa sesi berikutnya lebih dekat ke angka yang lebih jelek itu. Lebih dekat, bukan identik. Kami masih tidak melihat queue, dan foto 100ms masih melewatkan sebagian size sungguhan.
Yang akan saya lewati lain kali adalah seluruh Senin pertama. Jangan mulai dari ticker, jangan mulai dari volume 24 jam, jangan biarkan agen memasukkan volume dolar mentah ke feature store dan ke gerbang seolah itu dua ide. Itu satu seri kotor, dipakai dua kali. Bangun dulu tape yang konsisten dengan book, meski itu berarti Anda riset selama dua hari pada satu mid-cap sebelum punya universe. Universe yang difilter pada wash adalah daftar koin yang pandai terlihat ramai.
Yang lain dilewati: model fill apa pun yang memperlakukan lolos cek volume sebagai fill. Sisa Selasa itulah strateginya. Filter hanya bisa menjawab "apakah ada yang sedang trading." Ia tidak bisa menjawab "apakah 25,000 Anda akan rest atau hilang." Pertanyaan kedua itu butuh book, remainder, dan time-in-force, yang merupakan catatan harian berbeda, dan yang seharusnya kami tulis sebelum yang ini.
← Semua artikel


