ডনচিয়ান চ্যানেলের বাইরে বেরিয়ে আসার কৌশল

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

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

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

এন্ট্রি নিয়মগুলি হলঃ যখন মূল্য একটি রিভিউ সময়ের সর্বোচ্চ উচ্চতার উপরে (উদাহরণস্বরূপ 20 দিন) এবং যখন মূল্য অন্য রিভিউ সময়ের সর্বনিম্ন নিম্নের নীচে (উদাহরণস্বরূপ 10 দিন) ভাঙ্গবে তখন দীর্ঘ যান।

এক্সআইটি নিয়মগুলি হলঃ লং পজিশনগুলি চ্যানেলের মাঝারি বা নিম্নতম ব্যান্ডে বন্ধ করা হয়; শর্ট পজিশনগুলি মাঝারি বা উপরের ব্যান্ডে বন্ধ করা হয়। মাঝারি ব্যান্ডটি একটি নির্দিষ্ট সময়ের মধ্যে সর্বোচ্চ উচ্চ এবং সর্বনিম্ন নিম্নের গড় (যেমন 10 দিন) ।

উদাহরণস্বরূপ, নিম্নলিখিত পরামিতিগুলির সাথে বিটিসি ইউএসডিটি ট্রেডিংঃ

  • দীর্ঘ প্রবেশের পুনর্বিবেচনার সময়কালঃ ২০ দিন
  • লং স্টপ লস রিভলভ পিরিয়ডঃ ১০ দিন
  • মাঝারি ব্যাংকে স্টপ লসঃ হ্যাঁ
  • সংক্ষিপ্ত এন্ট্রি রিভিউ সময়কালঃ ১০ দিন
  • শর্ট স্টপ লস রিভলভ পিরিয়ডঃ ২০ দিন
  • মাঝারি ব্যাংকে স্টপ লসঃ হ্যাঁ

এন্ট্রি এবং স্টপ নিয়ম হবেঃ

  • যখন দাম ২০ দিনের সর্বোচ্চের উপরে যায় তখন লম্বা হয়ে যান
  • দীর্ঘ স্টপ লস ১০ দিনের সর্বোচ্চ ও সর্বনিম্নের মাঝখানে
  • যখন দাম ১০ দিনের সর্বনিম্নের নিচে পড়ে তখন শর্ট করুন
  • শর্ট স্টপ লস ২০ দিনের সর্বোচ্চ ও সর্বনিম্নের মাঝখানে

পুনর্বিবেচনার সময়কালকে গতিশীলভাবে সামঞ্জস্য করে, কৌশলটি বাজারের চক্র জুড়ে অনুকূলিত করা যেতে পারে যাতে আরও ভাল পুরষ্কার / ঝুঁকি সহ প্রবণতা ধরা যায়।

সুবিধা

  • ব্রেকআউটগুলি প্রবণতার দিকটি খুব তাড়াতাড়ি সনাক্ত করতে পারে
  • মূল্যের কাছাকাছি হ্রাস বন্ধ করুন ঝুঁকি পরিচালনা করতে সহায়তা করুন
  • নমনীয় পরামিতি বিভিন্ন চক্রের জন্য অপ্টিমাইজেশান অনুমতি দেয়

ঝুঁকি

  • ব্রেকআউটের জন্য প্রবণতা, বৈধতা নিশ্চিত করতে হবে
  • শেকআউটের ঝুঁকিতে থাকা স্টপ লস বন্ধ করুন
  • প্যারামিটারগুলিকে খারাপভাবে সামঞ্জস্য করা অতিরিক্ত ট্রেডিং বা অপর্যাপ্ত স্টপগুলির দিকে পরিচালিত করতে পারে

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

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


/*backtest
start: 2023-08-14 00:00:00
end: 2023-09-13 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Donchian Channel Strategy", overlay=true, default_qty_type= strategy.percent_of_equity, initial_capital = 1000, default_qty_value = 20, commission_type=strategy.commission.percent, commission_value=0.036)

//Long optopns
buyPeriodEnter = input(10, "Channel Period for Long enter position")
buyPeriodExit = input(10, "Channel Period for Long exit position")
isMiddleBuy = input(true, "Is exit on Base Line? If 'no' - exit on bottom line")
takeProfitBuy = input(2.5, "Take Profit (%) for Long position")
isBuy = input(true, "Allow Long?")

//Short Options
sellPeriodEnter = input(20, "Channel Period for Short enter position")
sellPeriodExit = input(20, "Channel Period for Short exit position")
isMiddleSell = input(true, "Is exit on Base Line? If 'no' - exit on upper line")
takeProfitSell = input(2.5, "Take Profit (%) for Short position")
isSell = input(true, "Allow Short?")

// Test Start
startYear = input(2005, "Test Start Year")
startMonth = input(1, "Test Start Month")
startDay = input(1, "Test Start Day")
startTest = timestamp(startYear,startMonth,startDay,0,0)

//Test End
endYear = input(2050, "Test End Year")
endMonth = input(12, "Test End Month")
endDay = input(30, "Test End Day")
endTest = timestamp(endYear,endMonth,endDay,23,59)

timeRange = time > startTest and time < endTest ? true : false

// Long&Short Levels
BuyEnter = highest(buyPeriodEnter)
BuyExit = isMiddleBuy ? ((highest(buyPeriodExit) + lowest(buyPeriodExit)) / 2): lowest(buyPeriodExit)

SellEnter = lowest(sellPeriodEnter)
SellExit = isMiddleSell ? ((highest(sellPeriodExit) + lowest(sellPeriodExit)) / 2): highest(sellPeriodExit)

// Plot Data
plot(BuyEnter, style=plot.style_line, linewidth=2, color=color.blue, title="Buy Enter")
plot(BuyExit, style=plot.style_line, linewidth=1, color=color.blue, title="Buy Exit", transp=50)
plot(SellEnter, style=plot.style_line, linewidth=2, color=color.red, title="Sell Enter")
plot(SellExit, style=plot.style_line, linewidth=1, color=color.red, title="Sell Exit", transp=50)

// Calc Take Profits
TakeProfitBuy = 0.0
TakeProfitSell = 0.0
if strategy.position_size > 0
    TakeProfitBuy := strategy.position_avg_price*(1 + takeProfitBuy/100)
    
if strategy.position_size < 0
    TakeProfitSell := strategy.position_avg_price*(1 - takeProfitSell/100)

// Long Position    
if isBuy and timeRange
    strategy.entry("Long", strategy.long, stop = BuyEnter, when = strategy.position_size == 0) 
    
strategy.exit("Long Exit", "Long", stop=BuyExit, limit = TakeProfitBuy, when = strategy.position_size > 0)

// Short Position
if isSell and timeRange
    strategy.entry("Short", strategy.short, stop = SellEnter, when = strategy.position_size == 0) 
    
strategy.exit("Short Exit", "Short", stop=SellExit, limit = TakeProfitSell, when = strategy.position_size < 0)

// Close & Cancel when over End of the Test
if time > endTest
    strategy.close_all()
    strategy.cancel_all()


আরো