
এই কৌশলটি K-লাইনগুলির সর্বোচ্চ এবং সর্বনিম্ন দামের পরিবর্তনের উপর ভিত্তি করে বাজারের ঝাঁকুনির দিকনির্দেশ এবং শক্তি নির্ধারণ করে, সামগ্রিক প্রবণতা নির্ধারণের জন্য সমান্তরাল লাইনগুলির সাথে মিলিত হয়, যা সংক্ষিপ্ত লাইন অপারেশনকে সম্ভব করে। এটি মূলত ঝাঁকুনির তুলনামূলকভাবে সুস্পষ্ট জাতের জন্য প্রযোজ্য।
এই কৌশলটি প্রথমে কে লাইনের সর্বোচ্চ এবং সর্বনিম্ন দামের পরিবর্তনের বিচার করে, যদি সর্বোচ্চ দাম বৃদ্ধি পায় তবে এটি 1 হিসাবে চিহ্নিত করা হয়, যদি সর্বনিম্ন দাম কমে যায় তবে এটি -1 হিসাবে চিহ্নিত করা হয়, অন্যথায় 0 হিসাবে চিহ্নিত করা হয়। তারপরে, একটি নির্দিষ্ট সময়ের মধ্যে সর্বোচ্চ এবং সর্বনিম্ন দামের পরিবর্তনের গড় গণনা করে, বাজারটির অস্থিরতার দিক এবং শক্তি নির্ধারণ করে।
একই সময়ে, কৌশলটি সাম্প্রতিক সময়ের সর্বোচ্চ এবং সর্বনিম্ন মূল্য রেকর্ড করে। যখন গড় লাইন ট্রেন্ডের বিপরীত দিকে যায়, তখন রেকর্ড করা দামের সাথে মিলিত মূল্যের মূল মূল্য নির্ধারণ করে, যা স্টপ লস এবং স্টপ স্টপ স্তর গঠন করে।
প্রবেশের দিকটি সমান্তরালভাবে বিচার করা হয়, শীর্ষস্থানীয়গুলি উপরের রেলের উপরে কেনা হয়, খালি মাথাগুলি নীচের রেলের নীচে বিক্রি হয়। স্টপ লস এবং স্টপ স্টপ স্তরগুলি মূল মূল্যের স্তরগুলি বিচার করে গঠিত হয়।
এই কৌশলটির সবচেয়ে বড় সুবিধা হ’ল সংক্ষিপ্ত রেখার অস্থিরতার বৈশিষ্ট্যগুলিকে পুরোপুরি ব্যবহার করা। মূল মূল্যের স্তরের বিচার করে স্টপ লস স্টপ তৈরি করা, কৌশলটি সুস্পষ্ট নিয়মের অধীনে পরিচালিত করে। একই সাথে প্রবণতা বিচারের সাথে মিলিত হয়ে অপ্রয়োজনীয় ক্ষতি এড়ানোর জন্য প্রতিকূল আচরণগুলি ফিল্টার করা।
এই কৌশলটি নিম্নলিখিত ঝুঁকির সম্মুখীন হয়েছেঃ
“আমি মনে করি, আমরা আমাদের লক্ষ্যে পৌঁছাতে পারবো না।
দামের স্টপ লেভেল অতিক্রম করলে অপ্রয়োজনীয় ক্ষতি হয়। যথাযথভাবে স্টপ লেভেলকে প্রশস্ত করা যায়।
প্রবণতা সম্পর্কে ভুল ধারণা, ঘটনাটি মিস করা বা বিপরীত অপারেশন করা যেতে পারে। গড় লাইন প্যারামিটারগুলি যথাযথভাবে সামঞ্জস্য করা যেতে পারে।
এই কৌশলটি নিম্নলিখিত দিকগুলি থেকে উন্নত করা যেতে পারেঃ
বিভিন্ন জাতের বৈশিষ্ট্যের সাথে সামঞ্জস্যপূর্ণ গড়-রেখা চক্রের সমন্বয়।
স্টপ-অফ-লস পরিসীমা অপ্টিমাইজ করুন, লাভ এবং ক্ষতির মধ্যে ভারসাম্য বজায় রাখুন।
অন্য সূচকগুলি যুক্ত করুন যাতে ভুল অপারেশনগুলি এড়ানো যায়।
স্বয়ংক্রিয় ক্ষতি বন্ধ করুন এবং সর্বোচ্চ ক্ষতি নিয়ন্ত্রণ করুন।
এই কৌশলটি সামগ্রিকভাবে একটি সংক্ষিপ্ত লাইন অস্থিরতার বৈশিষ্ট্য ব্যবহার করার কৌশল। দামের ছোট পরিসরের অপারেশন থেকে লাভ অর্জনের জন্য যথাযথভাবে ব্যবহার করুন। ঝুঁকিগুলি কঠোরভাবে নিয়ন্ত্রণ করুন এবং প্রবণতা খারাপ হলে সময়মতো বন্ধ করুন। স্থিতিশীল উপার্জনের জন্য আরও সতর্কতার সাথে বিনিয়োগকারীদের জন্য উপযুক্ত। যদি প্যারামিটারগুলি যথাযথভাবে সামঞ্জস্য করা হয় তবে অস্থিরতার পরিস্থিতিতে ভাল ফলাফল পাওয়া যায়।
/*backtest
start: 2024-01-16 00:00:00
end: 2024-01-16 22:45:00
period: 15m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//Noro
//2018
//@version=3
strategy(title = "Noro's ZZ-3 Strategy", shorttitle = "ZZ-3 str", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0)
//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(true, defval = true, title = "Short")
capital = input(100, defval = 100, minval = 1, maxval = 10000, title = "Capital, %")
corr = input(0.0, title = "Correction, %")
bars = input(1, minval = 1)
revers = input(false, defval = false, title = "revers")
showll = input(true, defval = true, title = "Show Levels")
showbg = input(false, defval = false, title = "Show Background")
showar = input(false, defval = false, title = "Show Arrows")
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
hbar = 0
hbar := high > high[1] ? 1 : high < high[1] ? -1 : 0
lbar = 0
lbar := low > low[1] ? 1 : low < low[1] ? -1 : 0
uplevel = 0.0
dnlevel = 0.0
hh = highest(high, bars + 1)
ll = lowest(low, bars + 1)
uplevel := hbar == -1 and sma(hbar, bars)[1] == 1 ? hh + ((hh / 100) * corr) : uplevel[1]
dnlevel := lbar == 1 and sma(lbar, bars)[1] == -1 ? ll - ((ll / 100) * corr) : dnlevel[1]
//Lines
upcol = na
upcol := showll == false ? na : uplevel != uplevel[1] ? na : lime
plot(uplevel, color = upcol, linewidth = 2)
dncol = na
dncol := showll == false ? na : dnlevel != dnlevel[1] ? na : red
plot(dnlevel, color = dncol, linewidth = 2)
//Background
size = strategy.position_size
trend = 0
trend := size > 0 ? 1 : size < 0 ? -1 : high >= uplevel ? 1 : low <= dnlevel ? -1 : trend[1]
col = showbg == false ? na : trend == 1 ? lime : trend == -1 ? red : na
bgcolor(col)
//Arrows
longsignal = false
shortsignal = false
longsignal := size > size[1]
shortsignal := size < size[1]
plotarrow(longsignal and showar and needlong ? 1 : na, colorup = blue, colordown = blue, transp = 0)
plotarrow(shortsignal and showar and needshort ? -1 : na, colorup = blue, colordown = blue, transp = 0)
//Trading
lot = 0.0
lot := size != size[1] ? strategy.equity / close * capital / 100 : lot[1]
if uplevel > 0 and dnlevel > 0 and revers == false
strategy.entry("Long", strategy.long, needlong == false ? 0 : lot, stop = uplevel, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))
strategy.entry("Short", strategy.short, needshort == false ? 0 : lot, stop = dnlevel, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))
if uplevel > 0 and dnlevel > 0 and revers == true
strategy.entry("Long", strategy.long, needlong == false ? 0 : lot, limit = dnlevel, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))
strategy.entry("Short", strategy.short, needshort == false ? 0 : lot, limit = uplevel, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))
if time > timestamp(toyear, tomonth, today, 23, 59)
strategy.close_all()