এই কৌশলটি সর্বশেষ সর্বোচ্চ মূল্য (শেষ বুল) এবং সর্বশেষ সর্বনিম্ন মূল্য (শেষ বিয়ার) গণনা করে। এটি তারপরে বর্তমান মূল্যকে শেষ বুল এবং শেষ বিয়ারের সাথে তুলনা করে নির্ধারণ করে যে দামটি একটি নির্দিষ্ট পরিসরে প্রবেশ করেছে কিনা এবং এইভাবে ট্রেডিং সংকেত তৈরি করে। যখন দামটি নির্দিষ্ট শতাংশে শেষ বুলের উপরে উঠে যায় তখন এটি দীর্ঘ হয় এবং যখন দামটি নির্দিষ্ট শতাংশে শেষ বিয়ারের নীচে পড়ে তখন এটি সংক্ষিপ্ত হয়।
কৌশলটি প্রথমে সর্বশেষ সর্বোচ্চ মূল্য lastbull এবং সর্বশেষ সর্বনিম্ন মূল্য lastbear গণনা করে। তারপর এটি lastbull এর তুলনায় বর্তমান মূল্য বন্ধের পরিবর্তনের শতাংশ ddl এবং lastbear এর তুলনায় পরিবর্তনের শতাংশ dds গণনা করে।
যখন ddl কনফিগার করা লং সিগন্যাল থ্রেশহোল্ড সিগন্যাললং এর চেয়ে কম হয়, তখন একটি লং সিগন্যাল আপ তৈরি হয়। যখন dds কনফিগার করা সংক্ষিপ্ত সিগন্যাল থ্রেশহোল্ড সিগন্যালশর্ট এর চেয়ে বেশি হয়, তখন একটি সংক্ষিপ্ত সিগন্যাল dn তৈরি হয়।
লং সিগন্যাল পাওয়ার পরে, এটি দীর্ঘ অবস্থান খোলে যদি প্রান্তিক প্যারামিটারটি সত্য হয়। সংক্ষিপ্ত সংকেত পাওয়ার পরে, এটি সংক্ষিপ্ত অবস্থান খোলে যদি প্রান্তিক প্যারামিটারটি সত্য হয়। অবস্থান আকার মূলধন অ্যাকাউন্ট ইক্যুইটি থেকে গণনা করা হয়।
এটি লং পজিশন বন্ধ করে দেয় যখন লং পজিশন খোলার পর দাম বেড়ে যায় এবং লং পজিশন খোলার পর দাম কমে গেলে শর্ট পজিশন বন্ধ করে দেয়।
এই কৌশলটি প্রবণতা এবং ব্যাপ্তি বিশ্লেষণকে একত্রিত করে। এটি প্রবণতা ধরতে পারে এবং ব্যাপ্তি ব্রেকআউট থেকে ট্রেডিং সংকেত তৈরি করতে পারে। সহজ প্রবণতা ট্র্যাকিং কৌশলগুলির তুলনায়, এটি ব্যাপ্তি ব্রেকআউটের পরে দ্রুত নতুন প্রবণতা দিক ধরতে পারে।
বিভিন্ন পণ্যের জন্য পরামিতিগুলি অত্যন্ত কনফিগারযোগ্য। উল্লেখযোগ্য ঘটনা এড়ানোর জন্য ট্রেডিং সময় পরিসীমা কনফিগার করা যেতে পারে।
এই কৌশলটিতে প্রতি ট্রেডের ক্ষতি সীমাবদ্ধ করার জন্য কোনও স্টপ লস প্রক্রিয়া নেই। ট্রেডিং ব্যাপ্তি যখন বড় হয় তখন পজিশন সাইজিং দামের ওঠানামা দ্বারা ব্যাপকভাবে প্রভাবিত হতে পারে।
স্টপ লস প্রতি ট্রেড ক্ষতি সীমাবদ্ধ করতে যোগ করা যেতে পারে। অবস্থান আকার অ্যালগরিদম অবস্থান আকার স্থিতিশীল করতে পণ্য উপর ভিত্তি করে কাস্টমাইজ করা যেতে পারে।
এই কৌশলটি ট্রেন্ড বিশ্লেষণ এবং ব্যাপ্তি ব্রেকআউটকে একত্রিত করে ট্রেডিং সংকেত তৈরি করে, যা নতুন প্রবণতা ধরতে পারে এবং ব্যাপ্তি সীমাবদ্ধ বৈশিষ্ট্যগুলির সুবিধা নিতে পারে। প্যারামিটারগুলি বিভিন্ন পণ্যের জন্য অত্যন্ত কনফিগারযোগ্য। আরও জটিল বাজারের পরিবেশের সাথে খাপ খাইয়ে নেওয়ার জন্য অপ্টিমাইজেশনের জন্য প্রচুর জায়গা রয়েছে।
/*backtest start: 2023-01-25 00:00:00 end: 2024-01-31 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //Noro //2019 //@version=4 strategy(title = "Noro's DDL Strategy", shorttitle = "DDL str", overlay = false, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 3) //Settings needlong = input(true, title = "Long") needshort = input(true, title = "Short") capital = input(100, defval = 100, minval = 1, maxval = 10000, title = "Lot") signalshort = input(3.0, title = "Short, %") signallong = input(-3.0, title = "Long, %") fromyear = input(1900, defval = 1900, minval = 1900, maxval = 2100, title = "From Year") toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year") frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month") tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month") fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From day") today = input(31, defval = 31, minval = 01, maxval = 31, title = "To day") //Levels bull = close > close[1] ? 1 : 0 bear = close < close[1] ? 1 : 0 lastbull = 0.0 lastbull := bull ? close : lastbull[1] lastbear = 0.0 lastbear := bear ? close : lastbear[1] //Signals ddl = ((close / lastbull) - 1) * 100 up = ddl < signallong dds = ((close / lastbear) - 1) * 100 dn = dds > signalshort //Lines plot(dds, style = plot.style_area, color = color.red, transp = 0) plot(ddl, style = plot.style_area, color = color.lime, transp = 0) plot(0, color = color.black, linewidth = 2, transp = 0) //Background col = (up and needlong) or (dn and needshort) ? color.yellow : na bgcolor(col, transp = 20) //Orders lot = 0.0 lot := strategy.position_size == 0 ? strategy.equity / close * capital / 100 : lot[1] truetime = true if up strategy.entry("Long", strategy.long, lot, when = needlong and truetime) if dn strategy.entry("Short", strategy.short, lot, when = needshort and truetime) if strategy.position_size > 0 and close > open strategy.entry("Close", strategy.short, 0) if strategy.position_size < 0 and close < open strategy.entry("Close", strategy.long, 0)