
Rakan-rakan yang membangun di Platform Dagangan Kuantitatif Pencipta mungkin selalunya mempunyai keperluan sedemikian:
Apabila membangunkan strategi untuk penyewaan, anda ingin menetapkan sekatan dana yang berbeza untuk strategi, menetapkan sekatan pertukaran yang berbeza untuk penyewaan strategi (menghadkan pertukaran operasi strategi), atau anda mahu menetapkan sekatan konfigurasi akaun pertukaran untuk penyewaan strategi (nyatakan Strategi ini hanya boleh digunakan dengan akaun yang telah dipersetujui terlebih dahulu Apabila pengguna strategi menggunakan akaun lain, strategi menggesa dan tidak lagi melakukan transaksi, dsb.).
Ini jelas tidak boleh dikod keras dalam kod, kerana jika ia dikodkan keras dalam kod. Semua pengguna akan tertakluk kepada sekatan ini dan tidak akan dapat mengawal kebenaran penggunaan yang berbeza untuk kumpulan pengguna yang berbeza.
Berdasarkan senario permintaan di atas, Platform Dagangan Kuantitatif Pencipta telah mengembangkan fungsi baharu:Tetapan metadata kod pendaftaran sewa dasar
Apabila membuat kod pendaftaran, anda boleh menentukan metadataMeta, data ialah rentetan. Nota: Apabila menjana kod pendaftaran, panjang Meta tidak boleh melebihi 190 aksara.
Sebagai contoh, saya seorang pembangun strategi Saya membangunkan strategi untuk pasangan dagangan spot BTC_USDT Strateginya panjang sahaja (pada mulanya hanya mata wang sebut hargaQuoteCurrencyIaitu, USDT Sebaik sahaja anda membelinya, anda akan mempunyai mata wang dagangan.BaseCurrencyNak sewa strategi ni nama strategitest1。
Dapat dilihat bahawa reka bentuk batasan strategi perlu direka bentuk khusus dalam kombinasi dengan keadaan khusus strategi. Contoh ini adalah demonstrasi strategi spot Bagaimana jika strategi itu adalah strategi niaga hadapan? Maka adalah perlu untuk mengehadkan maklumat kedudukan niaga hadapan (berdasarkan data kedudukan yang dikembalikan oleh GetPosition). Apabila strategi mendapati bahawa kedudukan melebihi had, logik pembukaan pesanan tidak akan dilaksanakan lagi (logik lain perlu dilaksanakan secara normal, seperti kedudukan penutupan).
Oleh itu, reka bentuk ini perlu khusus dalam kombinasi dengan strategi itu sendiri. Contoh ini hanyalah contoh ilustrasi yang mudah dan mungkin tidak mempunyai nilai praktikal.
Kod sumber strategi:
function main() {
// 策略允许的计价币最大资产数值
var maxBaseCurrency = null
// 获取创建注册码时的元数据
var level = GetMeta()
// 检测Meta对应的条件
if (level == "level1") {
// -1为不限制
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()
// 检测资产数值
var acc = exchange.GetAccount()
if (maxBaseCurrency != -1 && maxBaseCurrency < acc.Stocks + acc.FrozenStocks) {
// 停止执行策略交易逻辑
LogStatus(_D(), "持仓超过注册码的使用限定,不再执行策略交易逻辑!")
continue
}
// 其它交易逻辑
// 正常输出状态栏信息
LogStatus(_D(), "策略正常运行!ticker数据:\n", ticker)
}
}
Apabila membuat kod pendaftaran, cari dasar test1 dalam pustaka dasar dan klikItem Tindakan, klikjual。

klikJualan dalaman。

Klik “perengkuh kecil” untuk menetapkan metadata kod pendaftaran.

Kemudian tulis maklumat yang anda ingin hadkanMetaKawalan, seperti beberapa strategi yang direka dalam contoh ini menggunakan tahap:

Kami mula-mula menetapkan kawalan Metalevel1, supaya kod pendaftaran yang dibuat mempunyai strategi test1level1gred.
Kod pendaftaran telah dibuat:
购买地址: https://www.fmz.com/m/s/282900
注册码: 7af0c24404b268812c97b55d073c1867
Pemberi pajak strategi menghantar kod pendaftaran ini kepada penyewa strategi.
Sebagai contoh, pada masa ini saya menggunakan kod pendaftaran ini dalam akaun saya yang lain (penyewa strategi) untuk mendapatkan hak untuk menggunakan strategi test1.

Penyewa strategi, buat akaun sebenar, gunakan test1 sebagai strategi, tambah objek pertukaran spot WexApp (WexApp ialah akaun simulasi pada platform FMZ) dan jalankan akaun sebenar.

Anda dapat melihat bahawa strategi berjalan seperti biasa, menunjukkanlevel1Tahap tidak mengehadkan bilangan jawatan yang dipegang (bilangan syiling yang dipegang dalam akaun spot).
Apabila kod pendaftaran dasar telah digunakan, jika pembangun dasar perlu melaraskan data Meta kod pendaftaran yang dikeluarkan, ia boleh diubah suai.
Dalam perpustakaan strategi, rekod jualan.

Data meta boleh diubah suai.

Kami mengubah suai kod pendaftaran sebelumnya Meta data kepadalevel3, kemudian pengguna strategi di sini memulakan semula ujian masa nyata.

Seperti yang anda lihat dalam gambar di atas,level3Had tahap maksimum untuk memegang ialah 1 syiling.
Apabila menyewa dasar mengikut kumpulan pengguna dan tahap pembayaran yang berbeza, metadata Meta tertentu dikonfigurasikan untuk mencapai kawalan dasar hierarki.
Sudah tentu, perkara di atas hanya menyenaraikan keperluan had dan kawalan yang paling biasa. Terdapat pelbagai keperluan serupa yang boleh dicapai menggunakan fungsi ini.