ট্রেন্ড ব্রেকআউট - দীর্ঘ ছায়া কৌশল

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

img

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

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

এই কৌশলটি মূলত বর্তমান প্রবণতাকে বাউলিশ/বেয়ারিশ শ্যাডো রেসিও গণনা করে মূল্যায়ন করে। লং বেয়ারিশ নিম্নমুখী প্রবণতা নির্দেশ করে এবং লং বাউলিশ আপগ্রেড প্রবণতা নির্দেশ করে।

এর সুনির্দিষ্ট যুক্তি হচ্ছে:

  1. হ্রাসের ছায়া গণনা করুনঃ বন্ধ - নিম্ন
  2. উর্ধ্বমুখী ছায়া গণনা করুনঃ উচ্চ - উন্মুক্ত
  3. ছায়ার দৈর্ঘ্য হিসাবে হ্রাস এবং উত্থান ছায়ার সর্বাধিক গ্রহণ করুন
  4. মোমবাতি শরীরের দৈর্ঘ্য গণনাঃ উচ্চ - নিম্ন
  5. ছায়া এবং শরীরের দৈর্ঘ্যের মধ্যে অনুপাত গণনা করুন
  6. যদি অনুপাত > 0.5 এবং bearish > bullish হয়, তাহলে নিম্নমুখী প্রবণতা এবং লং পজিশনের বিচার করুন
  7. যদি অনুপাত > 0.5 এবং উত্থান > হ্রাস হয়, তাহলে আপগ্রেড প্রবণতা এবং শর্ট পজিশন বিচার করুন
  8. মোমবাতি দৈর্ঘ্য > 0.75 * ATR এর সাথে ভ্যালিডেট ব্রেকআউট
  9. স্টপ লস সেট করুন এবং এন্ট্রি পরে লাভ নিন, ২ঃ১ অনুপাতের সাথে

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

সুবিধা

  1. ছায়া অনুপাত সঠিকভাবে প্রবণতা বিচার করে
  2. এটিআর মিথ্যা ব্রেকআউট সংকেত ফিল্টার করে
  3. স্টপ লস এবং লাভ গ্রহণ ঝুঁকি পরিচালনা করে
  4. 2: 1 ঝুঁকি-প্রতিদান অনুপাত পরিমাণগত ট্রেডিং মান পূরণ করে
  5. উচ্চ অস্থিরতার স্টকগুলির স্বল্পমেয়াদী ব্যবসায়ের জন্য উপযুক্ত
  6. সহজ এবং পরিষ্কার যুক্তি, সহজেই বোঝা যায়

ঝুঁকি

  1. দামের অস্থিরতা স্টপ লসকে আঘাত করতে পারে এবং ক্ষতি বৃদ্ধি করতে পারে
  2. পারফরম্যান্স প্যারামিটার টিউনিং উপর নির্ভর করে
  3. প্রবণতা বিপরীতমুখী হলে ক্ষতি হতে পারে
  4. স্টপ লস/টেক প্রফিট বাড়ানোর ফলে ক্ষতির সম্ভাবনা বাড়তে পারে
  5. ব্যর্থ ব্রেকআউট বড় ক্ষতির কারণ হতে পারে

যুক্তিসঙ্গত স্টপ লস, প্যারামিটার অপ্টিমাইজেশান এবং সময়মত পজিশন প্রস্থান করে ঝুঁকিগুলি পরিচালনা করা যেতে পারে।

উন্নতকরণ

