রিসোর্স লোড হচ্ছে... লোডিং...

ইন্টারেক্টিভ কন্ট্রোল

JavaScript, Python, C++, এবং মাইল্যাঙ্গুয়েজ কৌশলগুলি ইন্টারঅ্যাকশন কন্ট্রোলগুলির সাথে ডিজাইন করা যেতে পারে। কৌশলটির ইন্টারঅ্যাকশন কন্ট্রোলগুলি লাইভ ট্রেডিংয়ে কৌশলটি চালিত হওয়ার সময় চলমান কৌশল প্রোগ্রামে ইন্টারঅ্যাক্টিভ কমান্ডগুলি প্রেরণের জন্য ব্যবহৃত হয়। জন্যJavaScript, Python, এবংC++ভাষা টাইপ কৌশল, ব্যবহারGetCommand()ইন্টারঅ্যাকশন কন্ট্রোল দ্বারা উত্পন্ন বার্তা পেতে কৌশল কোড ফাংশন।

Interactive Control

ইন্টারেক্টিভ কন্ট্রোল থেকে বার্তাগুলি পরিচালনা করার জন্য কৌশলটিতে ডিজাইন করা কোডের সাথে, লাইভ ট্রেডিংয়ের সময় ইন্টারেক্টিভ কন্ট্রোলগুলির ব্যবহার (সীমাবদ্ধ নয়) ফাংশনগুলি সক্ষম করতে পারে, যেমনঃ

  • ম্যানুয়ালি স্ট্র্যাটেজি পজিশন বন্ধ করুন।
  • ডায়নামিকভাবে কৌশল প্যারামিটার পরিবর্তন করুন যাতে কৌশলটি লাইভ ট্রেডিং পুনরায় শুরু না হয়।
  • কৌশলগত যুক্তি পরিবর্তন করুন।
  • নির্দিষ্ট ডিবাগিং তথ্য, তথ্য মুদ্রণ ট্রিগার, এবং নির্দিষ্ট ফাংশন পরীক্ষা করার জন্য ব্যবহৃত হয়.

ইন্টারঅ্যাকশন কন্ট্রোলের ধরন

ভেরিয়েবল (নাম উদাহরণ) বর্ণনা প্রকার ডিফল্ট মান (বর্ণনা) উপাদান কনফিগারেশন (বর্ণনা) মন্তব্যসমূহ
cmdNum ইন্টারেক্টিভ কন্ট্রোল cmdNum এর বর্ণনা সংখ্যা ডিফল্ট মানটি ঐচ্ছিক এবং ফাঁকা রাখা যেতে পারে বর্তমান ইন্টারেক্টিভ আইটেমের সাথে আবদ্ধ ইন্টারফেস কন্ট্রোলগুলি সেট করতে ব্যবহৃত হয়ঃ উপাদান প্রকার, সর্বনিম্ন মান, সর্বাধিক মান, গ্রুপিং ইত্যাদি ইন্টারেক্টিভ কন্ট্রোল cmdNum সম্পর্কে মন্তব্য
cmdBool ইন্টারেক্টিভ কন্ট্রোল cmdBool এর বর্ণনা বুলিয়ান (সত্য/মিথ্যা) ডিফল্ট মান প্রয়োজন, চালু বা বন্ধ উপরের মতই ইন্টারেক্টিভ কন্ট্রোল cmdBool সম্পর্কে মন্তব্য
cmdStr ইন্টারেক্টিভ কন্ট্রোল cmdStr এর বর্ণনা স্ট্রিং ডিফল্ট মানটি ঐচ্ছিক এবং ফাঁকা রাখা যেতে পারে উপরের মতই ইন্টারেক্টিভ কন্ট্রোল cmdStr সম্পর্কে মন্তব্য
cmdCombox ইন্টারেক্টিভ কন্ট্রোল cmdCombox এর বর্ণনা নির্বাচিত ডিফল্ট মানটি ঐচ্ছিক এবং ফাঁকা রাখা যেতে পারে উপরের মতই ইন্টারেক্টিভ কন্ট্রোল cmdCombox সম্পর্কে মন্তব্য
cmdBtn ইন্টারেক্টিভ কন্ট্রোল cmdBtn এর বর্ণনা বোতাম বোতাম নিয়ন্ত্রণ ইনপুট আইটেম আবদ্ধ নয় উপরের মতই ইন্টারেক্টিভ কন্ট্রোল cmdBtn সম্পর্কে মন্তব্য

