আরএসআই বাউলিশ এবং বিয়ারিশ ডিভার্জেন্স ট্রেডিং কৌশল

লেখক:চাওঝাং, তারিখঃ 2024-01-15 12:09:54
ট্যাগঃ

img

সারসংক্ষেপ

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

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

এই কৌশলটি মূলত RSI সূচকটির বুলিশ এবং হ্রাসকারী বিচ্যুতি তত্ত্বের উপর ভিত্তি করে। যখন RSI এবং মূল্য বিপরীত বিচ্যুতি গঠন করে, এটি বাজারের সম্ভাব্য বিপরীতমুখী নির্দেশ করে। চারটি নির্দিষ্ট পরিস্থিতি রয়েছেঃ

  1. নিয়মিত বুলিশ সিগন্যালঃ RSI উচ্চতর নিম্নতর গঠন করে যখন মূল্য নিম্নতর নিম্নতর গঠন করে। এটি নির্দেশ করে যে ক্রয় ক্ষমতা RSI কে উপরে ঠেলে দেয় তবে দামের উপর পুরোপুরি প্রতিফলিত হয় না, যার অর্থ শক্তিশালী বুলিশ শক্তি।

  2. লুকানো বুলিশ সিগন্যালঃ RSI নিম্ন নিম্ন গঠন করে যখন মূল্য উচ্চ নিম্ন গঠন করে। এটি বোঝায় যে বিক্রয় শক্তি RSI কে ধাক্কা দেয় কিন্তু মূল্য নয়, যা শক্তিশালী বুলিশ শক্তিকে নির্দেশ করে।

  3. নিয়মিত হ্রাস সংকেতঃ RSI নিম্ন উচ্চ গঠন করে যখন মূল্য উচ্চতর উচ্চ গঠন করে। এটি বোঝায় যে বিক্রয় শক্তি মূল্যকে উপরে নিয়ে যায় তবে RSI নয়, যা শক্তিশালী হ্রাস শক্তি নির্দেশ করে।

  4. লুকানো হ্রাস সংকেত: RSI উচ্চতর উচ্চতর গঠন করে যখন মূল্য নিম্ন উচ্চতর গঠন করে। এটি নির্দেশ করে যে ক্রয় ক্ষমতা RSIকে ধাক্কা দেয় কিন্তু মূল্য নয়, যা শক্তিশালী হ্রাস ক্ষমতা বোঝায়।

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

সুবিধা

  1. বাজারের সম্ভাব্য প্রবণতা নির্ধারণের জন্য RSI-এর উত্থান-পতনের এবং হ্রাস-পতনের বৈষম্য তত্ত্ব ব্যবহার করুন।
  2. এছাড়াও নিশ্চিত করার জন্য দামের ক্রিয়াকলাপগুলি একত্রিত করুন, গোলমাল সংকেতগুলি এড়িয়ে চলুন।
  3. বাজারের দ্রুত বিপর্যয়ের আগে গুরুত্বপূর্ণ সংকেত ধরতে সক্ষম।
  4. উঁচু এবং নিম্নমুখী সংকেতগুলির জন্য ভিজ্যুয়ালাইজড ইঙ্গিত বাস্তবায়ন করুন, সহজ এবং স্বজ্ঞাতভাবে পরিচালনা করুন।
  5. বিভিন্ন বাজারের পরিবেশের জন্য কাস্টমাইজযোগ্য পরামিতি।

ঝুঁকি

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

উন্নতির নির্দেশাবলী

  1. এন্ট্রি সিগন্যাল নির্ধারণের জন্য MACD, KDJ এবং অন্যান্য সূচকগুলিকে RSI এর সাথে সংযুক্ত করুন।
  2. ট্রেড প্রতি ক্ষতি কমাতে স্টপ লস কৌশল যোগ করুন।
  3. আরও উপযুক্ত আরএসআই সময়ের সন্ধানের মতো প্যারামিটার সেটিংস অপ্টিমাইজ করুন।
  4. ইনপুট সিগন্যাল ক্যাপচার করার সঠিকতা প্রশিক্ষণের জন্য মেশিন লার্নিং অ্যালগরিদম চালু করা।
  5. সিগন্যাল নিশ্চিতকরণ বিলম্ব হ্রাস করার জন্য রিয়েল-টাইম উদ্ধৃতিগুলির জন্য ওয়েবসকেট বাস্তবায়ন করুন।

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

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