কৌশলটি নিম্নলিখিত উপায়ে অপ্টিমাইজ করা যেতে পারেঃ

  1. সেরা মানের জন্য ছায়া অনুপাত পরামিতি অপ্টিমাইজ করুন
  2. সেরা মোমবাতি দৈর্ঘ্যের জন্য ATR পরামিতি অপ্টিমাইজ করুন
  3. সর্বোত্তম ঝুঁকি-প্রতিদানের জন্য স্টপ লস/টেক মুনাফা সহগগুলি অপ্টিমাইজ করুন
  4. ধীরে ধীরে অবস্থান বৃদ্ধি মত অবস্থান আকার যোগ করুন
  5. মুনাফা সুরক্ষার জন্য ট্রেলিং স্টপ লস যোগ করুন
  6. ফিল্টার সংকেতগুলিতে অন্যান্য সূচক যুক্ত করুন
  7. ব্যাকটেস্টের সময়সীমা অপ্টিমাইজ করুন এবং বাজারের বিভিন্ন পর্যায়ে পরীক্ষা করুন

বহুমুখী পরীক্ষা এবং অপ্টিমাইজেশনের মাধ্যমে, কৌশল কর্মক্ষমতা সর্বাধিক করা যেতে পারে।

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


/*backtest
start: 2022-11-08 00:00:00
end: 2023-11-14 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © ondrej17

//@version=4
strategy("longWickstrategy", overlay=true )
 
// Inputs
st_yr_inp = input(defval=2020, title='Backtest Start Year')
st_mn_inp = input(defval=01, title='Backtest Start Month')
st_dy_inp = input(defval=01, title='Backtest Start Day')
en_yr_inp = input(defval=2025, title='Backtest End Year')
en_mn_inp = input(defval=01, title='Backtest End Month')
en_dy_inp = input(defval=01, title='Backtest End Day')
sltp_inp = input(defval=0.8, title='N - % offset for N*SL and (2N)*TP')/100
 
// Dates
start = timestamp(st_yr_inp, st_mn_inp, st_dy_inp,00,00)
end = timestamp(en_yr_inp, en_mn_inp, en_dy_inp,00,00)
canTrade = time >= start and time <= end
// Indicators Setup


 
// Strategy Calcuations
lowerWick = (open > close) ? close-low : open - low
upperWick = (open > close) ? high-open : high-close
wickLength = max(lowerWick,upperWick)
candleLength = high-low
wickToCandleRatio = wickLength / candleLength
entryFilterCandleLength = candleLength > 0.75*atr(48)


// Entries and Exits
 
longCondition = entryFilterCandleLength and wickToCandleRatio > 0.5 and lowerWick > upperWick and canTrade and strategy.position_size == 0
shortCondition = entryFilterCandleLength and wickToCandleRatio > 0.5 and lowerWick < upperWick and canTrade and strategy.position_size == 0

strategy.entry("pendingLong", strategy.long, limit=low+wickLength/2, when = longCondition)
strategy.entry("pendingShort", strategy.short, limit=high-wickLength/2, when = shortCondition)

longStop = strategy.position_size > 0 ? strategy.position_avg_price*(1-sltp_inp) : na
longTP = strategy.position_size > 0 ? strategy.position_avg_price*(1+2*sltp_inp) : na
shortStop = strategy.position_size < 0 ? strategy.position_avg_price*(1+sltp_inp) : na
shortTP = strategy.position_size < 0 ? strategy.position_avg_price*(1-2*sltp_inp) : na

strategy.exit("longSLTP","pendingLong", stop=longStop, limit = longTP)
strategy.exit("shortSLTP","pendingShort", stop=shortStop, limit = shortTP)  
 

plot(longStop, color=color.red, style=plot.style_linebr, linewidth=2)
plot(shortStop, color=color.red, style=plot.style_linebr, linewidth=2)
plot(longTP, color=color.green, style=plot.style_linebr, linewidth=2)
plot(shortTP, color=color.green, style=plot.style_linebr, linewidth=2)

plotLongCondition = longCondition ? high+abs(open-close) : na
plot(plotLongCondition, style=plot.style_circles, linewidth=4, color=color.green)
plotShortCondition = shortCondition ? high+abs(open-close) : na
plot(plotShortCondition, style=plot.style_circles, linewidth=4, color=color.red)



আরো