Gambar profil penulis

@julian-molina. dllJulian Molina

Salah satu pendiri Superalgos.org, sebuah proyek sumber terbuka yang membangun Intelijen Perdagangan Kolektif.

Perdagangan algoritmik adalah aplikasi berbasis data. Ini adalah kemampuan untuk memperoleh kecerdasan dari info – di atas segalanya – yang memberikan pendekatan ilmu data yang diperlukan dalam perdagangan sistematis keunggulan atas pendekatan intuitif yang terkait dengan perdagangan diskresioner.

Namun, akan keliru – sederhana – untuk mengasumsikan bahwa intelijen perdagangan muncul dari ilmu information saja.

Kecerdasan perdagangan muncul dari pemanfaatan interaksi berbagai konsep kompleks, dan dengan demikian, pendekatan holistik sangat penting.

Memahami konsep yang terlibat dalam perdagangan – dan interaksinya – harus menjadi persyaratan pertama dan terpenting saat memulai proyek otomatisasi perdagangan. Yang kedua adalah infrastruktur perangkat lunak yang berkontribusi untuk memanfaatkan konsep tersebut.

Artikel ini merangkum pengalaman lapangan selama tiga tahun dari penulis dan mitranya. Ini berorientasi pada pengembang, ilmuwan information, dan pedagang yang mempertimbangkan untuk memasuki bidang perdagangan algoritmik.

Dalam artikel ini, saya memecah apa yang diperlukan agar intelijen perdagangan muncul, dengan wawasan yang disaring dari ribuan jam yang dihabiskan untuk mencoba berbagai pendekatan. Saya membongkar pelajaran yang didapat dalam proses mengembangkan infrastruktur otomatisasi perdagangan grup dan menjelaskan alat-alat untuk bersumber terbuka untuk komunitas di sepanjang jalan.

Disambiguasi

Mari kita mulai dengan menyetujui arti dari tiga istilah yang sering digunakan secara longgar dalam literatur, yang cenderung menyebabkan kebingungan.

SEBUAH sistem perdagangan adalah kerangka kerja untuk menangani logika tingkat rendah yang berfungsi untuk menyusun proses dan metode yang digunakan untuk menerapkan dan menerapkan strategi perdagangan.

SEBUAH strategi perdagangan adalah deskripsi dari serangkaian tindakan atau peristiwa yang dijalankan secara bertahap. Peristiwa dipicu pada validasi kondisi tepat yang menggambarkan situasi pasar tertentu. Strategi perdagangan dirancang untuk mencapai tujuan tertentu dalam rencana sistem perdagangan yang lebih luas melalui pengambilan dan pengelolaan posisi.

SEBUAH bot perdagangan adalah application komputer yang, berdasarkan kumpulan data yang tersedia, menerapkan logika perdagangan yang ditentukan dalam strategi perdagangan saat menjalankan perdagangan
sesi. Sesi tersebut mungkin sesi pengujian yang mungkin melibatkan simulasi, atau mungkin sesi perdagangan langsung yang melibatkan penempatan dan pengelolaan pesanan nyata di bursa.

Pemandangan Mata Burung

Secara umum, strategi perdagangan menampilkan serangkaian instruksi yang tujuannya adalah membuat keputusan perdagangan berdasarkan analisis information pasar. Oleh karena itu, kualitas logika perdagangan terkait erat dengan kemampuan analisis data.

Mari fokus pada logika perdagangan yang diprogram manusia terlebih dahulu dan tinggalkan penerapan AI untuk artikel mendatang.

Ide perdagangan muncul dari analisis information dan visualisasi data.

Untuk membuat aturan kapan harus menjual atau membeli aset, pedagang perlu merumuskan hipotesis berdasarkan ide perdagangan. Salah satu ranah paling populer dari ide perdagangan berasal dari apa yang dikenal sebagai analisis teknis.

