JavaScript
, Python
, C++
, এবং মাইল্যাঙ্গুয়েজ কৌশলগুলি ইন্টারঅ্যাকশন কন্ট্রোলগুলির সাথে ডিজাইন করা যেতে পারে। কৌশলটির ইন্টারঅ্যাকশন কন্ট্রোলগুলি লাইভ ট্রেডিংয়ে কৌশলটি চালিত হওয়ার সময় চলমান কৌশল প্রোগ্রামে ইন্টারঅ্যাক্টিভ কমান্ডগুলি প্রেরণের জন্য ব্যবহৃত হয়।
জন্যJavaScript
, Python
, এবংC++
ভাষা টাইপ কৌশল, ব্যবহারGetCommand()
ইন্টারঅ্যাকশন কন্ট্রোল দ্বারা উত্পন্ন বার্তা পেতে কৌশল কোড ফাংশন।
ইন্টারেক্টিভ কন্ট্রোল থেকে বার্তাগুলি পরিচালনা করার জন্য কৌশলটিতে ডিজাইন করা কোডের সাথে, লাইভ ট্রেডিংয়ের সময় ইন্টারেক্টিভ কন্ট্রোলগুলির ব্যবহার (সীমাবদ্ধ নয়) ফাংশনগুলি সক্ষম করতে পারে, যেমনঃ
ভেরিয়েবল (নাম উদাহরণ) | বর্ণনা | প্রকার | ডিফল্ট মান (বর্ণনা) | উপাদান কনফিগারেশন (বর্ণনা) | মন্তব্যসমূহ |
---|---|---|---|---|---|
cmdNum | ইন্টারেক্টিভ কন্ট্রোল cmdNum এর বর্ণনা | সংখ্যা | ডিফল্ট মানটি ঐচ্ছিক এবং ফাঁকা রাখা যেতে পারে | বর্তমান ইন্টারেক্টিভ আইটেমের সাথে আবদ্ধ ইন্টারফেস কন্ট্রোলগুলি সেট করতে ব্যবহৃত হয়ঃ উপাদান প্রকার, সর্বনিম্ন মান, সর্বাধিক মান, গ্রুপিং ইত্যাদি | ইন্টারেক্টিভ কন্ট্রোল cmdNum সম্পর্কে মন্তব্য |
cmdBool | ইন্টারেক্টিভ কন্ট্রোল cmdBool এর বর্ণনা | বুলিয়ান (সত্য/মিথ্যা) | ডিফল্ট মান প্রয়োজন, চালু বা বন্ধ | উপরের মতই | ইন্টারেক্টিভ কন্ট্রোল cmdBool সম্পর্কে মন্তব্য |
cmdStr | ইন্টারেক্টিভ কন্ট্রোল cmdStr এর বর্ণনা | স্ট্রিং | ডিফল্ট মানটি ঐচ্ছিক এবং ফাঁকা রাখা যেতে পারে | উপরের মতই | ইন্টারেক্টিভ কন্ট্রোল cmdStr সম্পর্কে মন্তব্য |
cmdCombox | ইন্টারেক্টিভ কন্ট্রোল cmdCombox এর বর্ণনা | নির্বাচিত | ডিফল্ট মানটি ঐচ্ছিক এবং ফাঁকা রাখা যেতে পারে | উপরের মতই | ইন্টারেক্টিভ কন্ট্রোল cmdCombox সম্পর্কে মন্তব্য |
cmdBtn | ইন্টারেক্টিভ কন্ট্রোল cmdBtn এর বর্ণনা | বোতাম | বোতাম নিয়ন্ত্রণ ইনপুট আইটেম আবদ্ধ নয় | উপরের মতই | ইন্টারেক্টিভ কন্ট্রোল cmdBtn সম্পর্কে মন্তব্য |
ইন্টারেক্টিভ কন্ট্রোল ট্রিগার হওয়ার পর কৌশলটিতে পাঠানো বার্তা (স্ট্রিং):
ইন্টারেক্টিভ কন্ট্রোল cmdNum ইনপুট বাক্সে GetCommand()
কৌশল প্রোগ্রামে ফাংশন বার্তা পাবেনঃcmdBool:true
.
ইন্টারেক্টিভ ডেটা প্রবেশ করানোর পরঃabc
ইন্টারেক্টিভ কন্ট্রোল cmdStr ইনপুট বাক্সে, ইন্টারেক্টিভ কন্ট্রোল cmdStr বোতামটি ক্লিক করুন।GetCommand()
কৌশল প্রোগ্রামে ফাংশন বার্তা পাবেনঃcmdStr:abc
.
ইন্টারেক্টিভ কন্ট্রোল cmdCombox এর ড্রপ-ডাউন বক্সে দ্বিতীয় বিকল্পটি নির্বাচন করার পর, ইন্টারেক্টিভ কন্ট্রোল cmdCombox এর বোতামটি ক্লিক করুন।GetCommand()
কৌশল প্রোগ্রামে ফাংশন বার্তা পাবেনঃcmdCombox:1
, যেখানে 1 হল নির্বাচিত বিকল্পের সূচক, প্রথম বিকল্পের সূচক 0 এবং দ্বিতীয় বিকল্পের সূচক 1।
ইন্টারেক্টিভ কন্ট্রোল cmdBtn এর বোতামে ক্লিক করুন।GetCommand()
কৌশল প্রোগ্রামে ফাংশন বার্তা পাবেনঃcmdBtn
.
কৌশল ইন্টারেক্টিভ কন্ট্রোলের
ইন্টারেক্টিভ কন্ট্রোল দ্বারা সমর্থিত ৫ ধরনের উপাদানঃ
ইন্টারেক্টিভ কন্ট্রোলগুলিকে ইন্টারফেস প্যারামিটার সেটিংসের মতো গ্রুপ করা যেতে পারে। উপাদান কনফিগারেশনে গ্রুপিং সেটিং রয়েছে।
LogStatus
সাধারণ বোতাম নিয়ন্ত্রণ একটি ডেটা স্ট্রাকচারের উদাহরণ হলঃ
{"type": "button", "name": "button1", "cmd": "button1", "description": "This is the first button."}
ডাটা ইনপুট সহ বোতাম নিয়ন্ত্রণ
ব্যবহার করুনinput
ইনপুট কন্ট্রোল অপশন সেট করার অ্যাট্রিবিউট, একটি উদাহরণ ডেটা স্ট্রাকচার সহঃ
{"type": "button", "name": "button2", "cmd": "button2", "description": "This is the second button.", "input": {"name": "number of open positions", "type": "number", "defValue": 1}}
{
"type": "button",
"cmd": "test1",
"name": "test1",
"input": {
"type": "selected",
"name": "selected",
"label": "drop-down box",
"description": "description",
"default": 100,
"settings": {
"multiple": true,
"customizable": true,
"options":[{"name": "A", "value": 100}, {"name": "B", "value": 200}]
}
},
}
ইনপুট ডেটা সেট সহ বোতাম নিয়ন্ত্রণ
ব্যবহার করুনgroup
ইনপুট কন্ট্রোল গ্রুপের জন্য বিকল্পগুলি সেট করার জন্য বৈশিষ্ট্য, একটি উদাহরণ ডেটা কাঠামো সহঃ
{
"type": "button",
"cmd": "open",
"name": "open positions",
"group": [
{"name": "orderType", "description": "下单方式|order type", "type": "selected", "defValue": "market order|pending order"},
{"name": "tradePrice@orderType==1", "description": "交易价格|trade price", "type": "number", "defValue": 100},
{"name": "orderAmount", "description": "委托数量|order amount", "type": "string", "defValue": 100},
{"name": "boolean", "description": "yes/no|boolean", "type": "boolean", "defValue": True}
]
}
{
"type": "button",
"cmd": "test2",
"name": "test2",
"group": [{
"type": "selected",
"name": "selected",
"label": "drop-down box",
"description": "description",
"default": 200,
"group": "group1",
"settings": {
"multiple": true,
"options":[{"name": "A", "value": 100}, {"name": "B", "value": 200}]
}
}, {
"type": "string",
"name": "string",
"label": "input box",
"description": "description",
"default": "ABC",
"group": "group1"
}],
}
এই বোতাম নিয়ন্ত্রণ JSON তথ্য একটি JSON স্ট্রিং মধ্যে এনকোড করুন, তারপর এটি সঙ্গে মোড়ানো`
উদাহরণস্বরূপ জাভাস্ক্রিপ্ট ভাষা নিনঃ
function main() {
var btn = {"type": "button", "name": "button1", "cmd": "button1", "description": "This is the first button."}
LogStatus("`" + JSON.stringify(btn) + "`")
}
এই বোতাম কন্ট্রোলগুলি স্ট্যাটাস বার ফর্মগুলিতেও লেখা যেতে পারে, দয়া করে পড়ুনসিনট্যাক্স গাইডবিস্তারিত উদাহরণের জন্য।
এর গঠনinput
ক্ষেত্রটি একটি একক নিয়ন্ত্রণের কাঠামোর সাথে সামঞ্জস্যপূর্ণgroup
নীচে একটি বিস্তারিত বিবরণ দেওয়া হলঃ
{
"type": "selected", // Control type (required field), supports the following settings: number, string, selected, boolean
"name": "test", // Name (required when used in group)
"label": "topic", // Title (required field)
"description": "desc", // Component tips
"default": 1, // Default value; if the settings field is not set in the current JSON structure, defValue is compatible and can be used instead of default
"filter": "a>1", // Selector. If this field is not set, no filtering (controls are displayed). If this field is set, no filtering (controls are displayed) occurs when the expression is true. Filtering occurs when the expression is false (controls are not displayed)
// For the selector, take the expression a>1 in the current example as an example, a refers to the value of the control with name a under the group field in the structure of type=button. This value is used to determine whether to filter.
"group": "group1", // Grouping
"settings": { ... }, // Component configuration
}
উপাদান কনফিগারেশনsettings
প্রতিটি ক্ষেত্রের বিস্তারিত বর্ণনা দেওয়া হয়েছেঃ
settings.required
: এই বিকল্পটি প্রয়োজনীয় কিনা।settings.disabled
: নিষ্ক্রিয় করা যাবে কি না।settings.min
: কখন বৈধtype=number
, ন্যূনতম মান বা ন্যূনতম স্ট্রিং দৈর্ঘ্য নির্দেশ করে।settings.max
: কখন বৈধtype=number
, সর্বাধিক মান বা সর্বাধিক স্ট্রিং দৈর্ঘ্য নির্দেশ করে।settings.step
: type=number
, বৈধ যখনrender=slider
, ধাপের দৈর্ঘ্য নির্দেশ করে।settings.multiple
: type=selected
বৈধ, যা নির্দেশ করে যে একাধিক নির্বাচন সমর্থিত।settings.customizable
: type=selected
is valid, যা নির্দেশ করে যে কাস্টমাইজেশন সমর্থিত; ব্যবহারকারীরা সরাসরি ড্রপ-ডাউন বক্স নিয়ন্ত্রণে নতুন বিকল্পগুলি সম্পাদনা এবং যুক্ত করতে পারেন। যদি নতুন সম্পাদিত বিকল্পটি নির্বাচন করা হয়, তবে ইন্টারঅ্যাকশনটি ট্রিগার করা হলে বিকল্প দ্বারা প্রতিনিধিত্বকৃত মানের পরিবর্তে বিকল্পের নাম ব্যবহার করা হয়।settings.options
: কখন বৈধtype=selected
, নির্বাচক বিকল্প তথ্য বিন্যাস নির্দেশ করেঃ["option 1", "option 2"]
, [{'name':'xxx','value':0}, {'name':'xxx','value':1}]
.settings.render
: রেন্ডারিং কম্পোনেন্টের ধরন।
কখনtype=number
, settings.render
সেট করা নেই (ডিফল্ট নম্বর ইনপুট বক্স), ঐচ্ছিকঃslider
(স্লাইডার বার),date
(সময় নির্বাচনকারী টাইমস্ট্যাম্প রিটার্ন করে)
কখনtype=string
, settings.render
সেট করা নেই (ডিফল্ট এক-লাইন ইনপুট বক্স) ।textarea
(মাল্টি-লাইন ইনপুট),date
(সময় নির্বাচনকারী yyyy-MM-dd hh:mm:ss রিটার্ন করে),color
(রঙ নির্বাচনকারী #FF00FF প্রদান করে) ।
কখনtype=selected
, settings.render
সেট করা নেই (ডিফল্ট ড্রপ-ডাউন বক্স), ঐচ্ছিকঃsegment
(সেগমেন্ট নির্বাচক) ।type=boolean
বর্তমানে শুধুমাত্র একটি ডিফল্ট চেকবক্স রয়েছে।দ্বিভাষিক সেটিংস সমর্থন করে, উদাহরণস্বরূপঃ'选项 | options'
বর্তমান ভাষা পরিবেশে অনুকূলিত করা হবে;group
উদাহরণস্বরূপ ক্ষেত্র, সম্পূর্ণ উদাহরণ হলঃ
{
type:'selected',
name:'test',
label:'选项|options',
description:'描述|description',
default:0, // Here, the default value is set to 0, which means the value in the option {name:'xxx|yyy',value:0}
filter:'a>1&&a<10',
group:'分组|group',
settings:{
multiple:true,
customizable:true,
options:[{name:'xxx|yyy',value:0}]
}
}
কৌশল পরামিতি
অপশন ট্রেডিং