Các đối tác làm việc với tư cách là nhà phát triển trên nền tảng giao dịch lượng tử FMZ thường có thể có nhu cầu như vậy:
Khi phát triển một chiến lược cho thuê, bạn có thể muốn có các hạn chế vốn khác nhau đối với chiến lược, và các hạn chế trao đổi khác nhau đối với hợp đồng cho thuê chiến lược (thị trường trao đổi hạn chế hoạt động chiến lược), hoặc các hạn chế về cấu hình tài khoản trao đổi khi bạn muốn cho thuê chiến lược (chỉ xác định rằng chiến lược này chỉ có thể vận hành tài khoản được thỏa thuận trước và người sử dụng chiến lược sẽ không giao dịch khi sử dụng các tài khoản khác).
Những điều này rõ ràng không thể được viết trong mã, bởi vì nếu chúng được viết trong mã, tất cả người dùng sẽ phải tuân thủ các điều kiện này, và sẽ không thể thực hiện điều khiển cho các nhóm người dùng khác nhau với quyền sử dụng khác nhau.
Dựa trên kịch bản nhu cầu trên, nền tảng giao dịch FMZ Quant được mở rộng với một chức năng mới: cài đặt mã đăng ký thuê chiến lược metadata
Khi tạo mã đăng ký, bạn có thể chỉ định một siêu dữ liệuMeta
, và dữ liệu là một chuỗi. Chú ý: Độ dài của meta không thể vượt quá 190 ký tự khi tạo mã đăng ký.
Ví dụ, nếu tôi là một chiến lược phát triển hotshot và tôi đã phát triển một cặp giao dịch tại chỗ cho BTC_USDT, và nó đi dài chỉ (có chỉ tiền tệ định giáQuoteCurrency
ban đầu, đó là USDT; sau khi mua, có giao dịch tiền tệBaseCurrency
Tôi muốn thuê chiến lược này, được đặt tên làtest1
.
Có thể thấy rằng thiết kế giới hạn của chiến lược cần phải được thiết kế theo tình huống cụ thể của chiến lược. Ví dụ là một minh chứng của chiến lược tại chỗ. Nếu chiến lược là một chiến lược tương lai thì sao? Sau đó, cần phải giới hạn thông tin vị trí tương lai (theo dữ liệu vị trí được trả về bởi GetPosition). Khi chiến lược thấy vị trí vượt quá giới hạn, nó sẽ không thực hiện logic mở vị trí (các logic khác cần được thực hiện bình thường, chẳng hạn như đóng vị trí).
Do đó, các thiết kế này cần phải cụ thể cho chính chiến lược. ví dụ ở đây chỉ là một minh họa đơn giản và có thể không có ích thực tế.
Mã nguồn chiến lược:
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)
}
}
Khi tạo mã đăng ký, hãy tìm bài kiểm tra chiến lược1 trong thư viện chiến lược, nhấp vào mục hành động ở bên phải, nhấp vào
và sau đó nhấp vào
Nhấp vào
Sau đó viết thông tin được đủ điều kiện vào điều khiển Meta, chẳng hạn như một số mức sử dụng chiến lược được thiết kế trong ví dụ này:
· cấp 1: Không giới hạn số lượng vị trí. · level2: Giới hạn số lượng tối đa các vị trí lên 10 đồng xu. · level3: Giới hạn số lượng tối đa các vị trí đến 1 đồng xu. Không cài đặt Meta: Khi không có cài đặt Meta, giới hạn vị trí tối đa mặc định là 0,5 đồng xu.
Đầu tiên, chúng ta đặtlevel1
cho điều khiển Meta, để mã đăng ký được tạo cólevel1
mức độ của chiến lược test1.
Mã đăng ký được tạo:
Purchase address: https://www.fmz.com/m/s/282900
Registration code: 7af0c24404b268812c97b55d073c1867
Người cho thuê chiến lược gửi mã đăng ký cho người thuê chiến lược.
Người thuê chiến lược tạo một bot thực sự, sử dụng chiến lược test1, thêm một đối tượng WexApp Spot Exchange (WexApp là một bản demo của nền tảng FMZ), chạy nó.
Khi mã đăng ký chiến lược đã được sử dụng, nó cũng có thể được sửa đổi nếu nhà phát triển chiến lược cần điều chỉnh dữ liệu Meta của mã đăng ký được phát hành.
Dữ liệu siêu có thể được sửa đổi trong Thư viện Chiến lược, Bảng bán hàng.
Chúng tôi đã thay đổi dữ liệu Meta của mã đăng ký trước đó thànhlevel3
,
Sau đó người sử dụng chiến lược bắt đầu lại thử nghiệm.
Khi các chiến lược cho thuê dựa trên các nhóm người dùng khác nhau và các mức thanh toán khác nhau, siêu dữ liệu được cấu hình đặc biệt để đạt được kiểm soát chiến lược phân cấp.
Tất nhiên, những điều trên chỉ liệt kê các yêu cầu giới hạn và kiểm soát phổ biến nhất. Có nhiều yêu cầu tương tự có thể được thực hiện bằng cách sử dụng chức năng này.