Apa itu Ujian Balik? Cara menguji strategi perdagangan crypto

>

Pengenalan kepada Ujian Balik

Backtesting adalah simulasi matematik yang digunakan oleh peniaga untuk menilai prestasi strategi perdagangan. Simulasi memanfaatkan data sejarah pasaran dalam usaha untuk mengira seberapa baik strategi perdagangan yang akan dilakukan pada masa lalu.

Pada intinya, pengujian semula adalah cara bagi peniaga untuk mencuba meramalkan apakah strategi akan menguntungkan atau tidak apabila dilaksanakan dengan modal sebenar. Pedagang menggunakan ujian semula untuk menyaring sebarang strategi yang tidak menguntungkan secara sejarah.

Walaupun prestasi sejarah tidak menjamin hasil masa depan, pengujian semula masih merupakan kaedah yang paling dipercayai untuk mengenal pasti strategi yang mantap. Adalah perlu untuk mengkaji simulasi ini untuk menyaring strategi yang jelas berprestasi. Dengan begitu, kita mempunyai peluang terbaik untuk menjana wang dan tidak perlu menguji strategi dengan dana sebenar.

Oleh kerana alat perdagangan cryptocurrency menjadi lebih popular, begitu juga dengan pengujian semula. Hari ini, disarankan agar pedagang menguji setiap strategi secara menyeluruh sebelum melepaskannya ke pasaran crypto liar. Dengan cara itu kita dapat memperoleh keyakinan bahawa strategi tersebut berpotensi untuk berkinerja optimal.

Kajian Backtest Untuk Pengukuhan Semula

Kajian ini menilai keberkesanan pelbagai strategi pengimbangan semula untuk menentukan konfigurasi terbaik sejarah.

Keperluan Data Ujian Balik

Sebelum kita dapat memulakan strategi pengujian semula, kita mesti memahami pelbagai jenis data yang digunakan pembangun untuk membina alat pengujian semula dan bagaimana mereka masing-masing mewakili pasaran dunia nyata.

Data Candlestick

Cara yang paling biasa untuk melaksanakan alat pengujian semula adalah untuk pembangun menggunakan data candlestick OHLCV. Sebab kebanyakan pembangun menggunakan data ini adalah kerana tersedia.

Sayangnya, walaupun data paling mudah diakses untuk membina alat ini, itu adalah data yang paling tidak boleh dipercayai. Sebenarnya, menggunakan data candlestick OHLCV untuk menjalankan ujian belakang boleh menjadi perbezaan antara membina strategi yang menguntungkan dan kehilangan wang anda.

Keadaan menjadi lebih teruk apabila peniaga menggunakan data kandil gabungan dari sumber seperti CoinMarketCap. Data gabungan bukanlah representasi yang sah dari pesanan sebenar yang tersedia di bursa tertentu pada masa itu.

Jangan gunakan data kandil untuk membina alat pengujian semula.

Data Perdagangan Tick-by-Tick

Data perdagangan tick-by-tick boleh menjadi komponen berguna untuk alat pengujian semula sejarah. Perdagangan centang individu adalah perdagangan tepat yang dilaksanakan di bursa pada setiap saat. Perdagangan individu ini mewakili pesanan sebenar yang telah diisi, jadi kami tahu pasti bahawa ada pesanan terbuka yang tersedia pada harga tersebut di bursa.

Walaupun data perdagangan centang dapat menjadi aspek yang kuat dalam perkhidmatan pengujian semula, data tersebut hanya akan sedikit lebih tepat daripada data kandil OHLCV. Titik data perdagangan individu tidak memberikan maklumat mengenai keadaan buku pesanan pada masa perdagangan. Akibatnya, pengembang tidak dapat menilai dengan tepat pesanan apa yang akan tersedia di bursa pada saat yang tepat ketika perdagangan simulasi dijalankan.

Menggunakan data perdagangan tick-by-tick untuk alat pengujian semula tidak digalakkan.

