Rakan-rakan kecil yang melakukan pembangunan di platform perdagangan kuantiti pencipta mungkin sering mempunyai keperluan seperti:
Membangunkan strategi sewa yang ingin mempunyai had dana yang berbeza untuk strategi, had pertukaran yang berbeza untuk strategi sewa ("mengehadkan pertukaran yang mengoperasikan strategi"), atau batasan konfigurasi akaun pertukaran untuk strategi sewa ("menentukan bahawa strategi ini hanya dapat mengoperasikan akaun yang telah dipersetujui sebelumnya, pengguna strategi menggunakan akaun lain untuk mencadangkan strategi dan tidak lagi berdagang").
Ini jelas tidak boleh ditulis mati dalam kod, kerana jika ditulis mati dalam kod. Semua pengguna akan terhad kepada syarat-syarat ini, dan tidak boleh membuat kawalan keizinan yang berbeza untuk kumpulan pengguna yang berbeza.
Berdasarkan senario permintaan di atas, pencipta platform dagangan kuantitatif telah mengembangkan fungsi baru:Tetapan metadata kod pendaftaran teksi
Untuk membuat kod pendaftaran, anda boleh menetapkan metadataMeta
, data adalah rentetan. Nota: panjang meta tidak boleh melebihi 190 aksara semasa menjana kod pendaftaran.
Sebagai contoh, saya seorang pembangun strategi, saya telah membangunkan strategi untuk pasangan perdagangan segera untuk BTC_USDT, strategi hanya melakukan banyak (pada mulanya hanya mencadangkan mata wang)QuoteCurrency
USDT adalah mata wang dagangan yang dimiliki apabila dibeli.BaseCurrency
Saya akan menyewa strategi ini, yang dinamakantest1
。
Seperti yang dapat dilihat, reka bentuk terhad untuk strategi memerlukan reka bentuk khusus yang digabungkan dengan situasi tertentu. Contoh ini adalah demonstrasi strategi segera, jika strategi adalah strategi niaga hadapan, maka maklumat pegangan barang berkala akan dibatasi (berdasarkan data pegangan yang dikembalikan oleh GetPosition).
Oleh itu, reka bentuk ini perlu digabungkan dengan strategi itu sendiri secara spesifik, contoh ini hanya contoh ilustrasi sederhana dan mungkin tidak mempunyai nilai penggunaan yang 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 anda membuat kod pendaftaran, cari test1 dalam perpustakaan dasar dan klik pada sebelah kanan untuk mendapatkan kod pendaftaran.Operasi, klikJualan。
KlikJualan dalaman。
Klik pada tetingkap tangan untuk menetapkan kod pendaftaran.
Kemudian anda akan menuliskan maklumat yang anda ingin batasi.MetaPengendali, contohnya, beberapa dasar yang direka dalam kes ini menggunakan tahap:
Kita mulakan dengan menetapkan kawalan Meta.level1
Untuk membuat kod pendaftaran ini mempunyai strategi test1level1
Peringkat.
Buat kod pendaftaran:
购买地址: https://www.fmz.com/m/s/282900
注册码: 7af0c24404b268812c97b55d073c1867
Penyewa strategi menghantar kod pendaftaran ini kepada penyewa strategi.
Sebagai contoh, ketika ini saya menggunakan kod pendaftaran ini untuk akaun lain saya (penyewa strategi) dan mendapat keizinan untuk menggunakan strategi test1.
Penyewa strategi, membuat cakera sebenar, menggunakan test1, menambah objek pertukaran segera WexApp (WexApp adalah cakera analog untuk platform FMZ), dan menjalankan cakera sebenar.
Anda boleh lihat bahawa strategi ini berfungsi dengan baik.level1
Peringkat tidak terhad kepada jumlah pegangan (jumlah duit syiling yang dipegang dalam akaun tunai).
Apabila kod pendaftaran dasar telah digunakan, meta data kod pendaftaran yang dikeluarkan boleh diubah jika pemaju dasar memerlukan penyesuaian.
Di dalam buku strategi, rekod jualan.
Meta data boleh diubah.
Kami telah mengubah metadata kod pendaftaran sebelum ini menjadilevel3
Kemudian, anda perlu menghidupkan semula percubaan pada cakera sebenar.
Seperti yang anda lihat di atas, ia mencetuskanlevel3
Pengekalan terhad peringkat hanya boleh dibatasi kepada satu sen sahaja.
Meta data disesuaikan dengan kumpulan pengguna yang berbeza, dengan dasar sewa peringkat berbayar yang berbeza, untuk mencapai kawalan peringkat dasar.
Sudah tentu, ini hanya senarai keperluan yang paling biasa untuk mengehadkan, mengawal. Terdapat pelbagai keperluan serupa yang boleh dilaksanakan dengan fungsi ini.