কিভাবে ভিজ্যুয়ালাইজেশন কৌশলকে নিজের প্রয়োজনীয় কাস্টম ক্লাস লাইব্রেরি বাড়ানো যায়? উদাহরণস্বরূপ, আমি এমএ পরিমাপ করতে চাই, কিন্তু সিস্টেমটি কেবলঃএই সূচকগুলি, কিভাবে আমরা কাস্টমাইজড কোড যোগ করতে পারি? আমরা একটি কাস্টমাইজড এমএ সূচক গণনা মডিউল যোগ করার মাধ্যমে ভিজ্যুয়ালাইজেশন মডিউলটি কীভাবে প্রসারিত করা যায় তা ব্যাখ্যা করেছি।
প্রথমত, একটি টেমপ্লেট সম্পর্কে কথা বলা যাক যা একটি ডিজিটাল মুদ্রা ট্রেডিং লাইব্রেরির সাথে সম্পর্কিত।https://www.fmz.com/strategy/10989যদিও এই টেমপ্লেটটি এফএমজেড প্ল্যাটফর্মের জাভাস্ক্রিপ্ট ভাষার টেমপ্লেট (যারা টেমপ্লেট ধারণা বুঝতে পারে না তারা এফএমজেড এপিআই ডকুমেন্টেশনটি অনুসন্ধান করতে পারে):https://www.fmz.com/api#模板类库) কিন্তু টেমপ্লেটের শুরুর অংশে একটি মন্তব্য আছে যেখানে মডিউলকে দৃশ্যমান করার জন্য কোড সংজ্ঞায়িত করা হয়েছে, এবং সংজ্ঞায়িত কোডটিতে এই জাভাস্ক্রিপ্ট টেমপ্লেটের কোডটি উল্লেখ করা যেতে পারে। এটি খুব সুবিধাজনক যে আমরা নিজেরাই এটি প্রসারিত করেছি ((একটি ভাল উদাহরণ দেওয়া যাক, আসুন এটি অনুকরণ করি) ।) ।
ডিজিটাল মুদ্রার অবিলম্বে লেনদেনের ক্যাটাগরি, প্রথম অংশের একটি দৃশ্যমান সংজ্ঞাঃ
/*blockly
{
"type": "ext_Trade",
"message0": "%1 币数 %2|%1 Coins %2",
"args0": [{
"type": "field_dropdown",
"options": [
["买入|Buy", "Buy"],
["卖出|Sell", "Sell"]
]
}, {
"type": "input_value",
"check": "Number"
}],
"template": "(function(){var r = $.%1(%2); return r ? r.amount : 0; })()",
"order": "ORDER_ATOMIC",
"output": "Number",
"colour": 85
}, {
"type": "ext_CancelPendingOrders",
"message0": "取消 %1 订单|Cancel %1 Orders",
"args0": [{
"type": "field_dropdown",
"name": "TYPE",
"options": [
["所有|All", " "],
["买单|Buy", "ORDER_TYPE_BUY"],
["卖单|Sell", "ORDER_TYPE_SELL"]
]
}],
"previousStatement": null,
"nextStatement": null,
"template": "$.CancelPendingOrders(%1);",
"colour": 85
}, {
"type": "ext_Cross",
"message0": "计算交叉 周期 %1 与 %2|Cross Period %1 and %2",
"inputsInline": true,
"args0": [{
"type": "input_value"
}, {
"type": "input_value"
}],
"template": "$.Cross(%1,%2)",
"order": "ORDER_ATOMIC",
"output": "Number"
}, {
"type": "ext_GetAccount",
"message0": "获取资产信息|GetAccount",
"template": "$.GetAccount()",
"order": "ORDER_ATOMIC",
"output": null
}
*/
এই পাতাটি বিভিন্ন বিষয়ের উপর ভিত্তি করে তৈরি করা হয়েছে।
এই উদাহরণগুলির সাথে, আপনার নিজের হাত দিয়ে তৈরি করা সহজ, এমনকি পেইন্টিং পেইন্টিংয়ের চেয়েও সহজ।
প্রথমত, একটি নতুন জাভাস্ক্রিপ্ট ভাষার টেমপ্লেট তৈরি করা।
টেমপ্লেট কোড সম্পাদনা করুন।
/*blockly
{
"type": "ext_testA",
"message0": "testA|testA",
"template": "function(){return 99;}()",
"order": "ORDER_ATOMIC",
"output": "Number"
},{
"type": "ext_MA",
"message0": "MA 周期 %1| MA Period %1",
"args0": [{
"type": "input_value",
"check": "Number"
}],
"template": "(function(){var r = exchange.GetRecords(); return (!r || r.length < %1) ? false : TA.MA(r, %1); })()",
"order": "ORDER_ATOMIC",
"output": null,
"colour": 85
}
*/
এই নতুন টেমপ্লেটটি সম্পাদনা করার পরে সংরক্ষণ করুন। এই টেমপ্লেটটি ব্যবহার করার জন্য আমাদের যে কৌশলটি প্রয়োজন তার মধ্যে এই টেমপ্লেটটি নির্বাচন করুন।
আপনি দেখতে পাচ্ছেন যে দুটি অতিরিক্ত মডিউল রয়েছেঃ
এই মডিউলটির নামঃ testA, এবং আমরা তার এক্সিকিউটিভ কোডটি দেখিঃ
function(){return 99;}()
এটি একটি খুব সহজ জাভাস্ক্রিপ্ট ফাংশন যা 99 এর একটি মান ফেরত দেয়।
এই মডিউলটি MA Cycle নামে পরিচিত এবং আমরা তার এক্সিকিউশন কোডটি দেখছিঃ
(function(){var r = exchange.GetRecords(); return (!r || r.length < %1) ? false : TA.MA(r, %1); })()
কোডটি একটি বেনামী ফাংশন কল, যেখানে বেনামী ফাংশনটি প্রথমে K-লাইন ডেটা অর্জনের জন্য একটি অপারেশন সম্পাদন করে, K-লাইন ডেটাr
◄ তারপর r এর উপর ভিত্তি করে পাওয়া যাবেnull
অথবাr
এর দৈর্ঘ্য কি মডিউলের ইনপুট পরামিতি কম%1
ফিরে যাওয়ার সিদ্ধান্তfalse
অথবা ফিরে যানTA.MA(r, %1)
গণনা করা পরিমাপের ফলাফল।
এই ভিডিওটি অন্য একটি ভিডিওতে প্রকাশ করা হয়েছে।
ভিজ্যুয়ালাইজেশন কৌশল সম্পাদকঃ
চালানো হচ্ছেঃ
আপনি দেখতে পাচ্ছেন যে, উপরে দেওয়া তথ্য অনুযায়ী এমএ গণনা করা হয়েছে।
উপরের অংশটি কেবল পোলার পয়েন্টার, যা ভিজ্যুয়ালাইজেশন মডিউল ডিজাইনের জন্য টেমপ্লেট ফাংশনটি ব্যবহার করে স্ব-বর্ধিত হতে পারে।