
এই কৌশলটি চ্যানেল ব্রেকথ্রু তত্ত্বের উপর ভিত্তি করে ডিজাইন করা একটি প্রবণতা ট্র্যাকিং কৌশল। এটি একটি নির্দিষ্ট চক্রের সর্বোচ্চ এবং সর্বনিম্ন মূল্য গণনা করে একটি চ্যানেল তৈরি করে, যখন দাম চ্যানেলটি ভেঙে যায় তখন একটি লেনদেনের সংকেত উত্পন্ন করে। এই কৌশলটি প্রবণতার আচরণে প্রয়োগ করা হয় এবং প্রবণতা ট্র্যাকিংয়ের জন্য দামের প্রবণতা দিকটি ক্যাপচার করতে পারে।
এই কৌশলটি প্রথমে দৈর্ঘ্যযুক্ত সময়ের মধ্যে সর্বোচ্চ এবং সর্বনিম্ন মূল্য গণনা করে, একটি চ্যানেল আপট্র্যাক এবং ডাউনট্র্যাক তৈরি করে। যখন বন্ধের দামটি উপরের ট্র্যাকটি ভেঙে দেয়, তখন অতিরিক্ত করুন; যখন বন্ধের দামটি নীচের ট্র্যাকটি ভেঙে দেয়, তখন খালি করুন। খালি অবস্থানের শর্তটি হল বন্ধের দামটি চ্যানেলের ভিতরে ফিরে আসে।
এই কৌশলটি একই সময়ে length হিসেবে ম্যাপ করা হয়*2 এর ইএমএ নির্দেশক ট্রেন্ডের দিক নির্ধারণ করে। যখন দামগুলি চ্যানেলের ট্র্যাকটি ভেঙে দেয়, যদি ইএমএ উত্থানের প্রবণতায় থাকে তবে এটি একাধিক সিদ্ধান্ত গ্রহণের কার্যকারিতা বাড়ায়।
এই কৌশলটি সামগ্রিকভাবে একটি সহজ ট্রেন্ড ট্র্যাকিং কৌশল যা ট্রেন্ড ক্যাপচার করার জন্য চ্যানেল ব্রেকআউটগুলির উপর ভিত্তি করে। এটির একটি শক্তিশালী ট্রেন্ড ট্র্যাকিং ক্ষমতা রয়েছে যা ট্রেন্ডিংয়ের সময় ভাল আয় করতে পারে। তবে কিছু ঝুঁকিও রয়েছে যা স্থিতিশীলতা বাড়ানোর জন্য আরও অপ্টিমাইজ করা দরকার। প্যারামিটার সমন্বয়, স্টপ লস সেটিং এবং অন্যান্য সূচকগুলির সাথে যুক্ত হয়ে এই কৌশলটি খোলার জন্য ব্যবহার করা যেতে পারে।
/*backtest
start: 2023-11-15 00:00:00
end: 2023-11-22 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
initial_capital = 1000,
default_qty_value = 90,
default_qty_type = strategy.percent_of_equity,
pyramiding = 0,
commission_value = 0.002,
commission_type = strategy.commission.percent,
calc_on_every_tick = true
length_val = 2
max_bars_back = 1440
risk_max_drawdown = 9
strategy("Channel Break",max_bars_back=max_bars_back,initial_capital = initial_capital,default_qty_value = default_qty_value,default_qty_type = default_qty_type,pyramiding = pyramiding,commission_value = commission_value,commission_type = commission_type,calc_on_every_tick = calc_on_every_tick)
// strategy.risk.max_drawdown(risk_max_drawdown, strategy.percent_of_equity)
length = input(title="Length", minval=1, maxval=1000, defval=length_val)
upBound = highest(high, length)
downBound = lowest(low, length)
//plot (upBound)
//plot (downBound)
//plot (close, color=red)
//plot (ema(close,length * 2), color=green)
//
if (not na(close[length]) and time>timestamp(2018, 02, 24, 0, 00) )
strategy.entry("Buy", strategy.long, stop=upBound + syminfo.mintick, comment="Buy")
strategy.entry("Short", strategy.short, stop=downBound - syminfo.mintick, comment="Short")
position = strategy.position_size
//plot(position , title="equity", color=red,style=cross,linewidth=4)
plot(variance(position,2)>0?1:0,style=circles,linewidth=4)
message = ""
if (position > 0)
message = "BTCUSD L: " + tostring(strategy.position_size)
na(position)
if (position < 0)
message = "BTCUSD S: " + tostring(strategy.position_size)
na(position)
alertcondition(variance(strategy.position_size,2) > 0, "test", message )