Sementara pasar mungkin dianggap oleh beberapa orang berperilaku stokastik, sebagian besar pedagang percaya bahwa psikologi manusia membuat keputusan perdagangan memengaruhi perilaku pasar. Karena manusia cenderung didorong (atau setidaknya dipengaruhi) oleh emosi seperti ketakutan atau keserakahan, mereka cenderung bereaksi dengan cara yang dapat diprediksi saat terkena rangsangan lingkungan. Di satu sisi, pedagang percaya bahwa ini mengarah pada pola yang muncul dalam pergerakan harga (aset) balau kacau balau.

Tentu ada kekuatan lain yang mempengaruhi harga, dan itu dapat mengakibatkan munculnya pola pada skala waktu yang berbeda, seperti prinsip mikro dan makroekonomi yang mempengaruhi pasar tertentu, penawaran dan permintaan, interaksi dengan pasar lain, politik worldwide, basic aset, dan seterusnya. Ini adalah beberapa put variabel dan tidak terbatas yang mempengaruhi pasar yang membuatnya begitu kompleks dan tidak mungkin untuk diketahui.

Karena perdagangan algoritmik adalah aplikasi yang digerakkan oleh information, dan karena logika perdagangan yang diprogram manusia sebagian besar berasal dari pengamatan pola, kita dapat menyimpulkan bahwa visualisasi information juga merupakan komponen penting. Ada alasan mengapa pedagang diskresioner menghabiskan waktu berjam-jam menatap grafik pasar: untuk membuat keputusan perdagangan berdasarkan apa yang mereka lihat. Sebagai pedagang algoritmik, Anda juga menghabiskan waktu di grafik – sebagian kecil dari apa yang pedagang tradisional akan lakukan – kecil dalam kasus Anda, untuk menghasilkan ide perdagangan yang kemudian Anda terapkan sebagai aturan dalam strategi perdagangan Anda.

Strategi perdagangan dihasilkan dari implementasi, pengujian, dan penyetelan ide perdagangan.

Setelah ide perdagangan dijelaskan sebagai seperangkat aturan, Anda perlu menguji strategi Anda dan melihat bagaimana kinerjanya di atas information historis – apa yang kami sebut backtesting – dan melalui information feed langsung – atau yang kami sebut perdagangan kertas.

Pengujian strategi perdagangan adalah aspek penting dari perdagangan sistematis, karena ketepatan dan keandalan pengujian secara langsung memengaruhi bagaimana pengujian memetakan dengan kenyataan. Agar pengujian Anda memiliki nilai yang memprediksi kinerja perdagangan langsung, mereka perlu mempertimbangkan cara kerja perdagangan langsung dan semua variabel yang memengaruhi sesi perdagangan langsung – misalnya, biaya pertukaran dan kelicinan, yaitu, perbedaan antara tarif di mana pesanan ditempatkan dan tarif di mana pesanan sebenarnya dipenuhi oleh mesin pencocokan pesanan bursa.

Kinerja perdagangan langsung muncul dari penerapan best strategi perdagangan otomatis.

Penerapan strategi otomatis dalam sesi perdagangan langsung sebanding dengan aplikasi keuangan penting yang menangani uang sungguhan. Bot perdagangan harus kuat dan harus melalui pengujian substansial dan QA untuk dipercaya.

Ini juga harus fleksibel dan menampilkan fungsionalitas untuk melacak aktivitas strategi, seperti menyimpan akun, menyediakan kapasitas untuk mengelola, memindahkan, atau membatalkan pesanan, dan sebagainya.

Kami akan membahas pertimbangan lain nanti. Untuk saat ini, perlu dicatat bahwa perdagangan algoritmik memerlukan sedikit infrastruktur.

Memanfaatkan Konsep Kunci

Seperti yang terlihat dari bagian Bird&ada 39;s Eye View, ada infrastruktur perangkat lunak substansial yang diperlukan untuk merancang, menguji, dan menerapkan strategi perdagangan secara andal. Mari kita tinjau secara singkat fitur terpenting dari infrastruktur tersebut, yang akan kami sebut sebagai peron dari sekarang.

Konektivitas pertukaran

