Pengaturcaraan visual sentiasa menjadi matlamat aspirasi pembangun perisian, walaupun dalam bidang perdagangan kuantitatif. Kerana kaedah "apa yang anda lihat adalah apa yang anda dapatkan" dalam visualisasi mengurangkan ambang teknikal pembangunan pengaturcaraan dengan besar. Pengguna tidak perlu lagi berurusan dengan setumpuk kod yang membosankan. Mereka hanya menggunakan imaginasi dan pemikiran logik mereka untuk memberi tumpuan kepada perniagaan itu sendiri. Anda boleh mewujudkan program yang anda mahu.
Mari kita masuk ke dalam bidang pengaturcaraan visual strategi perdagangan kuantitatif bersama-sama!
Selepas log masuk kehttps://www.fmz.com, mendaftar akaun anda (jika anda sudah berdaftar, log masuk terus) dan klik: Dasbor -> Strategi -> Tambah Strategi.
Kita boleh lihat strategi visualisasi awal. Ia hanya digunakan untuk mengeluarkan maklumat aset akaun pertukaran yang dikonfigurasikan secara lalai (objek pertukaran pertama yang ditambah pada backtest atau robot). (Lihat gambar di bawah)
Anda boleh menyeret modul
Modul pengiraan akar kuadrat seperti ini mengeluarkan hasil pengiraan dari modul ini.
Seperti yang anda lihat, jika kedudukan parameter input lalai, nilai lalai 9 akan digunakan sebagai parameter input untuk mengira akar kuadrat 9.
Sudah tentu, jika anda ingin menggunakan modul pembolehubah sebagai parameter input, anda boleh menyambungkan modul pembolehubah ke kedudukan tenon (konkaf) secara langsung.
Anda boleh melihat bahawa terdapat banyak klasifikasi modul di sebelah kiri kawasan penyuntingan visual, dan terdapat banyak modul visual yang tersedia dalam setiap projek klasifikasi.
Terdapat 11 kategori.
Modul kegunaan:
Anda boleh memasukkan rentetan dalam modul teks, supaya apabila anda menjalankan modul Output Information, kandungan rentetan dalam modul teks akan dicetak.
Ujian semula:
Seperti kod bahasa JavaScript:
function main(){
Log("Hello, Blockly!")
}
Seperti kod bahasa JavaScript:
function main () {
Log("WeChat Push!@")
}
Begitu juga, dalam strategi JavaScript, fungsi utama melaksanakan fungsi membuang
function main () {
throw "The first sentence throws an exception to stop the program!"
}
Hasil ujian belakang:
Secara amnya, ia lebih banyak digunakan semasa debugging. Sebagai contoh, jika anda mahu program berhenti di bawah keadaan tertentu dan mencetak beberapa data pada masa itu untuk pemerhatian. Atau anda boleh meletakkan modul pengecualian dalam aliran kod di mana masalah mungkin berlaku, biarkan program melaporkan kesilapan, dan mencari beberapa kesilapan.
Seperti dalam strategi JavaScript:
function main () {
Sleep(1000 * 5)
}
Uji modul tidur:
Hasil ujian belakang:
Modul ini, sama seperti fungsi API LogProfit di FMZ Quant Trading Platform, yang mencetak log pulangan dan menarik lengkung pulangan mengikut parameter input secara automatik.
Contohnya:Pelaksanaan backtesting ditunjukkan dalam gambar di bawah:
Kod strategi JavaScript yang sepadan adalah seperti berikut:
function main () {
LogProfit(1)
Sleep(1000 * 5)
LogProfit(2)
Sleep(1000 * 5)
LogProfit(3)
Sleep(1000 * 5)
LogProfit(2)
Sleep(1000 * 5)
LogProfit(5)
}
Ia boleh dilampirkan di mana-mana kedudukan di mana anda mahu output maklumat balik.
Ujian:Hasil ujian belakang:
Kita dapat melihat bahawa kombinasi modul yang terdiri daripada
Pelaksanaan gelung setiap N saatPenggunaan modul ini pada dasarnya sama dengan modul gelung. Satu-satunya perbezaan adalah bahawa modul mempunyai tidur sendiri.
Pemprosesan ketepatanModul ini boleh digunakan apabila modul pembolehubah atau nilai nombor perlu mengawal ketepatan. Nilai nombor bahagian parameter input akan output sebagai nilai nombor tempat perpuluhan yang ditentukan mengikut tetapan.
Sebagai contoh, pemprosesan ketepatan dilakukan pada nilai 3.1415926535897.
Paparan ujian belakang:
Ia digunakan untuk membersihkan log. Sesetengah log boleh disimpan mengikut parameter input. Seperti dalam dokumen API:
LogReset()
Ia digunakan untuk membersihkan log pulangan. Sesetengah log boleh dikekalkan mengikut parameter input. Seperti dalam dokumen API:
LogProfitReset()
Seperti kod strategi JavaScript:
function main () {
Log(exchange.GetTicker().Last)
}
Pertama, kita mencipta modul pembolehubah yang dinamakan K-line.Kemudian kita mendapatkan data K-garis, menggunakan modul data K-garis untuk mendapatkannya, dan menetapkan nilai kepada modul pembolehubah:
Stempel masa bar K-line terakhir dicetak apabila backtest dijalankan.
Seperti kod strategi JavaScript:
function main () {
Log(exchange.GetDepth().Asks[0])
}
Seperti kod strategi JavaScript:
function main () {
Log(exchange.GetAccount().Stocks)
}
Hasil ujian belakang:
Seperti kod strategi JavaScript:
function main () {
Log(exchange.GetDepth().Asks[0].Price)
}
Ia juga boleh digunakan untuk mendapatkan atribut dalam maklumat pesanan yang dikembalikan oleh
Setelah belajar banyak, mari kita menggabungkan operasi lindung nilai, iaitu lindung nilai kedua-dua kontrak jangka pendek dan hadapan.
Kami membuat lindung nilai arbitraj positif, iaitu, membuka kontrak kedudukan pendek untuk kontrak hadapan, dan membuka kontrak kedudukan panjang untuk kontrak baru-baru ini.
Hasil ujian belakang:
Contoh strategi visualisasi:
https://www.fmz.com/strategy/121404 https://www.fmz.com/strategy/129895 https://www.fmz.com/strategy/123904 https://www.fmz.com/strategy/122318Untuk lebih banyak strategi, sila rujuk:https://www.fmz.com/square
Artikel lain dalam siri ini
- Modul Visualisasi untuk Membina Strategi Dagangan - mendalam (https://www.fmz.com/digest-topic/9509) - Modul Visualisasi untuk Membina Strategi Dagangan - Pemahaman Lanjutan (https://www.fmz.com/bbs-topic/9815)
Pemrograman membosankan boleh dengan mudah diselesaikan dengan blok bangunan.