
এই কৌশলটি মূল্য চ্যানেল সূচক এবং MACD সূচককে একত্রিত করে, যাতে একাধিক সময় ফ্রেমে প্রবণতা ট্র্যাকিং এবং ওভারব্লু ওভারসোলের বিচার করা যায়, যার ফলে ক্রয়-বিক্রয় সিদ্ধান্ত নেওয়া যায়। কৌশলটি একই সাথে স্টপ লস স্টপকে ঝুঁকি পরিচালনার জন্য সংযুক্ত করে।
প্রাইস চ্যানেল সূচক সর্বোচ্চ এবং সর্বনিম্ন দামের ইএমএ গড়ের উপর ভিত্তি করে একটি মূল্য চ্যানেল তৈরি করে, মূল্যের মাধ্যমে চ্যানেলের প্রবণতা বিচার করে; MACD সূচকটি পলি-এয়ার মুভমেন্টের বিচার করে, শূন্য অক্ষের উপরে মাল্টি-হেড মার্কেট এবং নীচে শূন্য বাজার।
এই কৌশলটির ট্রেডিং সিগন্যালগুলি নিম্নলিখিত দিকগুলি থেকে আসেঃ
ম্যাকড হিস্টোগ্রাম উল্টানো-লাল-এন্টার, উল্টানো-সবুজ-খালি-এন্টার
মূল্য চ্যানেলের নীচে এবং MACD শূন্য অক্ষের নীচে যখন খালি Enter
যখন দাম চ্যানেলের শীর্ষের কাছাকাছি থাকে এবং MACD শূন্য অক্ষের উপরে থাকে
MACD শূন্য অক্ষ অতিক্রম করলে Enter বহু মাথা, শূন্য অক্ষ অতিক্রম করলে Enter খালি মাথা
Exit সিগন্যাল আসে স্টপ লস স্টপ সেটিং থেকে।
মাল্টিমিটার পোর্টফোলিও যাচাইকরণ, ভুয়া ব্রেকডাউন এড়ানো
বিভিন্ন টাইম ফ্রেম সূচক সমন্বয়, প্রবণতা দিক নির্ণয় করতে আরো নির্ভরযোগ্য
একক ক্ষতির কার্যকর নিয়ন্ত্রণের জন্য একটি স্টপ লস স্টপিং সিস্টেম চালু করা
প্যারামিটার অপ্টিমাইজেশান স্পেস সীমিত, ওভার অপ্টিমাইজ করা সহজ
দামের চ্যানেলের পরামিতিগুলি খুব কম সেট করা হলে, আপনি অনেক কিছু হারাবেন
স্টপ লস পয়েন্ট খুব ছোট এবং বড় ক্ষতির সম্মুখীন হবে
সমাধানঃ
ওয়াক ফরওয়ার্ড পদ্ধতি ব্যবহার করে, অপ্টিমাইজড প্যারামিটার এড়ানো
মূল্য চ্যানেল প্যারামিটারগুলিকে স্বনির্ধারিত প্যারামিটার হিসাবে সেট করুন
গতিশীলভাবে স্টপ দূরত্ব সামঞ্জস্য করতে ওভাররাইটিং স্টপ চালু করুন
MACD প্যারামিটার সমন্বয় অপ্টিমাইজ করুন
অপ্টিমাইজড প্রাইস চ্যানেল প্যারামিটার স্বনির্ধারিত গণনা
আরও ফিল্টারিং শর্ত যুক্ত করুন যাতে ভুয়া ব্রেকডাউনগুলি আরও কার্যকর হয়
এই কৌশলটি মূল্য চ্যানেল সূচক এবং এমএসিডি সূচকগুলির সুবিধাগুলিকে সংহত করে, যুক্তিসঙ্গত পরামিতি সেট এবং অপ্টিমাইজেশনের জায়গা রয়েছে, প্রবণতা বিচার এবং ওভারবয় ওভারসেলিংয়ের বিচারে কার্যকর, ক্ষতি-বন্ধক ব্যবস্থা একক ক্ষতির ঝুঁকি নিয়ন্ত্রণ করে, এটি একটি স্থিতিশীল ট্রেডিং কৌশল। পরবর্তীতে পরামিতি অপ্টিমাইজেশন, ফিল্টার শর্ত যুক্ত করা, ক্ষতি-বন্ধক ব্যবস্থার অপ্টিমাইজেশন ইত্যাদির ক্ষেত্রে উন্নতি করা যেতে পারে।
/*backtest
start: 2022-12-01 00:00:00
end: 2023-12-07 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
strategy("Sonic R + Barcolor MACD", overlay=true)
HiLoLen = input(34, minval=2,title="High Low channel Length")
pacL = ema(low,HiLoLen)
pacH = ema(high,HiLoLen)
// Plot the Price Action Channel (PAC) base on EMA high,low and close//
L=plot(pacL, color=yellow, linewidth=1, title="High PAC EMA",transp=0)
H=plot(pacH, color=yellow, linewidth=1, title="Low PAC EMA",transp=0)
fastLength = input(12)
slowlength = input(26)
MACDLength = input(9)
MACD = ema(close, fastLength) - ema(close, slowlength)
aMACD = ema(MACD, MACDLength)
delta = MACD - aMACD
hisup= iff(delta>delta[1] and delta>0, 1,
iff(delta<delta[1], -1, nz(hisup[1], 0)))
hisdown = iff(delta<delta[1] and delta<0, 1,
iff(delta>delta[1], -1, nz(hisdown[1], 0)))
barcolor(hisup==1 and MACD>0 ? lime: hisdown==1 and MACD<0 ? red : blue )
//SR
PeriodLookBack = input(34)
xHighest = highest(PeriodLookBack)
xLowest = lowest(PeriodLookBack)
Trend= close>xHighest[1] ? 1: close< xLowest[1]?-1 : nz(Trend[1],0)
// Strategy//
conbuy= hisdown==1 or MACD<0 ? 1: hisup[5]==1 and MACD[5]>0 ?-1 : nz(conbuy[1],0)
gobuy= conbuy==1 and close-open<2*(pacH-pacL) and high-close<(pacH-pacL)/2 and hisup==1 and MACD>0 and close-pacH<1.5*(pacH-pacL) and close>open and high-close<close-open and close>pacH
consell= hisup==1 or MACD>0 ?1 : hisdown[5]==1 and MACD[5]<0 ?-1 : nz(consell[1],0)
gosell= consell==1 and open-close<2*(pacH-pacL) and close-low<(pacH-pacL)/2 and hisdown==1 and MACD<0 and pacL-close<1.5*(pacH-pacL) and close<open and close-low<open-close and close<pacL
if(gobuy)
strategy.entry("Buy",strategy.long)
if(gosell)
strategy.entry("Sell",strategy.short)
//if(Trend==-1 and close<pacL)
// strategy.close("Buy")
//if(Trend==1 and close>pacH)
// strategy.close("Sell")
////////////// TP and SL//
SL = input(defval=100.00, title="Stop Loss Point", type=float, step=1)
rr= input(defval=0.1,title="Reward/Risk",type=float)
useTPandSL = input(defval = false, title = "Use exit order strategy?")
Stop = SL
Take=SL*rr
Q = 100
if(useTPandSL)
strategy.exit("Out Long", "Buy", qty_percent=Q, profit= Take, loss=Stop)
strategy.exit("Out Short", "Sell", qty_percent=Q, profit= Take, loss=Stop)