এফএমজেড কোয়ান্ট ট্রেডিং প্ল্যাটফর্মে বিকাশকারী বন্ধুদের প্রায়ই এই ধরনের চাহিদা থাকতে পারেঃ
যখন আপনি ভাড়া নেওয়ার জন্য একটি কৌশল বিকাশ করেন, আপনি কৌশলটিতে তহবিলের বিভিন্ন সীমাবদ্ধতা এবং বিভিন্ন প্ল্যাটফর্ম সীমাবদ্ধতা চান (কৌশল দ্বারা পরিচালিত প্ল্যাটফর্মগুলি সীমাবদ্ধ করুন), অথবা আপনি প্ল্যাটফর্ম অ্যাকাউন্ট কনফিগারেশন সীমাবদ্ধ করতে চান (কৌশলটি কেবল পূর্ব-সম্মত অ্যাকাউন্টে কাজ করতে পারে তা নির্দিষ্ট করুন; যখন কৌশল ব্যবহারকারী অন্যান্য অ্যাকাউন্ট ব্যবহার করে, তখন কৌশলটি অনুরোধ করে এবং আর বাণিজ্য করবে না এবং অন্যান্য ক্রিয়াকলাপ করবে না) ।
এটি স্পষ্টতই হার্ড-কোডেড হতে পারে না, কারণ যদি তারা হার্ড-কোডেড হয় তবে সমস্ত ব্যবহারকারী এই সীমাবদ্ধতার সাপেক্ষে থাকবে এবং তারা বিভিন্ন ব্যবহারকারী গোষ্ঠীর জন্য বিভিন্ন ব্যবহারের অধিকার নিয়ন্ত্রণ করতে পারে না।
উপরোক্ত চাহিদা পরিস্থিতির ভিত্তিতে এফএমজেড কোয়ান্ট ট্রেডিং প্ল্যাটফর্ম একটি নতুন ফাংশন প্রসারিত করেছে:কৌশল ভাড়া রেজিস্টার কোড মেটাডেটা সেটিংস.
একটি রেজিস্টার কোড তৈরি করার সময়, আপনি একটি মেটাডেটা নির্দিষ্ট করতে পারেনMeta
, যা একটি স্ট্রিং। দ্রষ্টব্যঃ রেজিস্টার কোড তৈরি করার সময় মেটা এর দৈর্ঘ্য 190 অক্ষরের বেশি হতে পারে না।
উদাহরণস্বরূপ, আমি কৌশল উন্নয়ন একটি রপ্তানি, এবং আমি BTC_USDT একটি স্পট ট্রেডিং জোড়া সঙ্গে একটি কৌশল উন্নত করেছি. কৌশল শুধুমাত্র দীর্ঘ অবস্থানের তোলে (প্রথমত, এটি শুধুমাত্র উদ্ধৃতি মুদ্রা আছেQuoteCurrency
, যথা ইউএসডিটি; কিনে নেওয়ার পর, এটিBaseCurrency
যদি আমি এই কৌশলটি ভাড়া দিতে চাই, কৌশলটির নাম হলtest1
.
যেমন আপনি দেখতে পাচ্ছেন, কৌশলটির সীমাবদ্ধতা কৌশলটির নির্দিষ্ট পরিস্থিতির সাথে সংমিশ্রণে বিশেষভাবে ডিজাইন করা দরকার। এই উদাহরণটি স্পট কৌশলটির একটি প্রদর্শন, তবে কৌশলটি যদি ফিউচার কৌশল হয় তবে কী হবে? তারপরে, ফিউচার অবস্থান তথ্য সীমাবদ্ধ করা প্রয়োজন (গেটপোজিশন দ্বারা ফিরে আসা অবস্থানের ডেটা অনুসারে) । যখন কৌশলটি খুঁজে পায় যে অবস্থানটি সীমা অতিক্রম করে, অর্ডার স্থাপন এবং একটি অবস্থান খোলার যুক্তি আর কার্যকর হবে না (অন্যান্য যুক্তি স্বাভাবিকভাবে কার্যকর করা দরকার, যেমন একটি অবস্থান বন্ধ করা এবং অন্যান্য ক্রিয়াকলাপ) ।
অতএব, এই সীমাবদ্ধতার নকশাটি কৌশলটির সাথে একত্রিত করা দরকার; উদাহরণটি কেবলমাত্র একটি সহজ নির্দেশনা, প্রকৃত ব্যবহারের মূল্য ছাড়াই।
কৌশল উৎস কোডঃ
function main() {
// The maximum asset value of the quote currency allowed by the strategy
var maxBaseCurrency = null
// Obtain the metadata when the register code is created
var level = GetMeta()
// Detect the corresponding conditions of Meta
if (level == "level1") {
// -1 means no limit
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 the assets amount
var acc = exchange.GetAccount()
if (maxBaseCurrency != -1 && maxBaseCurrency < acc.Stocks + acc.FrozenStocks) {
// Stop executing the strategy trading logic
LogStatus(_D(), "If the position exceeds the usage limits of register code, the strategy trading logic will no longer be executed!")
continue
}
// Other trading logic
// Normally export the information of status bar
LogStatus(_D(), "The strategy is operating normally!ticker data:\n", ticker)
}
}
রেজিস্টার কোড তৈরি করার সময়,
ক্লিক করুনঅভ্যন্তরীণ বিক্রয়.
ছোট
তারপর, আপনি সীমাবদ্ধতা তথ্য লিখতে হবেমেটানিয়ন্ত্রণ, যেমন এই উদাহরণে পরিকল্পিত কৌশলটির বেশ কয়েকটি ব্যবহারের স্তরঃ
প্রথমত, আমরাlevel1
মেটা কন্ট্রোল, এবং তৈরি রেজিস্টার কোড আছে যাকlevel1
পরীক্ষার ১
রেজিস্টার কোড তৈরি হওয়ার পর, কৌশল বিক্রেতা রেজিস্টার কোডটি কৌশল ক্রেতাকে পাঠাবে।
উদাহরণস্বরূপ, যদি আমি আমার অন্য অ্যাকাউন্টে (ক্রেতার অ্যাকাউন্ট হিসাবে) রেজিস্টার কোড ব্যবহার করি, তবে আমার কৌশল পরীক্ষা ব্যবহার করার অধিকার থাকবে।
কৌশল ক্রেতা হিসাবে, আপনাকে প্রথমে একটি বট যুক্ত করতে হবে, কৌশল হিসাবে পরীক্ষা 1 নির্বাচন করুন এবং একটি WexApp স্পট এক্সচেঞ্জ অবজেক্ট যুক্ত করুন (WexApp হল FMZ এর সিমুলেটেড বট), এবং তারপরে বটটি চালান।
যখন আপনি কৌশল সঠিকভাবে চালানো দেখতে পারেন, এর মানে হলlevel1
পজিশনের পরিমাণের জন্য কোন সীমা নেই (স্পট অ্যাকাউন্টে থাকা মুদ্রার পরিমাণ) ।
যখন কৌশল রেজিস্টার কোড ব্যবহার করা হয়, যদি কৌশল বিকাশকারীকে পাঠানো রেজিস্টার কোডের মেটাডেটা সামঞ্জস্য করতে হয়, তিনি এটি সম্পূর্ণরূপে পরিবর্তন করতে পারেন।
মেটাডেটা পরিবর্তন করা যেতে পারে।
আমরা পুরাতন রেজিস্টার কোডের মেটাডেটা পরিবর্তন করেছিlevel3
, এবং কৌশল ব্যবহারকারী পরীক্ষা করতে বট পুনরায় আরম্ভ করতে হবে. এটা triggeredlevel3
সর্বোচ্চ পজিশনের পরিমাণকে ১টি মুদ্রায় সীমাবদ্ধ করা।
যখন একটি কৌশল ভাড়া, বিভিন্ন ব্যবহারকারী গ্রুপ এবং পেমেন্ট স্তর অনুযায়ী, আপনি বিশেষভাবে মেটাডেটা কনফিগার করতে পারেন, স্তর দ্বারা কৌশল নিয়ন্ত্রণ করতে।
অবশ্যই, উপরে উল্লিখিত উদাহরণগুলি কেবলমাত্র সর্বাধিক সাধারণ সীমাবদ্ধতা এবং নিয়ন্ত্রণের চাহিদা। এখনও বিভিন্ন অনুরূপ চাহিদা রয়েছে, যা ফাংশনটিও উপলব্ধি করতে পারে।