ডাবল মুভিং এভারেজ আরএসআই সূচক সংমিশ্রণ বিপরীতমুখী কৌশল

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

img

সারসংক্ষেপ

এই কৌশলটি দামের বিপরীত পয়েন্টগুলি সনাক্ত করতে এবং সেই অনুযায়ী কেনা বেচা সিদ্ধান্ত নেওয়ার জন্য দ্বৈত চলমান গড়, আপেক্ষিক শক্তি সূচক (আরএসআই) এবং প্যারাবোলিক এসএআর (পিএসএআর) একত্রিত করে। এটি বিপরীত ট্রেডিং কৌশলগুলির অন্তর্গত।

নীতিমালা

কৌশলটি মূলত নিম্নলিখিত প্রযুক্তিগত সূচকগুলি ব্যবহার করে দামের বিপরীত পয়েন্ট নির্ধারণ করেঃ

  1. দ্বৈত চলমান গড়ঃ দ্রুত চলমান গড় (এমএ দ্রুত লাইন) এবং ধীর চলমান গড় (এমএ ধীর লাইন) গণনা করুন। যখন দ্রুত লাইন ধীর লাইনের উপরে অতিক্রম করে, এটি একটি ষাঁড়ের বাজার নির্দেশ করে এবং দীর্ঘ যায়। যখন দ্রুত লাইন ধীর লাইনের নীচে অতিক্রম করে, এটি একটি ভালুক বাজার নির্দেশ করে এবং সংক্ষিপ্ত যায়।

  2. আরএসআই সূচকঃ আরএসআই একটি নির্দিষ্ট সময়ের মধ্যে গড় বন্ধ লাভ এবং গড় বন্ধ ক্ষতি গণনা করে ওভারকপিং এবং ওভারসোল্ড শর্তগুলি বিচার করে। আরএসআই 70 এর উপরে ওভারকপিং জোন এবং 30 এর নীচে ওভারসোল্ড জোন নির্দেশ করে।

  3. পিএসএআর সূচকঃ প্যারাবোলিক এসএআর প্রবণতার দিক নির্দেশ করে। দামের নীচে এসএআর পয়েন্টগুলি ষাঁড়ের বাজার এবং দামের উপরে হ্রাস বাজার নির্দেশ করে।

  4. এডিএক্স সূচকঃ এডিএক্স একটি প্রবণতার শক্তিকে দিকনির্দেশক আন্দোলনের গণনা করে পরিমাপ করে। এডিএক্স 20 এর উপরে একটি প্রবণতা বাজার এবং 20 এর নীচে সংকেত সংকেত সংকেত।

ক্রয় এবং বিক্রয় সংকেতের যুক্তি নিম্নরূপঃ

ক্রয় সংকেতঃ দ্রুত এমএ ধীর এমএ এর উপরে ক্রস করে, আরএসআই ৩০ এর নিচে (অভারসোল্ড), এসএআর পয়েন্ট দামের উপরে, এডিএক্স ২০ এর উপরে।

বিক্রয় সংকেতঃ দ্রুত এমএ ধীর এমএ এর নীচে ক্রস করে, আরএসআই 70 এর উপরে (অভারকোপেড), এসএআর পয়েন্ট দামের নীচে, এডিএক্স 20 এর উপরে।

যখন কিনুন বা বিক্রয় সংকেত ঘটে, যথাক্রমে 10% শেয়ারের সাথে একটি অবস্থান নিন। বিপরীত সংকেত ব্যর্থ হলে সময়মত অবস্থান বন্ধ করুন।

সুবিধা

  • ডুয়াল এমএ প্রধান প্রবণতা দিক নির্ধারণ করে, আরএসআই এবং এসএআর মিথ্যা সংকেতগুলি ফিল্টার করে, যা বিপরীত পয়েন্টগুলি সঠিকভাবে সনাক্ত করতে পারে।

  • একাধিক সূচককে একত্রিত করা একক সূচক থেকে ভুল সংকেত রোধ করে।

  • স্টপ লস অত্যধিক ঝুঁকি এড়ায়।

  • সহজ এবং পরিষ্কার যুক্তি এটি বাস্তবায়ন করা সহজ করে তোলে।

  • এটি আপট্রেন্ড এবং ডাউনট্রেন্ড উভয়ের জন্যই কাজ করে।

ঝুঁকি এবং সমাধান

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

  • RSI সঠিকভাবে সেট না করা হলে ভুল সংকেত তৈরি করতে পারে। RSI পরামিতিগুলি সূক্ষ্ম সুর করুন এবং RSI সংকেতগুলি নিশ্চিত করতে অন্যান্য সূচক যুক্ত করুন।

  • এডিএক্স ২০ এর নিচে থাকলে ট্রেডিং স্থগিত করুন। অথবা এডিএক্স সময়কাল সংক্ষিপ্ত করুন।

  • স্ট্রিংরি স্টপ লস অপ্রয়োজনীয় ক্ষতির কারণ হতে পারে। বাজারের অস্থিরতার উপর ভিত্তি করে যুক্তিসঙ্গত স্টপ লস সেট করুন।

  • উচ্চ ট্রেডিং ফ্রিকোয়েন্সি। কম ট্রেডিং ফ্রিকোয়েন্সিতে এমএ সময়কাল সামঞ্জস্য করুন।