Data Ringkasan Buku Pesanan

Jenis data terakhir yang biasa digunakan dalam alat ujian semula adalah snapshot buku pesanan. Snapshot buku pesanan memberikan keadaan pasaran yang tepat pada masa snapshot. Tujuannya adalah untuk memiliki gambaran penuh mengenai pesanan apa yang tersedia di bursa pada waktu tertentu.

Semasa membina alat pengujian semula, ini adalah jenis data yang paling kuat untuk digunakan. Oleh kerana data termasuk pesanan tepat yang tersedia pada saat perdagangan disimulasikan, kita dapat menghitung perdagangan yang tepat yang dapat kita lakukan dan harga setiap perdagangan tersebut.

Tangkapan buku pesanan membolehkan pemaju mensimulasikan kesan penyebaran, permintaan, dan kecairan bid-ask.

Tangkapan gambar pesanan sangat disyorkan sebagai jenis data untuk alat ujian semula.

Sumber data

Sumber utama untuk data buku pesanan adalah setiap pertukaran kripto individu itu sendiri. Dalam kebanyakan kes, data ini disiarkan secara langsung melalui soket web bursa. Namun, kerana jumlah data yang banyak, pertukaran biasanya tidak menyimpan data ini untuk jangka masa panjang. Ini bermaksud setelah data dihantar melalui soket web bursa, data akan hilang selamanya.

Kecuali, tentu saja, seseorang mengumpulkan data dari bursa dan membuatnya tersedia melalui perkhidmatan pihak ketiga. Di sinilah penyedia data memasukkan gambar. Penyedia data pada dasarnya adalah syarikat yang mengumpulkan data di setiap bursa dan menyimpannya sehingga orang lain dapat mengaksesnya kemudian.

Penyedia data untuk snapshot buku pesanan sejarah adalah sedikit dan jauh. Oleh kerana bekalan data ini terhad, pembangun menggunakan set data alternatif, seperti candlestick OHCLV, yang boleh menyebabkan ketidaktepatan untuk ujian belakang. Hasilnya, kebanyakan alat pengujian semula yang terdapat di pasaran hari ini menggambarkan prestasi strategi secara salah.

Selepas perkongsian baru-baru ini antara Udang dan Kaiko, Shrimpy kini dapat menawarkan katalog sejarah lengkap snapshot buku pesanan di setiap pertukaran utama. Sejak tahun 2014, Kaiko telah mengumpulkan data perdagangan tick-by-tick, snapshot buku pesanan, dan candlestick OHLCV dengan teliti.

Pembangun boleh mengakses data ini melalui API Pembangun Shrimpy. Dengan menggunakan model harga on-demand yang sederhana, pelanggan dapat meminta snapshot di berbagai jangka masa, pasangan perdagangan, dan pertukaran.

Kaiko memberikan data yang paling tepat di pasaran. Kini, setiap pembangun dapat mengakses data Kaiko untuk mensimulasikan ujian belakang dengan tepat melalui Shrimpy API.

Skrip Python Untuk Buku Pesanan Sejarah

The API Pembangun Shrimpy menyediakan akses ke buku pesanan pertukaran sejarah. Tangkapan gambar setiap buku diambil pada selang 1 minit. Menggunakan Perpustakaan Shrimpy Python, kami akan memberikan contoh bagaimana pembangun dapat mengakses data sejarah dengan hanya beberapa baris kod.

Meniru Ujian Belakang

Gambar 1: Contoh buku pesanan untuk pasangan perdagangan ENJ-USDT.

Untuk mengira dengan tepat bagaimana strategi akan dilaksanakan, ujian belakang memerlukan nombor yang paling tepat. Beberapa faktor yang mesti dipertimbangkan semasa ujian belakang termasuk:

  • Yuran perdagangan pertukaran

  • Penyebaran bid-ask untuk pasangan perdagangan

  • Kerosakan pasaran pada buku pesanan

  • Masa untuk setiap perdagangan

