চ্যানেল ব্রেকআউটের উপর ভিত্তি করে ট্রেন্ড ট্র্যাকিং কৌশল

লেখক:চাওঝাং, তারিখ: ২০২৩-১১-২৩ ১৪ঃ০৪ঃ৫৯
ট্যাগঃ

img

সারসংক্ষেপ

এই কৌশলটি চ্যানেল ব্রেকআউট তত্ত্বের উপর ভিত্তি করে ডিজাইন করা একটি প্রবণতা ট্র্যাকিং কৌশল। এটি একটি নির্দিষ্ট সময়ের মধ্যে সর্বোচ্চ মূল্য এবং সর্বনিম্ন মূল্য ব্যবহার করে একটি চ্যানেল তৈরি করে এবং যখন দাম চ্যানেল থেকে বেরিয়ে আসে তখন ট্রেডিং সংকেত তৈরি করে। এই কৌশলটি ট্রেন্ডিং বাজারের জন্য উপযুক্ত এবং প্রবণতা ট্র্যাকিংয়ের জন্য দামের প্রবণতা দিকটি ক্যাপচার করতে পারে।

কৌশলগত যুক্তি

কৌশলটি প্রথমে চ্যানেলের উপরের ব্যান্ড এবং নীচের ব্যান্ড নির্মাণের জন্য একটি দীর্ঘ সময়ের মধ্যে সর্বোচ্চ মূল্য এবং সর্বনিম্ন মূল্য গণনা করে। যখন বন্ধের দাম উপরের ব্যান্ডটি ভেঙে যায়, তখন একটি দীর্ঘ অবস্থান খোলা হয়। যখন বন্ধের মূল্য নীচের ব্যান্ডটি ভেঙে যায়, তখন একটি শর্ট অবস্থান খোলা হয়। যখন মূল্য চ্যানেলে ফিরে আসে তখন অবস্থানটি বন্ধ হয়ে যাবে।

কৌশলটি প্রবণতা দিক নির্ধারণের জন্য দৈর্ঘ্য * 2 সহ একটি ইএমএ সূচকও গ্রাফ করে। যখন দাম উপরের ব্যান্ডটি ভেঙে দেয়, যদি ইএমএ একটি আপগ্রেড প্রবণতায় থাকে, তবে দীর্ঘ সিদ্ধান্তটি শক্তিশালী হয়।

সুবিধা বিশ্লেষণ

  • এই কৌশলটি মূল্যের প্রবণতা ধরা দিতে পারে এবং উচ্চ মুনাফা সম্ভাবনাময় ট্রেন্ডিং বাজারের জন্য উপযুক্ত।
  • সিগন্যাল তৈরির জন্য চ্যানেল ব্রেকআউট ব্যবহার করা মিথ্যা ব্রেকআউট হ্রাস করতে পারে এবং সংকেতের গুণমান উন্নত করতে পারে।
  • প্রবণতার বিরুদ্ধে ট্রেডিং এড়াতে এবং মূল প্রবণতা ট্র্যাকিং নিশ্চিত করার জন্য EMA এর সাথে সংযুক্ত।

ঝুঁকি বিশ্লেষণ

  • ব্রেকআউট কৌশলগুলি মূল্য সংহতকরণের সময় ঘন ঘন ট্রেড তৈরি করে, যা সম্ভবত উচ্চ ট্রেডিং খরচ সৃষ্টি করে।
  • কৌশলটি প্রবণতা বিপরীত হলে অবিলম্বে অবস্থান থেকে বেরিয়ে আসতে পারে না, যা বড় ক্ষতির দিকে পরিচালিত করতে পারে।
  • কৌশলটি প্যারামিটার সেটিংসে সংবেদনশীল এবং বিভিন্ন প্যারামিটার সম্পূর্ণ ভিন্ন ফলাফলের দিকে পরিচালিত করতে পারে।

অপ্টিমাইজেশান নির্দেশাবলী

  • মিথ্যা ব্রেকআউট এড়াতে MACD, RSI এর মতো অন্যান্য সূচক অন্তর্ভুক্ত করুন।
  • মেশিন লার্নিং অ্যালগরিদম ব্যবহার করে স্বয়ংক্রিয়ভাবে প্যারামিটার অপ্টিমাইজ করা এবং স্থিতিশীলতা উন্নত করা।
  • সর্বাধিক ড্রাউন নিয়ন্ত্রণের জন্য স্টপ লস সেট করুন।

সংক্ষিপ্তসার

সংক্ষেপে, এটি ট্রেন্ডগুলি ক্যাপচার করার জন্য চ্যানেলের ব্রেকআউটের উপর ভিত্তি করে একটি সহজ ট্রেন্ড ট্র্যাকিং কৌশল। এটির শক্তিশালী ট্রেন্ড ট্র্যাকিং ক্ষমতা রয়েছে এবং ট্রেন্ডিং মার্কেটে ভাল রিটার্ন অর্জন করতে পারে। তবে এর কিছু ঝুঁকিও রয়েছে এবং স্থিতিশীলতা উন্নত করতে আরও অপ্টিমাইজেশনের প্রয়োজন। প্যারামিটার টিউনিং, স্টপ লস সেটিং এবং অন্যান্য সূচকগুলির সাথে একত্রিত করে এই কৌশলটি লাইভ ট্রেডিংয়ে প্রয়োগ করা যেতে পারে।


/*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 )

আরো