Pertukaran Crypto masuk dan keluar dari kepentingan publik sepanjang waktu. Ketika kami pertama kali mulai mengerjakan bot perdagangan, Poloniex berada di puncak rantai makanan. Beberapa bulan kemudian, pada saat infrastruktur kami berada di a
tahap alpha yang dapat digunakan, Poloniex tidak terlihat di daftar 20 bursa teratas.

Alasan mengapa perdagangan di bursa populer itu penting adalah karena hanya bursa populer yang dapat menawarkan likuiditas yang tepat, yaitu, quantity penawaran (pesanan beli) dan permintaan (pesanan jual) yang cukup di buku pesanan untuk menjamin bahwa tidak ada pesanan tunggal yang mempengaruhi harga secara signifikan.

Anda tidak ingin berkomitmen pada pertukaran tertentu apa pun. Paling tidak, platform Anda harus dapat terhubung dengan lebih dari satu bursa populer. Ini sangat penting jika Anda ingin memanfaatkan ketidakefisienan bursa, misalnya, menentukan apakah bursa tertentu menyebabkan pergerakan harga yang besar dalam kaitannya dengan bursa lain.

Pertukaran mengekspos API, yang dapat berkembang dan berubah seiring waktu. Mempertahankan konektor yang berbeda merupakan tantangan jangka panjang.

Platform Anda harus dapat menangani semua jenis masalah konektivitas dan menjamin integritas information yang diekstrak dari bursa – dan transaksi – setiap saat.

Konektivitas melalui net rumit untuk aplikasi yang sangat penting. Ada banyak sekali masalah yang muncul secara teratur yang dapat merusak, menunda, atau merusak interaksi Anda dengan bursa, di tingkat aplikasi, di tingkat jaringan, di API bursa dan tingkat sistem inner, dan di mana-mana di antaranya.

Penambangan information

Anda membutuhkan information pasar yang andal untuk menguji implementasi ide perdagangan dan untuk membuat keputusan perdagangan. Ini berarti Anda perlu menangani kumpulan information historis dan umpan information langsung dari bursa.

Pertukaran melayani perdagangan mentah atau information lilin dalam potongan kecil. Anda ingin memiliki akses ke riwayat pasar yang lengkap sehingga Anda dapat menerapkan studi statistik dan menggunakan indikator jangka panjang seperti rata-rata bergerak.

Satu lubang dalam kumpulan information dapat membelokkan analisis information Anda dengan cara yang tidak terduga, sehingga proses untuk mengekstrak information dari pertukaran dan membangun kumpulan information Anda harus antipeluru.

Information pasar mentah adalah titik awal untuk berbagai transformasi yang perlu Anda lakukan untuk mencari pola, korelasi, dan peluang perdagangan.

Platform Anda harus menyediakan studi analisis teknis yang khas, tetapi juga harus menyediakan alat untuk membangunnya sendiri.

Itulah yang mungkin membedakan kecerdasan yang mungkin dapat Anda saring
dari information dari apa yang tersedia untuk pedagang umum.

Visualisasi information

Manusia adalah makhluk visual. Sementara otak kita tertutup kotak hitam,
mereka telah mengembangkan detector untuk memahami lingkungan dan mengirimkan benda berharga
information untuk diinterpretasikan oleh sistem saraf pusat. Visi adalah detector utama kami.

Algoritme pandai mengolah angka, tetapi sebagai manusia, Anda sangat diuntungkan karena dapat memvisualisasikan data. Andalah yang perlu menemukan inspirasi dalam information untuk menghasilkan ide perdagangan.

Memvisualisasikan information adalah kunci untuk mengembangkan ide perdagangan. Platform Anda akan mendapat manfaat dari sistem bagan terintegrasi untuk memaksimalkan data.

Skenario kasus yang perfect akan menghitung dengan fitur yang memungkinkan storyline semua jenis information di atas grafik pasar yang khas, di mana Anda dapat membandingkan kumpulan information untuk menemukan petunjuk visual yang mungkin terlewatkan oleh algoritme.

