Cryptocurrency Quantitative Trading for Beginners - Membawa Anda Lebih Dekat dengan Cryptocurrency Quantitative (4)

Penulis:Lydia, Dibuat: 2022-07-29 16:32:47, Diperbarui: 2023-09-21 21:05:29

img

Cryptocurrency Quantitative Trading for Beginners - Membawa Anda Lebih Dekat dengan Cryptocurrency Quantitative (4)

Dalam artikel sebelumnya, kita telah mempelajari konsep dasar dari begitu banyak cryptocurrency, pemrograman, dan perdagangan kuantitatif. Akhirnya, kita dapat beralih ke topik dan berbicara tentang strategi itu sendiri. Untuk Grid Strategy, seseorang yang telah melakukan perdagangan kuantitatif harus mendengarnya, tetapi tidak masalah jika Anda belum.pertukarantelah meluncurkan fungsi perdagangan programmatic dan kuantitatif mereka sendiri, dan strategi yang paling mudah dan mudah digunakan adalahstrategi jaringanNamun, fungsi strategi grid dan rincian yang diberikan oleh setiap bursa berbeda, karena kami berencana untuk pindah ke perdagangan kuantitatif cryptocurrency, mengapa tidak kami menerapkan strategi grid sendiri?

Pada saat ini, seseorang mungkin berkata: Aku tidak bisa menulis kode! Aku akan sakit kepala ketika aku melihat kode!

Itu benar. memang sangat sulit bagi seseorang yang tidak memiliki jurusan dalam perangkat lunak komputer atau tidak pernah terlibat dalam pekerjaan pemrograman untuk mengembangkan strategi perdagangan yang lengkap sendiri. karena Anda harus melakukan serangkaian pekerjaan pra-kerja dari awal mendok antarmuka pertukaran (mungkin program logika perdagangan Anda hanya 100 baris, tetapi pekerjaan pengkodean lainnya yang harus dilakukan cukup banyak, dan lebih sulit daripada menulis logika perdagangan.)

Pada saat ini, jika Anda memiliki alat yang berguna, itu cukup sederhana, setidaknya kesulitan dikurangi sebesar 70%. Anda dapat membayangkan betapa mudah dan cepatnya jika Anda hanya menulis logika perdagangan itu sendiri, dan semua koneksi antarmuka pertukaran lainnya, verifikasi tanda tangan, file konfigurasi, konstruksi lingkungan operasi, penulisan antarmuka UI, penulisan interaktif dan sebagainya semuanya sudah siap.

Tidak percaya? Mari kita coba!

Mengimplementasikan strategi grid spot yang sederhana

Alat yang kami gunakan adalah: FMZ Quant Trading PlatformFMZ.COMInti dari desain strategi grid sebenarnya adalah logika pembelian dan penjualan grid, jadi ini adalah sesuatu yang harus diperjelas sebelum merancang strategi.

