Melalui bab-bab sebelumnya dari seri ini, saya percaya bahwa Anda pada dasarnya telah menguasai penggunaan berbagai jenis modul visualisasi. Dalam bab ini, kita menggunakan strategi sederhana namun menarik untuk membangun modul visualisasi.
Inti dari strategi ini adalah mengejar naik dan membunuh penurunan, dan memilih pasar spot mata uang digital, seperti BTC_USDT, sesuai dengan harga saat ini ketika strategi berjalan, jika harga meningkat sebesar persentase tertentu, beli sesuai dengan persentase tertentu dari aset saat ini (mata uang harga).
Sebelum membangun, kami menambahkan beberapa modul yang dapat digunakan kembali.
Seperti yang ditunjukkan pada gambar di atas:
Di kolom perpustakaan kelas, ada beberapa perpustakaan kelas yang dapat digunakan kembali, yang dapat digunakan setelah diperiksa. Perpustakaan perdagangan spot mata uang digital yang diperiksa adalah perpustakaan perdagangan yang digunakan di pasar spot mata uang digital, yang secara internal menangani logika kompleks mendeteksi dan mencoba kembali setelah pesanan ditempatkan (misalnya, bagaimana menangani tidak ada transaksi setelah menempatkan pesanan). Saat membangun strategi, itu menghemat banyak logika pemrosesan yang kompleks, yang sangat nyaman.
Karena ide strategi sangat sederhana, modul strategi tidak terlalu besar. Backtesting kami dimulai pada bulan Oktober 2018, dalam waktu kurang dari setahun, baik kejutan besar maupun kecil dan kutipan tren muncul, yang dapat menguji strategi secara awal. Parameter pengujian balik:
Mari kita lihat kinerja backtest dari strategi ini:
Strategi bahasa JavaScript yang setara juga dirilis di sini, dan seseorang yang tertarik dapat mempelajarinya. Melalui mempelajari strategi pembuatan modul visual, konsep strategi dan penggunaan berbagai antarmuka, sangat nyaman untuk memulai dengan perdagangan program. Strategi ini tidak memiliki parameter antarmuka lain, dan seseorang yang tertarik dapat mengoptimalkan dan memperluasnya.
function main() {
var basePrice = -1
var addRatio = 0.02
while (true) {
var ticker = exchange.GetTicker()
if (basePrice == -1) {
basePrice = ticker.Last
}
if ((ticker.Last - basePrice) > 0 && ((ticker.Last - basePrice) / basePrice > addRatio)) {
var acc = exchange.GetAccount()
var amount = acc.Balance * addRatio / ticker.Last
$.Buy(amount)
basePrice = ticker.Last
}
if ((ticker.Last - basePrice) < 0 && ((basePrice - ticker.Last) / basePrice > addRatio)) {
var acc = exchange.GetAccount()
var amount = acc.Stocks * addRatio
$.Sell(amount)
basePrice = ticker.Last
}
}
}
Aspek menarik dari strategi ini adalah bahwa aset akun ditetapkan untuk setara dengan mata uang dan nilai uang pada awalnya, seperti pasangan perdagangan BTC_USDT, harga BTC saat ini adalah 10000, mata uang akun dialokasikan ke 5, dan USDT dialokasikan ke 50000.
Strategi ini netral terhadap kondisi pasar, kenaikan dan penurunan harga. Cobalah untuk mengalokasikan lebih sedikit USDT dan lebih banyak mata uang. Misalnya:
Ada perubahan yang jelas dalam backtest.
Anda juga dapat mengatur lebih banyak USDT dan lebih sedikit mata uang.
Siapkan modul dan coba ide perdagangan program kita sendiri bersama.
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, silakan lihat:https://www.fmz.com/square
Artikel lain dalam seri ini
Pemrograman yang membosankan dapat dengan mudah diselesaikan dengan blok bangunan.