Pengujian strategi

Anda harus dapat menguji ulang algoritme Anda dengan mulus pada kumpulan information historis. Anda juga ingin dapat menguji strategi ke depan dengan information langsung, baik tanpa menempatkan pesanan aktual di bursa – disebut perdagangan kertas – dan menempatkan pesanan nyata dengan sebagian kecil dari modal Anda – yang disebut pengujian maju.

Baik kinerja backtest maupun kinerja forwards evaluation tidak akurat
prediktor kinerja masa depan, tetapi jika strategi Anda tidak berhasil dalam pengujian, tidak masuk akal untuk mempercayai mereka dengan modal Anda untuk berdagang secara langsung.

Bot perdagangan harus dapat mensimulasikan perdagangan langsung seakurat
mungkin saat backtesting dan perdagangan kertas. Itu perlu mensimulasikan peristiwa pertukaran seperti pengisian pesanan, yang mencakup nuansa pelacakan pesanan dan administrasi yang dijelaskan selanjutnya dalam artikel ini di bawah bagian Manajemen Pesanan. Semakin menyerupai simulasi kenyataan, semakin besar kemungkinan mereka memprediksi kinerja perdagangan langsung.

Itu adalah fungsi pengujian dasar yang diperlukan sebelum Anda menerapkan strategi Anda untuk berdagang secara langsung. Namun, ada fitur system yang lebih canggih yang mungkin berdampak besar pada kinerja strategi Anda. Beberapa di antaranya berguna pada tahap awal, selama fase perancangan strategi dan penyetelan.

Seperti, misalnya, kemampuan untuk menganalisis perilaku strategi tidak hanya pada laporan kinerja backtest terkonsolidasi, tetapi juga pada simulasi grafis berbasis each perdagangan, langsung di atas grafik.

Pada gambar di atas, tiga posisi berurutan disimulasikan yang menggambarkan peristiwa masuk dan keluar, serta goal make profit dan stop reduction dinamis. Fitur semacam ini memungkinkan analisis granular aturan perdagangan dan membawa penyesuaian dan pengoptimalan ke degree berikutnya.

Demikian pula, menghitung dengan solusi debugging strategi yang kuat sangat diinginkan. Sangat penting untuk memiliki akses ke informasi runtime yang diproses oleh bot perdagangan setiap saat untuk dengan mudah mendeteksi potensi kekurangan definisi aturan.

Manajemen pesanan

Penempatan pesanan sekilas mungkin tampak seperti masalah sederhana. Namun, bot perdagangan harus memberikan kecerdasan yang cukup untuk melacak dan
mengelola perintah juga.

Pesanan dapat diisi dengan harga yang berbeda, dapat diisi secara bertahap selama periode waktu tertentu, atau mungkin tidak dipenuhi sama sekali. Setiap kali pesanan terisi sebagian, pertukaran membebankan biaya pada bagian yang diisi, yang perlu diperhitungkan. Tingkat di mana pesanan mengisi mungkin bukan tingkat yang diharapkan algoritma Anda karena berbagai alasan, termasuk selip, pembulatan tempat desimal, dll. Semua kejadian ini harus ditangani oleh bot perdagangan sehingga sesi perdagangan disinkronkan dengan apa yang terjadi di pertukaran.

Selain itu, bot perdagangan harus melakukan setidaknya beberapa pembukuan dasar untuk melacak saldo sehingga sesi perdagangan dapat menggunakan dengan benar dialokasikan dengan benar.

Penerapan yang skalabel

Salah satu keuntungan utama dari perdagangan otomatis dibandingkan perdagangan guide adalah kemampuan untuk bekerja dengan jumlah strategi yang hampir tidak terbatas. Dalam tahap yang dikembangkan, operasi Anda mungkin terdiri dari beberapa strategi yang berjalan di banyak pasar di berbagai bursa. Untuk mewujudkan kemampuan itu, Anda memerlukan infrastruktur perangkat lunak untuk mengoordinasikan penggunaan sumber daya.