/*backtest
start: 2024-01-07 00:00:00
end: 2024-01-14 00:00:00
period: 15m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy(title="Divergence Indicator")
len = input.int(title="RSI Period", minval=1, defval=20)
src = input(title="RSI Source", defval=close)
lbR = input(title="Pivot Lookback Right", defval=5)
lbL = input(title="Pivot Lookback Left", defval=5)
rangeUpper = input(title="Max of Lookback Range", defval=60)
rangeLower = input(title="Min of Lookback Range", defval=5)
plotBull = input(title="Plot Bullish", defval=true)
plotHiddenBull = input(title="Plot Hidden Bullish", defval=true)
plotBear = input(title="Plot Bearish", defval=true)
plotHiddenBear = input(title="Plot Hidden Bearish", defval=true)
bearColor = color.red
bullColor = color.green
hiddenBullColor = color.new(color.green, 80)
hiddenBearColor = color.new(color.red, 80)
textColor = color.white
noneColor = color.new(color.white, 100)
osc = ta.rsi(src, len)

plot(osc, title="RSI", linewidth=2, color=#2962FF)
hline(50, title="Middle Line", color=#787B86, linestyle=hline.style_dotted)
obLevel = hline(70, title="Overbought", color=#787B86, linestyle=hline.style_dotted)
osLevel = hline(30, title="Oversold", color=#787B86, linestyle=hline.style_dotted)
fill(obLevel, osLevel, title="Background", color=color.rgb(33, 150, 243, 90))

plFound = na(ta.pivotlow(osc, lbL, lbR)) ? false : true
phFound = na(ta.pivothigh(osc, lbL, lbR)) ? false : true
_inRange(cond) =>
	bars = ta.barssince(cond == true)
	rangeLower <= bars and bars <= rangeUpper

//------------------------------------------------------------------------------
// Regular Bullish
// Osc: Higher Low

oscHL = osc[lbR] > ta.valuewhen(plFound, osc[lbR], 1) and _inRange(plFound[1])

// Price: Lower Low

priceLL = low[lbR] < ta.valuewhen(plFound, low[lbR], 1) 
// bull : 상승 Condition : 조건
bullCond = plotBull and priceLL and oscHL and plFound // 상승다이버전스?
strategy.entry("상승 다이버전스 진입", strategy.long, when = bullCond)
// strategy.close("상승 다이버전스 진입", when = ta.crossover(osc, 70)) 
plot(
     plFound ? osc[lbR] : na,
     offset=-lbR,
     title="Regular Bullish",
     linewidth=2,
     color=(bullCond ? bullColor : noneColor)
     )

plotshape(
	 bullCond ? osc[lbR] : na,
	 offset=-lbR,
	 title="Regular Bullish Label",
	 text=" Bull ",
	 style=shape.labelup,
	 location=location.absolute,
	 color=bullColor,
	 textcolor=textColor
	 )

//------------------------------------------------------------------------------
// Hidden Bullish
// Osc: Lower Low

oscLL = osc[lbR] < ta.valuewhen(plFound, osc[lbR], 1) and _inRange(plFound[1])

// Price: Higher Low

priceHL = low[lbR] > ta.valuewhen(plFound, low[lbR], 1)
hiddenBullCond = plotHiddenBull and priceHL and oscLL and plFound
strategy.entry("히든 상승 다이버전스 진입", strategy.long, when = hiddenBullCond)
// strategy.close("히든 상승 다이버전스 진입", when = ta.crossover(osc, 70))
plot(
	 plFound ? osc[lbR] : na,
	 offset=-lbR,
	 title="Hidden Bullish",
	 linewidth=2,
	 color=(hiddenBullCond ? hiddenBullColor : noneColor)
	 )

plotshape(
	 hiddenBullCond ? osc[lbR] : na,
	 offset=-lbR,
	 title="Hidden Bullish Label",
	 text=" H Bull ",
	 style=shape.labelup,
	 location=location.absolute,
	 color=bullColor,
	 textcolor=textColor
	 )

//------------------------------------------------------------------------------
// Regular Bearish
// Osc: Lower High

oscLH = osc[lbR] < ta.valuewhen(phFound, osc[lbR], 1) and _inRange(phFound[1])

// Price: Higher High

priceHH = high[lbR] > ta.valuewhen(phFound, high[lbR], 1)
// bear : 하락 
bearCond = plotBear and priceHH and oscLH and phFound
strategy.entry("하락 다이버전스 진입", strategy.short, when = bearCond)
// strategy.close("하락 다이버전스 진입", when = ta.crossunder(osc, 50)) 
plot(
	 phFound ? osc[lbR] : na,
	 offset=-lbR,
	 title="Regular Bearish",
	 linewidth=2,
	 color=(bearCond ? bearColor : noneColor)
	 )

plotshape(
	 bearCond ? osc[lbR] : na,
	 offset=-lbR,
	 title="Regular Bearish Label",
	 text=" Bear ",
	 style=shape.labeldown,
	 location=location.absolute,
	 color=bearColor,
	 textcolor=textColor
	 )

//------------------------------------------------------------------------------
// Hidden Bearish
// Osc: Higher High

oscHH = osc[lbR] > ta.valuewhen(phFound, osc[lbR], 1) and _inRange(phFound[1])

// Price: Lower High

priceLH = high[lbR] < ta.valuewhen(phFound, high[lbR], 1)

hiddenBearCond = plotHiddenBear and priceLH and oscHH and phFound
strategy.entry("히든 하락 다이버전스 진입", strategy.short, when = hiddenBearCond)
// strategy.close("히든 하락 다이버전스 진입", when = ta.crossunder(osc, 50)) 
plot(
	 phFound ? osc[lbR] : na,
	 offset=-lbR,
	 title="Hidden Bearish",
	 linewidth=2,
	 color=(hiddenBearCond ? hiddenBearColor : noneColor)
	 )

plotshape(
	 hiddenBearCond ? osc[lbR] : na,
	 offset=-lbR,
	 title="Hidden Bearish Label",
	 text=" H Bear ",
	 style=shape.labeldown,
	 location=location.absolute,
	 color=bearColor,
	 textcolor=textColor
	 )

আরো