Semasa mensimulasikan pembelian aset, kita mesti menggunakan harga permintaan pada buku pesanan. Sekiranya anda berada di bursa, harga permintaan terbaik adalah harga terendah yang ada di bursa bersedia menjual aset tersebut. Jangan lupa juga memperhitungkan yuran perdagangan dan kelewatan.

Dengan menggunakan buku pesanan dalam Gambar 1 sebagai contoh, mari kita bayangkan kita mahu membeli ENJ bernilai 1,500 USDT. Demi contoh ini, mari kita anggap buku pesanan ini adalah untuk Binance, yang mempunyai yuran perdagangan asas 0.1%.

Kami dapat mensimulasikan pembelian ENJ bernilai 1.500 USDT dengan menaikkan harga pesanan kami secara bertahap daripada buku pesanan sehingga kami membeli ENJ bernilai 1,500 USDT yang kami inginkan. Perdagangan berturut-turut yang akan kami laksanakan merangkumi yang berikut:

  1. Beli 1151.74904126 ENJ pada harga 0.20559424 USDT setiap satu = 236.97296881 USDT + 0.2369729 USDT dalam yuran (1262.79005829 USDT kiri)

  2. Beli 2559.954 ENJ pada harga 0.20640294 USDT setiap satu = 528.38203186 USDT + 0.52838203 USDT dalam yuran (733.8796444 USDT kiri)

  3. Beli 1992.51418976 ENJ pada harga 0.20659518 USDT setiap satu = 411.64382769 USDT + 0.41164382 USDT dalam yuran (321.82417288 USDT kiri)

  4. Beli 1555.85587451 ENJ pada harga 0.20663894 USDT setiap satu = 321.50267164 USDT + 0.32150267 USDT dalam yuran (0 USDT tersisa)

Perhatikan bahawa ada beberapa yang tersisa di buku pesanan yang tidak dapat kami beli pada harga 0.20663894. Jumlah yang tidak kami beli akan kekal di bursa untuk diambil oleh peserta pasaran lain.

Secara keseluruhan, kami membeli dengan tepat 7260.08410553 ENJ setelah semua perdagangan selesai. Sekiranya kami hanya menggunakan data candlestick OHLCV, anggaran kami mungkin akan jauh 7319.76112984. Ini adalah perbezaan hampir 60 ENJ atau hampir 1%. Nampaknya tidak banyak, tetapi peratusan kecil ini bertambah cepat jika kita mensimulasikan ratusan atau ribuan perdagangan.

Setelah simulasi perdagangan selesai, catat hasil pesanan supaya kami dapat menggunakan dana tersebut untuk berdagang ke aset lain kemudian di ujian belakang. Dengan menggunakan catatan perdagangan terperinci ini, kami dapat menyimpan catatan terperinci setiap perdagangan yang dibuat semasa ujian belakang. Log ini dapat digunakan untuk menghitung statistik tambahan seperti jumlah perdagangan yang kami laksanakan, berapa banyak perdagangan yang kami lakukan, dan frekuensi membeli atau menjual aset tertentu.

Hasil Prestasi

Mengira prestasi strategi adalah mudah. Yang perlu kita lakukan adalah mengira nilai portfolio kita pada awal ujian belakang dan membandingkannya dengan nilai portfolio kita pada akhir ujian belakang.

Nilai portfolio dikira dengan mengalikan jumlah setiap aset yang kita pegang dengan harga aset tersebut dan menjumlahkan nilai semua aset dalam portfolio.

Dengan melakukan pengiraan ini di awal ujian belakang dan sekali lagi di akhir ujian belakang, kita dapat memperoleh perubahan nilai untuk portfolio kita sepanjang ujian belakang.

Pengiraan prestasi kemudian boleh dilakukan dengan menggunakan persamaan:

Prestasi = [(Vf – Vi) / Vi] x 100