Penggunaan sumber daya yang efektif juga membentuk intelijen perdagangan.

Gambar di atas menunjukkan penerapan beberapa tugas terkoordinasi di beberapa mesin

Platform Anda harus dapat mengoordinasikan penerapan tugas penambangan info dan perdagangan di berbagai mesin yang berbeda sehingga operasi dapat berskala saat Anda maju dalam produksi strategi.

Koordinasi harus efektif sehingga strategi yang berjalan di pasar dan pertukaran yang sama dapat berbagi sumber data yang sama.

Skalabilitas infrastruktur

Platform otomasi perdagangan yang dirancang untuk berhasil dalam perdagangan harus dapat memenuhi berbagai pendekatan untuk menemukan dan memanfaatkan peluang perdagangan. Konsep utama yang dijelaskan sebelumnya membentuk infrastruktur yang kokoh yang cocok untuk analisis teknis, analisis statistik, analisis sentimen, dan hampir semua pendekatan berdasarkan penggalian data.

Di mana saya memulai? )

Ada banyak cara untuk mendekati prospek memasuki perdagangan kripto algoritmik. Pertanyaan pertama yang harus diselesaikan berkaitan dengan tujuan: Apa tujuan Anda?

Jika semua yang ingin Anda lakukan adalah menguji keterampilan Anda, mencobanya, dan melihat bagaimana kelanjutannya, Anda mungkin tidak perlu mengkhawatirkan apa pun yang telah Anda baca di artikel ini.

Tanggapi artikel ini dengan serius jika tujuan Anda adalah berhasil dalam perdagangan algoritmik. Sukses berarti mencapai kinerja perdagangan yang positif dan andal. Dalam istilah orang awam, kesuksesan membutuhkan menghasilkan uang – secara konsisten.

Untungnya, untuk memanfaatkan konsep utama yang mendorong munculnya kecerdasan perdagangan, Anda tidak perlu membangun sendiri seluruh infrastruktur. Sebenarnya, akan masuk akal dan bahkan diinginkan untuk menghindarinya.

Pengkodean, penyetelan, dan menstabilkan infrastruktur yang begitu luas mungkin membutuhkan kerja bertahun-tahun dari pengembang mature; seperti itulah tingkat kerumitan yang diperlukan. Sebaliknya, Anda dapat menggunakan dan berkontribusi pada alat open-source atau seluruh platform.

Fokus Anda haruslah menghasilkan information exploration yang mengarah pada munculnya ide-ide perdagangan dan mengimplementasikan ide-ide itu ke dalam strategi perdagangan. Tidak hanya itu bagian menyenangkan dari perdagangan algoritmik tetapi juga yang menentukan apakah upaya Anda menghasilkan kinerja yang positif dan andal atau tidak, semua hal lain dianggap biasa saja.

Jika Anda ingin fokus pada pengembangan intelijen perdagangan daripada infrastruktur, maka langkah selanjutnya adalah mensurvei stage perdagangan algoritmik sumber terbuka yang ada, mencari yang paling sesuai dengan kebutuhan Anda.

Jangan ragu untuk melihat kami Repositori GitHub dan lihat apakah yang kami kembangkan bermanfaat bagi Anda. Kami telah merilis semua pekerjaan kami di bawah Lisensi Apache 2.0.

Berasal dari dunia kripto, saya bahkan tidak akan mempertimbangkan untuk mempercayakan strategi saya kepada entitas perusahaan yang dapat mengubah persyaratan layanan, kebijakan komersial, version bisnis, atau bahkan menolak akses kapan saja. Dan itu bukanlah masalah yang ringan. Skenario terburuknya adalah perusahaan berubah menjadi jahat yang menggunakan pengetahuan tentang strategi Anda untuk menjalankannya di depan, atau bahkan menjualnya tanpa Anda sadari. Perangkat lunak sumber terbuka menyelesaikan semua masalah itu.

Juga diterbitkan pada https://medium.com/better-programming/crypto-trading-bots-and-the-emergence-of-trading-intelligence-27104e7cbf84