ট্রেলিং স্টপ লস কৌশল সহ ডনচিয়ান চ্যানেল

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

img

সারসংক্ষেপ

এটি একটি প্রবণতা অনুসরণকারী কৌশল যা ডনচিয়ান চ্যানেল সূচকের উপর ভিত্তি করে, লাভের লক করার জন্য এটিআর সূচকের উপর ভিত্তি করে গতিশীল স্টপ লসের সাথে মিলিত। এটি প্রবণতা অনুসরণকারী কৌশল বিভাগের অন্তর্গত।

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

এই কৌশলটি একটি 20 পেরিওড ডনচিয়ান চ্যানেল ব্যবহার করে, যেখানে চ্যানেল মিডলাইন সর্বোচ্চ উচ্চ এবং সর্বনিম্ন নিম্নের গড়। যখন দাম চ্যানেল মিডলাইনের উপরে অতিক্রম করে এবং যখন দাম মিডলাইনের নীচে অতিক্রম করে তখন এটি দীর্ঘ হয়। প্রস্থান নিয়মটি যখন দামটি গতিশীল স্টপ লস লাইনে স্পর্শ করে, যা লং পজিশনের জন্য ATR মানের এক তৃতীয়াংশ বিয়োগ করে সাম্প্রতিক 3 বারগুলির সর্বনিম্ন হিসাবে গণনা করা হয় এবং সাম্প্রতিক 3 বারগুলির সর্বাধিক উচ্চতর সংক্ষিপ্ত পজিশনের জন্য ATR মানের এক তৃতীয়াংশ।

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

এই কৌশলটির প্রধান সুবিধাগুলো হল:

  1. ডনচিয়ান চ্যানেল বাজারের প্রবণতা এবং প্রবণতা চিহ্নিত করতে কার্যকর।
  2. এটিআর-ভিত্তিক গতিশীল ট্রেলিং স্টপ লস ঝুঁকি নিয়ন্ত্রণের সময় লাভকে লক করে।
  3. স্টপ লস গণনায় ATR ফ্যাক্টর অন্তর্ভুক্ত করা বাজারের অস্থিরতা বিবেচনা করে, স্টপকে আরও যুক্তিসঙ্গত করে তোলে।
  4. স্টপ লস গণনার পদ্ধতি স্থিতিশীল এবং নির্ভরযোগ্য, স্টপগুলি খুব কাছাকাছি থেকে এবং অকাল বন্ধ হওয়া এড়ানো।

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

এই কৌশলটির প্রধান ঝুঁকিগুলির মধ্যে রয়েছেঃ

  1. ডনচিয়ান চ্যানেলের কিছু পিছনের প্রভাব রয়েছে, যা স্বল্পমেয়াদী সুযোগগুলি মিস করতে পারে।
  2. এটিআর পরামিতির ভুল সেটিং স্টপ লস খুব বড় বা খুব কাছাকাছি হতে পারে।
  3. প্রবণতা নির্ধারণের প্রক্রিয়াটি তুলনামূলকভাবে সহজ, যা বাজারের সংহতকরণের সময় আরও মিথ্যা সংকেত তৈরি করতে পারে।
  4. কার্যকর সমর্থন/প্রতিরোধের বিচার না করা, যার ফলে বাজারে প্রবেশের সময় সঠিক নয়।

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

এই কৌশলটির জন্য কিছু অপ্টিমাইজেশান দিকঃ

  1. স্পষ্ট প্রবণতা না থাকলে ঘন ঘন ট্রেডিং এড়াতে অন্যান্য সূচক যোগ করুন।
  2. এন্ট্রি টাইমিং অপ্টিমাইজ করার জন্য সমর্থন / প্রতিরোধের বিচার যোগ করুন।
  3. স্টপ লস কৌশল আরও উন্নত করার জন্য অন্যান্য গতিশীল স্টপ লস গণনার পদ্ধতি পরীক্ষা করুন।
  4. কৌশল কর্মক্ষমতা উপর বিভিন্ন Donchian চ্যানেল সময়ের পরামিতি প্রভাব পরীক্ষা।
  5. মিথ্যা সংকেত কমাতে ভলিউম বা ইনক্রিমেন্টে ফিল্টার যুক্ত করুন।

সিদ্ধান্ত

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


/*backtest
start: 2023-11-29 00:00:00
end: 2023-12-06 00:00:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy(title = "dc",  overlay = true)
atrLength = input(title="ATR Length:", defval=20, minval=1)

testStartYear = input(2017, "Backtest Start Year")
testStartMonth = input(1, "Backtest Start Month")
testStartDay = input(1, "Backtest Start Day")
testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,0,0)

testEndYear = input(2018, "Backtest Start Year")
testEndMonth = input(12)
testEndDay = input(31, "Backtest Start Day")
testPeriodEnd = timestamp(testEndYear,testEndMonth,testEndDay,0,0)


testPeriod() =>
    true
    //time >= testPeriodStart  ? true : false

dcPeriod = input(20, "Period")

dcUpper = highest(close, dcPeriod)[1]
dcLower = lowest(close, dcPeriod)[1]
dcAverage = (dcUpper + dcLower) / 2
atrValue=atr(atrLength)


useTakeProfit   = na
useStopLoss     = na
useTrailStop    = na
useTrailOffset  = na
//@version=1
Buy_stop = lowest(low[1],3) - atr(20)[1] / 3
plot(Buy_stop, color=red, title="buy_stoploss")
Sell_stop = highest(high[1],3) + atr(20)[1] / 3
plot(Sell_stop, color=green, title="sell_stoploss")

plot(dcLower, style=line, linewidth=3, color=red, offset=1)
plot(dcUpper, style=line, linewidth=3, color=aqua, offset=1)

plot(dcAverage, color=black, style=line, linewidth=3, title="Mid-Line Average")

strategy.entry("simpleBuy", strategy.long, when=(close > dcAverage) and cross(close,dcAverage))
strategy.close("simpleBuy",when= ( close< Buy_stop))
    
strategy.entry("simpleSell", strategy.short,when=(close < dcAverage) and cross(close,dcAverage) )
strategy.close("simpleSell",when=( close > Sell_stop))
    
//strategy.exit("Exit simpleBuy", from_entry = "simpleBuy", profit = useTakeProfit, loss = useStopLoss, trail_points = useTrailStop, trail_offset = useTrailOffset)
//strategy.exit("Exit simpleSell", from_entry = "simpleSell", profit = useTakeProfit, loss = useStopLoss, trail_points = useTrailStop, trail_offset = useTrailOffset)



আরো