Di mana,

  • Vf adalah nilai akhir portfolio

  • Vi adalah nilai awal portfolio

  • Darabkan dengan 100 untuk menukar dari perpuluhan hingga peratusan

Perhatikan bahawa tujuan ujian belakang bukan hanya untuk mengoptimumkan prestasi. Pada dasarnya, hanya kerana strategi tertentu berkinerja baik dalam keadaan ujian belakang, itu tidak secara automatik bermaksud strategi yang baik. Kita juga mesti mempertimbangkan ketekalan dan keteguhan strategi.

Konsistensi Ujian Balik – Keupayaan untuk menghasilkan hasil yang serupa dalam tempoh sejarah yang berbeza dan keadaan pasaran yang berbeza-beza.

Kekukuhan Backtest – Keupayaan untuk menghasilkan hasil yang serupa walaupun perubahan kecil dilakukan pada parameter strategi.

Strategi tanpa ketahanan dapat melihat perubahan prestasi yang besar bahkan walaupun perubahan terkecil dilakukan pada parameter strategi. Begitu juga, strategi yang tidak konsisten kemungkinan akan mengalami hasil yang sangat berbeza ketika menguji jangka masa sejarah yang berbeza.

Dalam kes yang ideal, kami ingin menggunakan strategi yang dapat diuji semula pada jangka masa sejarah dan menghasilkan hasil yang serupa. Begitu juga, prestasi strategi kita tidak boleh mengalami perubahan besar ketika perubahan kecil dilakukan pada strategi.

Strategi tanpa ketekalan atau ketahanan boleh menyebabkan prestasi masa depan yang tidak dapat diramalkan. Sekiranya menguji kembali pelbagai jangka waktu dan konfigurasi sejarah untuk strategi kami menghasilkan hasil yang sangat berbeza, ini dapat menunjukkan bahawa strategi kami tidak dapat diramalkan. Dalam kes itu, memilih hanya satu konfigurasi atau tempoh pengujian semula untuk dinilai pada dasarnya akan mengatasi strategi dengan situasi tertentu. Hasil dari ujian backfit yang berlebihan tidak akan menjadi gambaran umum strategi.

Contoh strategi yang konsisten yang kami dapati adalah menyeimbangkan semula. Dalam sebilangan besar kes, mengimbangi prestasi yang lebih tinggi. Walaupun kita menyesuaikan tempoh keseimbangan semula dari 1 jam hingga 1 hari hingga 1 bulan.

Bendera Merah Backtest

Oleh kerana sifat pengujian semula teknikal, kadangkala sukar untuk mengenal pasti sama ada ujian belakang boleh dipercayai. Item bendera merah berikut akan membantu anda mengenal pasti apakah hasil ujian belakang adalah wajar. Ini bukan senarai yang luas, tetapi beberapa kes yang paling biasa.

  1. Prestasi meningkat selepas setiap perdagangan. Sekiranya prestasi meningkat secara konsisten, terutama setelah setiap perdagangan, ini dapat menunjukkan terdapat kesalahan pengiraan dalam logik perdagangan.

  2. Pertumbuhan dana secara eksponen yang konsisten. Apabila hasil prestasi backtest berkembang secara eksponensial dari masa ke masa, ini sering kali boleh menjadi hasil penggunaan candlesticks OHLCV untuk simulasi perdagangan atau menunjukkan kesalahan pengiraan yang merupakan peratusan.

  3. Strategi perdagangan frekuensi tinggi tidak menurun nilainya. Secara amnya, strategi yang memperdagangkan sejumlah besar akan kehilangan nilai kerana bayaran perdagangan. Sekiranya strategi perdagangan frekuensi tinggi tidak kehilangan nilai, ujian belakang mungkin tidak mempertimbangkan bayaran pertukaran.

  4. Pasaran kecairan rendah menunjukkan prestasi yang sama dengan pasaran mudah tunai tinggi. Cara mudah untuk mengesan jika alat pengujian semula menggunakan data candlestick OHLCV atau data agregat adalah dengan menjalankan strategi di pasaran dengan kecairan rendah yang biasanya mempunyai spread yang besar. Dagangan frekuensi tinggi di pasaran dengan kecairan rendah akan mengakibatkan kerugian portfolio yang besar.

  5. Menukar pertukaran tidak mempengaruhi hasil. Setiap pertukaran mempunyai kecairan dan yuran perdagangan yang berbeza. Semasa menguji strategi di bursa yang berbeza, anda harus mendapat hasil yang berbeza. Sekiranya anda mendapat hasil yang sama di bursa yang berbeza, itu menunjukkan alat pengujian semula menggunakan data gabungan dan tidak menggunakan yuran perdagangan yang betul untuk setiap pertukaran individu.