উন্নতি

  • সর্বোত্তম সমন্বয় খুঁজে পেতে বিভিন্ন এমএ সময় পরীক্ষা করুন।

  • অতিরিক্ত ক্রয়/অতিরিক্ত বিক্রয়ের জন্য বিভিন্ন RSI পরামিতি পরীক্ষা করুন।

  • যুক্তি সমৃদ্ধ করার জন্য বলিংজার ব্যান্ড, কেডিজে এর মতো অন্যান্য সূচক যুক্ত করুন।

  • বিভিন্ন পণ্য এবং বাজারের উপর ভিত্তি করে গতিশীল স্টপ লস সেট করুন।

  • প্রবণতা আরও ভালভাবে অনুসরণ করার জন্য অবস্থান আকার যোগ করুন।

  • প্রবণতা শক্তি নির্ধারণের জন্য সেরা মান খুঁজে পেতে বিভিন্ন ADX পরামিতি পরীক্ষা করুন।

  • অটো স্টপ লস ফাংশন যোগ করুন।

সিদ্ধান্ত

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


/*backtest
start: 2023-10-10 00:00:00
end: 2023-11-09 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
//Based on Senpai BO 3
strategy(title="Senpai_Strat_3", shorttitle="Senpai_Strat_3", overlay=false, default_qty_type=strategy.percent_of_equity, default_qty_value=100)
src = close

//psar
start = input(0.02)
increment = input(0.02)
maximum = input(0.2)
psar = sar(start, increment, maximum)


//ADX Init
adxlen = input(30, title="ADX Smoothing")	
dilen = input(30, title="DI Length")	
dirmov(len) =>	
	up = change(high)
	down = -change(low)
	truerange = rma(tr, len)
	plus = fixnan(100 * rma(up > down and up > 0 ? up : 0, len) / truerange)
	minus = fixnan(100 * rma(down > up and down > 0 ? down : 0, len) / truerange)
	[plus, minus]
	
adx(dilen, adxlen) => 	
	[plus, minus] = dirmov(dilen)
	sum = plus + minus
	adx = 100 * rma(abs(plus - minus) / (sum == 0 ? 1 : sum), adxlen)
	[adx, plus, minus]
	
[sig, up, down] = adx(dilen, adxlen)	


// BB Init
source = close
length = input(50, minval=1)
mult = input(0.5, title="Mult Factor", minval=0.001, maxval=50)
alertLevel=input(0.1)
impulseLevel=input(0.75)
showRange = input(false, type=bool)


//RSI CODE
up1 = rma(max(change(src), 0), 14)
down1 = rma(-min(change(src), 0), 14)
rsi = down1 == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up1 / down1))


//BB CODE
basis = sma(source, length)
dev = mult * stdev(source, length)
upper = basis + dev
lower = basis - dev
bbr = source>upper?(((source-upper)/(upper-lower))/10): source<lower?(((source-lower)/(upper-lower))/10) : 0.05
bbi = bbr - nz(bbr[1]) 

//////////////////// Algo

//if (rsi>50 and n1>n2)
   //strategy.exit("Close", "Short")
  // strategy.entry("Long", strategy.long)
//if (rsi<50 and n2>n1)
   //strategy.exit("Close", "Long")
//   strategy.entry("Short", strategy.short)

//col = ma30 > ma50 > ma200 and rsi <=53?lime: ma50 < ma200  and rsi >= 60?red : silver
//short1 =  sig<18.5 and high>=upper and rsi>=70 and psar<close = 100%
//long1 = sig<18.5 and low<=lower and rsi<=30 and psar>close = 100%
short1 =  sig<18.5 and high>=upper and rsi>=70 and psar<close
long1 = sig<18.5 and low<=lower and rsi<=30 and psar>close

//Entry

long = long1[1] == 0 and long1 == 1
short = short1[1] == 0 and short1 == 1
longclose = long[3] == 1
shortclose = short[3] == 1
strategy.entry("short", strategy.short,qty = 10, when=short)
strategy.entry("long", strategy.long,qty=10, when=long)
strategy.close("long",when=longclose)
strategy.close("short",when=shortclose)



/////////////////////
///PLOT

plot(long,"long",color=green,linewidth=1)
plot(short,"short",color=red,linewidth=1)
plot(longclose,"close",color=blue,linewidth=1)
plot(shortclose,"close",color=orange,linewidth=1)


//plot(short,"short",color=red,linewidth=1)
//

//strategy.exit(id="long",qty = 100000,when=longclose)
//strategy.exit(id="short",qty = 100000,when=shortclose)

//strategy.exit(id="Stop", profit = 20, loss = 100)

আরো