Cara Menugaskan Data Versi Berbeda ke Strategi Sewa Melalui Metadata Kode Sewa Strategi

Penulis:Lydia, Dibuat: 2022-11-09 10:34:37, Diperbarui: 2023-09-20 10:59:17

img

Aplikasi metadata kode sewa strategi

Mitra yang bekerja sebagai pengembang di Platform Perdagangan Kuantum FMZ seringkali memiliki kebutuhan seperti:

Ketika mengembangkan strategi untuk menyewa, Anda mungkin ingin memiliki pembatasan modal yang berbeda pada strategi, dan pembatasan pertukaran yang berbeda pada sewa strategi (pertukaran yang membatasi operasi strategi), atau pembatasan pada konfigurasi akun pertukaran ketika Anda ingin menyewa strategi (specifikasi bahwa strategi ini hanya dapat mengoperasikan akun yang disepakati sebelumnya, dan pengguna strategi tidak akan melakukan perdagangan ketika menggunakan akun lain).

Ini jelas tidak dapat ditulis dalam kode, karena jika mereka ditulis dalam kode, semua pengguna akan tunduk pada kondisi ini, dan tidak mungkin untuk membuat kontrol untuk kelompok pengguna yang berbeda dengan hak penggunaan yang berbeda.

Berdasarkan skenario permintaan di atas, Platform Perdagangan Kuantum FMZ diperluas dengan fungsi baru: pengaturan metadata kode pendaftaran sewa strategi

Saat membuat kode pendaftaran, Anda dapat menentukan metadataMeta, dan data adalah string. Perhatian: Panjang meta tidak dapat melebihi 190 karakter saat menghasilkan kode pendaftaran.

· Batasi strategi dengan menggunakan metadata kode pendaftaran FMZ

Sebagai contoh, jika saya adalah strategi mengembangkan hotshot dan saya telah mengembangkan pasangan perdagangan spot untuk BTC_USDT, dan itu pergi panjang hanya (hanya ada mata uang hargaQuoteCurrencyawalnya, yaitu USDT; setelah membeli, ada perdagangan mata uangBaseCurrency, yaitu BTC). Saya ingin menyewa strategi ini, yang disebut sebagaitest1.

Ini dapat dilihat bahwa desain terbatas dari strategi perlu dirancang sesuai dengan situasi spesifik dari strategi. Contoh adalah demonstrasi dari strategi spot. Bagaimana jika strategi adalah strategi futures? Maka perlu untuk membatasi informasi posisi futures (sesuai dengan data posisi yang dikembalikan oleh GetPosition). Ketika strategi menemukan bahwa posisi melebihi batas, itu tidak akan mengeksekusi logika membuka posisi (logika lain perlu dieksekusi secara normal, seperti menutup posisi).

Oleh karena itu, desain ini perlu spesifik untuk strategi itu sendiri. contoh di sini hanya ilustrasi sederhana dan mungkin tidak berguna secara praktis.

Kode sumber strategi:

function main() {
    // The maximum asset value of the denominated currency allowed by the strategy
    var maxBaseCurrency = null
    
    //Obtain the metadata when creating the registration code
    var level = GetMeta()
    
    // Detecting the conditions corresponding to Meta
    if (level == "level1") {
        // -1 is not limited
        maxBaseCurrency = -1       
    } else if (level == "level2") {
        maxBaseCurrency = 10     
    } else if (level == "level3") {
        maxBaseCurrency = 1
    } else {
        maxBaseCurrency = 0.5
    }
    
    while(1) {
        Sleep(1000)
        var ticker = exchange.GetTicker()
        
        // Detect asset values
        var acc = exchange.GetAccount()
        if (maxBaseCurrency != -1 && maxBaseCurrency < acc.Stocks + acc.FrozenStocks) {
            // Stop executing strategic trading logic
            LogStatus(_D(), "Positions exceeding the usage limit of the registration code will no longer execute the strategy trading logic!")
            continue
        }
        
        // Other trading logic
        
        // Output the status bar information normally
        LogStatus(_D(), "The strategy is running properly! ticker data:\n", ticker)
    }
}

Saat membuat kode pendaftaran, cari tes strategi1 di perpustakaan strategi, klik pada item tindakan di sebelah kanan, klik pada Rent,

img

dan kemudian klik pada Internal Sale.

img

Klik pada Little Wrench untuk mengatur metadata kode pendaftaran.

img

Kemudian tulis informasi yang akan memenuhi syarat ke dalam kontrol Meta, seperti beberapa tingkat penggunaan strategi yang dirancang dalam contoh ini:

· level1: Tidak ada batasan jumlah posisi. · level2: Batasi jumlah posisi maksimum menjadi 10 koin. · level3: Batasi jumlah posisi maksimum menjadi 1 koin. Tidak ada pengaturan Meta: Ketika tidak ada pengaturan Meta, batas posisi maksimum default adalah 0,5 koin.

img

Pertama, kita mengaturlevel1untuk kontrol Meta, sehingga kode pendaftaran yang dibuat memilikilevel1tingkat dari strategi test1. Kode pendaftaran dibuat:

Purchase address: https://www.fmz.com/m/s/282900
Registration code: 7af0c24404b268812c97b55d073c1867

Penyewa strategi mengirimkan kode pendaftaran kepada penyewa strategi.

· Strategi penggunaan untuk penyewa strategi

Strategy renter membuat bot nyata, menggunakan strategi test1, menambahkan WexApp Spot Exchange objek (WexApp adalah demo dari platform FMZ), jalankan.

· Mengubah Meta data

Ketika kode pendaftaran strategi telah digunakan, kode ini juga dapat dimodifikasi jika pengembang strategi perlu menyesuaikan data Meta dari kode pendaftaran yang dikeluarkan.

Meta data dapat dimodifikasi di Perpustakaan Strategi, Rekam Penjualan.

Kami mengubah data Meta dari kode pendaftaran sebelumnya menjadilevel3,

img

Kemudian pengguna strategi memulai kembali tes.

· Ringkasan

Ketika strategi leasing didasarkan pada kelompok pengguna yang berbeda dan tingkat pembayaran yang berbeda, metadata dikonfigurasi secara khusus untuk mencapai kontrol strategi hierarkis.

Tentu saja, di atas hanya daftar yang paling umum pembatasan dan persyaratan kontrol.


Lebih banyak