Sebelum menerima hasil ujian belakang pada nilai nominal, gunakan bendera merah ini untuk mengenal pasti masalah dengan perdagangan yang disimulasikan.

Kesimpulannya

Terdapat beberapa tema utama sepanjang artikel ini. Terutama, kami telah menunjukkan betapa sukarnya membina alat pengujian semula yang kuat. Namun, pada saat yang sama, kami dapat menggambarkan pentingnya menguji strategi sebelum menerapkan strategi secara langsung.

Langkah pertama untuk membangun strategi pengujian semula adalah dengan memiliki data berkualiti tinggi. Tanpa data buku pesanan berkualiti tinggi, hasilnya akan sangat tidak tepat. Pada akhirnya, membuat keputusan berdasarkan alat pengujian semula yang salah boleh menjadi mahal. Ini boleh menyebabkan kita mempunyai harapan yang tidak realistik untuk strategi yang memakan portfolio kita.

Semasa membuat alat pengujian semula, jangan lupa untuk mensimulasikan yuran perdagangan, slippage, dan spread bid-ask. Setiap aspek dari ujian belakang ini dapat membuat perbezaan yang besar. Membuang bahkan salah satu komponen ini dari ujian belakang boleh menjadi perbezaan antara strategi yang menguntungkan dan tidak menguntungkan.

Akhirnya, sebelum menerapkan strategi berdasarkan ujian belakang, teruskan ujian. Apabila anda fikir anda sudah selesai menguji, uji lagi. Daripada 100 ujian, jalankan 100,000 ujian. Ujian balik adalah kaedah terbaik untuk kita memahami tingkah laku strategi. Cuba buat hipotesis baru untuk strategi dan uji hipotesis tersebut untuk mengenal pasti strategi baru. Teruskan kitaran percubaan sehingga anda menemui strategi yang sesuai untuk anda.

SALINKAN PENIAGA TERBAIK DUNIA

Kini terdapat beribu-ribu peniaga aktif yang menguruskan portfolio mereka di Binance. Pedagang ini adalah beberapa peniaga yang paling maju dalam industri ini.

Bacaan Baik Tambahan

Cara Membuat Bot Perdagangan Crypto Menggunakan Python

Panduan untuk Pinjaman Crypto – Pemberi Pinjaman Teratas

Skrip untuk Harga Bitcoin Live Ticker (Menggunakan Websockets)

Pengecilan semula Ambang untuk Pengurusan Portfolio Crypto

Apa itu DeFi? Panduan Kewangan Terdesentralisasi

Platform Dagangan Sosial Kami

Udang adalah platform perdagangan sosial untuk cryptocurrency. Ia dirancang untuk kedua-dua peniaga profesional dan pemula untuk datang dan belajar mengenai industri kripto yang sedang berkembang. Pada Shrimpy, pengguna dapat menyalin portfolio dan strategi perdagangan pedagang lain.

Ikut kami Twitter dan Facebook untuk maklumat terkini, dan ajukan sebarang pertanyaan kepada komuniti aktif kami yang luar biasa di Telegram & Tidak setuju.

Terima kasih kerana berhenti!

Pasukan Udang

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me