ইন্টারেক্টিভ কন্ট্রোল ট্রিগার হওয়ার পর কৌশলটিতে পাঠানো বার্তা (স্ট্রিং): ইন্টারেক্টিভ কন্ট্রোল cmdNum ইনপুট বাক্সে 123 ইন্টারেক্টিভ ডেটা প্রবেশ করার পরে, ইন্টারেক্টিভ কন্ট্রোল cmdNum বোতামটি ক্লিক করুন। কৌশল প্রোগ্রামে GetCommand() ফাংশনটি cmdNum:123 বার্তাটি পাবেন। ইন্টারেক্টিভ কন্ট্রোল cmdBool এর সুইচ কন্ট্রোল চালু করুন, এবং ইন্টারেক্টিভ কন্ট্রোল cmdBool এর বোতামটি ক্লিক করুন।GetCommand()কৌশল প্রোগ্রামে ফাংশন বার্তা পাবেনঃcmdBool:true. ইন্টারেক্টিভ ডেটা প্রবেশ করানোর পরঃabcইন্টারেক্টিভ কন্ট্রোল cmdStr ইনপুট বাক্সে, ইন্টারেক্টিভ কন্ট্রোল cmdStr বোতামটি ক্লিক করুন।GetCommand()কৌশল প্রোগ্রামে ফাংশন বার্তা পাবেনঃcmdStr:abc. ইন্টারেক্টিভ কন্ট্রোল cmdCombox এর ড্রপ-ডাউন বক্সে দ্বিতীয় বিকল্পটি নির্বাচন করার পর, ইন্টারেক্টিভ কন্ট্রোল cmdCombox এর বোতামটি ক্লিক করুন।GetCommand()কৌশল প্রোগ্রামে ফাংশন বার্তা পাবেনঃcmdCombox:1, যেখানে 1 হল নির্বাচিত বিকল্পের সূচক, প্রথম বিকল্পের সূচক 0 এবং দ্বিতীয় বিকল্পের সূচক 1। ইন্টারেক্টিভ কন্ট্রোল cmdBtn এর বোতামে ক্লিক করুন।GetCommand()কৌশল প্রোগ্রামে ফাংশন বার্তা পাবেনঃcmdBtn.

উপাদান কনফিগারেশন

কৌশল ইন্টারেক্টিভ কন্ট্রোলের কম্পোনেন্ট কনফিগারেশন বিকল্পটি প্ল্যাটফর্মের 5 ধরণের ইন্টারেক্টিভ কন্ট্রোলের সাথে সামঞ্জস্যপূর্ণ নিয়ন্ত্রণগুলি সেট করতে ব্যবহৃত হয়, কার্যকারিতা উন্নত করে এবং নকশা সহজ করে।

ইন্টারেক্টিভ কন্ট্রোল দ্বারা সমর্থিত ৫ ধরনের উপাদানঃ

  • সংখ্যার ইন্টারেক্টিভ কন্ট্রোল সমর্থিত উপাদান প্রকারঃ ইনপুট বক্স নিয়ন্ত্রণ (ডিফল্ট), সময় নির্বাচক নিয়ন্ত্রণ, এবং স্লাইডিং ইনপুট বার নিয়ন্ত্রণ।
  • বুলিয়ান (সত্য/মিথ্যা) ইন্টারেক্টিভ কন্ট্রোল শুধুমাত্র সুইচ কন্ট্রোল সমর্থিত (ডিফল্ট) ।
  • স্ট্রিং ইন্টারেক্টিভ নিয়ন্ত্রণ সমর্থিত উপাদান প্রকারঃ ইনপুট বক্স নিয়ন্ত্রণ (ডিফল্ট), টেক্সট বক্স নিয়ন্ত্রণ, সময় নির্বাচক নিয়ন্ত্রণ, রঙ নির্বাচক নিয়ন্ত্রণ, মুদ্রা এবং ট্রেডিং কোড।
  • নির্বাচিত ইন্টারেক্টিভ নিয়ন্ত্রণ সমর্থিত উপাদান প্রকারঃ ড্রপ-ডাউন বক্স কন্ট্রোল (ডিফল্ট), সেগমেন্ট কন্ট্রোলার কন্ট্রোল, মুদ্রা এবং ট্রেডিং কোড।
  • বোতাম ইন্টারেক্টিভ নিয়ন্ত্রণ এখানে কেবল একটি বোতাম নিয়ন্ত্রণ (ডিফল্ট) এবং কোনও ইনপুট নিয়ন্ত্রণ নেই।

ইন্টারেক্টিভ কন্ট্রোলগুলিকে ইন্টারফেস প্যারামিটার সেটিংসের মতো গ্রুপ করা যেতে পারে। উপাদান কনফিগারেশনে গ্রুপিং সেটিং রয়েছে।

  • গ্রুপিং কম্পোনেন্ট কনফিগারেশনের Group ইনপুট বক্সে, আপনি একটি গ্রুপ লেবেলে বেশ কয়েকটি কৌশল ইন্টারঅ্যাকশন কন্ট্রোল গ্রুপ করতে একটি লেবেলের জন্য একটি নাম লিখতে পারেন (প্ল্যাটফর্মের পুরানো ফাংশন Interaction Control Grouping প্রতিস্থাপন করে) ।

অবস্থা বারে ইন্টারেক্টিভ কন্ট্রোল

Strategy Interaction কলামে ইন্টারেক্টিভ কন্ট্রোল ডিজাইন করার পাশাপাশি, কৌশল অবস্থা কলামে ইন্টারেক্টিভ কন্ট্রোল ডিজাইন করাও সম্ভব। বর্তমানে শুধুমাত্র ইন্টারেক্টিভ কন্ট্রোল টাইপ বোতাম টাইপ সমর্থিত, যা কলামে পাওয়া যাবে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=selectedis 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}]
    }
}
কৌশল পরামিতি অপশন ট্রেডিং