
এই কৌশলটির নাম হল প্রবণতা-অনুসরণ-ভিত্তিক গতিশীল বিরতি কৌশল। এই কৌশলটি বর্তমান প্রবণতার দিক নির্ধারণের জন্য সুপার ট্রেন্ডিং সূচক ব্যবহার করে এবং K-লাইন সত্তার দিকনির্দেশের সাথে মিলিত হয়ে প্রবণতা অনুসরণ করে, গতিশীল বিরতি লেনদেনের জন্য।
এই কৌশলটি মূলত সুপারট্রেন্ড সূচকের উপর নির্ভর করে যা বর্তমান প্রবণতার দিক নির্ধারণ করে। সুপারট্রেন্ড সূচকটি গড় বাস্তব তরঙ্গের ব্যাপ্তি (এটিআর) এর সাথে মিলিত হয় যা ট্র্যাকের উপরে এবং নীচে গণনা করা হয়, দামটি ট্র্যাকের উপরে উঠলে এটি একটি বিউটি সংকেত এবং দামটি ট্র্যাকের নীচে পড়লে এটি একটি বিউটি সংকেত।
যখন সুপার ট্রেন্ড সূচকটি একটি উত্থান হিসাবে বিচার করা হয়, তখন এই K লাইনটি লাল সত্তা ((ক্লোজিং মূল্য ওপেন মূল্যের চেয়ে কম) হলে, এটি বেশি হয়; যখন সুপার ট্রেন্ড সূচকটি একটি পতনশীল প্রবণতা হিসাবে বিচার করা হয়, তখন এই K লাইনটি সবুজ সত্তা (ক্লোজিং মূল্য ওপেন মূল্যের চেয়ে বেশি) হলে, এটি খালি হয়। এইভাবে, প্রবণতা ট্র্যাকিংয়ের অধীনে একটি গতিশীল ব্রেকডাউন লেনদেন করা হয়।
এই কৌশলটি প্রবণতা বিচার এবং গতিশীলতার বৈশিষ্ট্যগুলির সাথে মিলিত হয়, যা কার্যকরভাবে মিথ্যা ব্রেকআউটগুলি ফিল্টার করতে এবং ট্রেডিং সিগন্যালের কার্যকারিতা বাড়িয়ে তোলে। এছাড়াও, ট্রেডিংয়ের প্রবণতা অনুসরণ করা, বিপরীতমুখী অপারেশন এড়ানো এবং মুনাফার সম্ভাবনাকে ব্যাপকভাবে বাড়িয়ে তোলে।
সুবিধাগুলো নিম্নে তুলে ধরা হলোঃ
এই কৌশলটি নিম্নলিখিত ঝুঁকির সাথে জড়িতঃ
এর প্রতিকার নিম্নরূপঃ
এই কৌশলটি নিম্নলিখিত দিকগুলি থেকে অপ্টিমাইজ করা যেতে পারেঃ
এই কৌশলটি সামগ্রিকভাবে মাঝারি এবং স্বল্পমেয়াদী অবস্থানের জন্য খুব উপযুক্ত। প্রবণতা বিচার এবং ব্রেকডাউন গতির বৈশিষ্ট্যগুলির সাথে মিলিত, এটি কার্যকরভাবে শব্দটি ফিল্টার করতে পারে, ব্যবসায়ের বিজয়ী হার বাড়িয়ে তুলতে পারে। একই সাথে এই কৌশলটিতে একটি নির্দিষ্ট পরামিতি অপ্টিমাইজেশনের স্থান রয়েছে, আরও অপ্টিমাইজেশনের মাধ্যমে আরও ভাল কৌশল কার্যকারিতা অর্জন করা যেতে পারে।
/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//Noro
//2018
//@version=2
strategy("Noro's SuperTrend Strategy v1.0", shorttitle = "ST str 1.0", 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 = "Lot, %")
cloud = input(25, defval = 25, minval = 5, maxval = 50, title = "cloud, % of ATR")
Factor = input(title = "Super Trend", defval = 3, minval = 1, maxval = 100)
ATR = input(title = "ATR", defval = 7, minval = 1,maxval = 100)
centr = input(true, defval = true, title = "need center of ATR?")
border = input(false, defval = false, title = "need border?")
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")
//Super Trend ATR 1
src = close
Up=hl2-(Factor*atr(ATR))
Dn=hl2+(Factor*atr(ATR))
TUp=close[1]>TUp[1]? max(Up,TUp[1]) : Up
TDown=close[1]<TDown[1]? min(Dn,TDown[1]) : Dn
Trend = close > TDown[1] ? 1: close< TUp[1]? -1: nz(Trend[1],1)
Tsl1 = Trend==1? TUp: TDown
Tsl2 = Trend==1? TDown: TUp
limit = (Tsl1 - Tsl2) / 100 * cloud
upcloud = Tsl1 - limit
dncloud = Tsl2 + limit
//Cloud
linecolor = Trend == 1 ? green : red
centercolor = centr == true ? blue : na
cloudcolor = Trend == 1 ? green : red
cline = (Tsl1 + Tsl2) / 2
P1 = plot(Tsl1, color = border == false ? na : linecolor , style = line , linewidth = 1,title = "SuperTrend ATR-1")
P2 = plot(Tsl2, color = border == false ? na : linecolor , style = line , linewidth = 1,title = "SuperTrend ATR-2")
P3 = plot(cline, color = centercolor , style = line , linewidth = 1,title = "SuperTrend Center")
P4 = plot(upcloud, color = border == false ? na : linecolor , style = line , linewidth = 1,title = "SuperTrend Center+1")
P5 = plot(dncloud, color = border == false ? na : linecolor , style = line , linewidth = 1,title = "SuperTrend Center-1")
fill(P1, P4, color = linecolor == red ? red : lime, transp = 50)
fill(P2, P5, color = linecolor == red ? red : lime, transp = 50)
//Signals
up = Trend == 1 and close < open //and low < cline
dn = Trend == -1 and close > open //and high > cline
//Trading
size = strategy.position_size
lot = 0.0
lot := size == 0 ? strategy.equity / close * capital / 100 : lot[1]
if up
strategy.entry("Long", strategy.long, needlong ? lot : 0)
if dn
strategy.entry("Short", strategy.short, needshort ? lot : 0)