Berikut adalah aliran dasar dari merancang strategi:

    1. Ringkasan kebutuhan strategis

    Dengan kata lain, ini adalah apa, bagaimana, dan fungsi apa yang akan dilakukan strategi Anda. Informasi ini dapat ditulis dalam dokumen (notepad atau sesuatu) sebelum Anda menulis kode strategi. Sangat sederhana untuk mengembangkan strategi di FMZ, Platform telah menyiapkan solusi untuk persyaratan ini untuk Anda, dan saya tidak perlu menulis persyaratan ini ke dalam notepad (yang tidak sangat nyaman untuk dikelola). Saya menulis persyaratan strategi dalam catatan strategi secara langsung.

    img

    Hanya ingat untuk menyimpan strategi setelah selesai, dan kemudian kita akan menulis persyaratan strategi (persyaratan strategi tidak statis, dan juga mungkin untuk merekam saat mengembangkan).

    • Strategi ini dirancang sebagai strategi perdagangan spot dengan pasangan perdaganganXXX_USDT, sepertiBTC_USDT.
    • kisi-kisi ini dirancang untuk berjarak yang sama, yang hanya berarti bahwa jarak antara dua titik yang berdekatan pada kisi-kisi adalah penyebaran tetap.
    • kisi-kisi ini dirancang sebagai kisi tak terbatas yang dapat diperluas tak terbatas.
    • Menggunakan pesanan pasar untuk penempatan pesanan.
    1. Membangun struktur data grid:

    Untuk ide-ide yang tidak jelas, kita bisa menggambar dan menganalisis di awal.

    img

    Sebuah grid dapat dibangun baik ke atas maupun ke bawah dari harga awal sebagai titik dasar. grid adalah garis beli dan jual lapisan demi lapisan.

    1. Harga melintasi SMA.
    2. Harga melintasi di bawah SMA. Ketika harga melintasi SMA, itu berarti bahwa harga naik dan perlu dijual, dan kemudian menunggu harga turun dan membeli untuk membuat keuntungan. Ketika harga melintasi di bawah SMA, itu berarti bahwa harga akan turun, Anda perlu membelinya, dan kemudian menunggu harga naik dan menjualnya untuk membuat keuntungan. Jadi setiap garis grid memiliki dua cara untuk berdagang: beli dan jual. dan setiap garis grid memiliki properti yang melekat, yaitu harga yang ditandai oleh garis ini. contohnya adalah representasi A/B/C/D pada grafik. Ketika merancang strategi, mencari tahuApa?kita ingin melakukannya terlebih dahulu, dan kemudian mudah untuk melakukannya.

    Tuliskan fungsi yang membangun struktur data grid:

    function createNet(begin, diff) {   // begin, diff are parameters, begin is the initial price, diff is the grid spacing (the spacing of the equal difference grid is the price)
        var oneSideNums = 10            // The grid generates 10 bars on the upward and downward sides. The above chart is a side of the generation of 2 bars (AB side, CD side) and the generation of 10 bars, you can imagine them by yourself.
        var up = []                     // Used to store the upward "grid line" data structure
        var down = []                   // Used to store the downward "grid line" data structure
        for (var i = 0 ; i < oneSideNums ; i++) {    // Determine the number of times according to the size of oneSideNums, and construct the "grid line" data structure cyclically
            var upObj = {                            // Construct an upward "gridline" data structure
                buy : false,                         // Buy marker, initial marker is false, meaning no buy
                sell : false,                        // Sell marker ...
                price : begin + diff / 2 + i * diff, // The price level represented by this "grid line" can be observed according to the cycle, and the price level is rising in turn.
            }
            up.push(upObj)                           // The constructed "gridline" data structure is placed into the up array
    
            var j = (oneSideNums - 1) - i            // The change in j during the loop is: 9 ~ 0
            var downObj = {
                buy : false,
                sell : false,
                price : begin - diff / 2 - j * diff,
            }
            if (downObj.price <= 0) {                // The price cannot be less than or equal to 0 
                continue
            }
            down.push(downObj)                       // The constructed "gridline" data structure is placed in down array
        }    
    
        return down.concat(up)                       // Add up after down to form a grid array structure with grid line prices from small to large
    }
    

    Anda dapat menjalankan fungsi ini secara terpisah untuk melihat efeknya. [Debugging Tools] atau [Backtesting System] pada FMZ sangat nyaman untuk debug kode kecil seperti itu.

    img

    Data yang dibuat dapat diamati.

    [
        {"buy":false,"sell":false,"price":5},
        {"buy":false,"sell":false,"price":15},
        {"buy":false,"sell":false,"price":25},
        {"buy":false,"sell":false,"price":35},
        {"buy":false,"sell":false,"price":45},
        {"buy":false,"sell":false,"price":55},
        {"buy":false,"sell":false,"price":65},
        {"buy":false,"sell":false,"price":75},
        {"buy":false,"sell":false,"price":85},
        {"buy":false,"sell":false,"price":95},
        {"buy":false,"sell":false,"price":105},  // 100 is the starting price, starting from 105 and going up the first line, with an interval of 10
        {"buy":false,"sell":false,"price":115},  // ... 
        {"buy":false,"sell":false,"price":125},
        {"buy":false,"sell":false,"price":135},
        {"buy":false,"sell":false,"price":145},
        {"buy":false,"sell":false,"price":155},
        {"buy":false,"sell":false,"price":165},
        {"buy":false,"sell":false,"price":175},
        {"buy":false,"sell":false,"price":185},
        {"buy":false,"sell":false,"price":195}
    ]
    
    1. Analisis logika perdagangan

    Setelah menganalisis struktur data grid, kita perlu mempertimbangkan logika perdagangan spesifik dari strategi grid. Sebenarnya, logika membeli dan menjual sangat sederhana. Kita sudah menggambarkannya dalam bagan di atas, membeli berarti melintasi garis tertentu di bawah, dan menjual berarti melintasi garis tertentu di atas. Jadi bagaimana Anda menunjukkan persimpangan di atas dan di bawah? Ini juga sangat sederhana, kita hanya dapat menilai dengan membandingkan posisi harga dua saat.

    Masih menggunakan grafik sebelumnya.

    img

T1 adalah saat, t2 adalah saat setelah t1, untuk menilai garis di atas C, kita hanya perlu menilaiP1 < CdanP2 > CAku tidak tahu. Demikian pula, untuk menilai garis B yang dipintas di bawah, kita hanya perlu menentukanP1 > BdanP3 < BAku tidak tahu. Pada saat itu, kita hanya perlu melintasi (melintasi biasanya disebut sebagaiLihatlah satu per satu) setiap garis dalam array kisi, dan memutuskan apakah untuk melintasi di atas atau di bawah.

Setelah menangkap penyeberangan harga di atas dan di bawah, apakah mungkin untuk menempatkan pesanan ketika tindakan ini dipicu? Jelas, itu tidak mungkin. Jika harga melintasi di atas dan di bawah berulang kali pada satu garis, bukankah akan membuang biaya untuk trending berulang pada tingkat harga yang sama? Oleh karena itu, masih ada serangkaian kondisi penilaian untuk memicu penyeberangan harga di atas dan di bawah, yang membutuhkan penggunaan penanda beli / jual dalam struktur data garis kisi yang baru saja kami bangun (misalnya: {buy:false,"sell ":false,price:5}).

Terima kasih telah membaca, kami akan terus menjelaskan dan belajar di edisi berikutnya.


Berkaitan

Lebih banyak