EMA RSI লুকানো বৈষম্যের প্রবণতা কৌশল অনুসরণ করে

লেখক:চাওঝাং, তারিখঃ 2024-02-02 16:54:27
ট্যাগঃ

img

সারসংক্ষেপ

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

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

  1. ইএমএ কৌশলঃ প্রবণতা দিক নির্ধারণের জন্য ৫০ পেরিওড ইএমএ এবং ২৫০ পেরিওড ইএমএর গোল্ডেন ক্রস ব্যবহার করা। ৫০ পেরিওড ইএমএর উপরে বন্ধ একটি দীর্ঘ সংকেত দেয়।

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

  3. কে-লাইন ক্লোজিং স্ট্র্যাটেজিঃ যখন ক্লোজিং প্রাইস 50 EMA লাইনের উপরে থাকে তখন লম্বা হয়ে যান।

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

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

  1. প্রবণতার দিকনির্দেশনা নির্ধারণের জন্য ইএমএ লাইন ব্যবহার করে আরএসআই বিপরীত সংকেতগুলি প্রবণতার শুরুতে প্রাথমিক প্রবেশের অনুমতি দেয়।

  2. ইএমএ লাইন, আরএসআই সূচক এবং কে-লাইন বন্ধের দামের দ্বৈত নিশ্চিতকরণ কার্যকরভাবে মিথ্যা সংকেতগুলি ফিল্টার করে।

  3. মাঝারি ও দীর্ঘমেয়াদী প্রবণতা অনুসরণ করে এটি সংহতকরণের পরে নতুন উত্থান প্রবণতা সনাক্ত করা উপযুক্ত করে তোলে।

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

  1. যখন ইএমএ লাইনে মৃত্যুর ক্রস থাকে তখন পজিশন বন্ধ করুন।

  2. আরএসআই লুকানো বিচ্যুতি সনাক্তকরণের জন্য অভিজ্ঞতার প্রয়োজন, অনুপযুক্ত পরামিতি টিউনিং অনুপস্থিত বা মিথ্যা সংকেত হতে পারে।

  3. বিভিন্ন ট্রেডিং যন্ত্রের জন্য পরামিতিগুলিকে অপ্টিমাইজ করার প্রয়োজন।

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

  1. প্রবণতা নির্ধারণের সঠিকতার জন্য EMA পরামিতিগুলি গতিশীলভাবে সামঞ্জস্য করুন।

  2. আরও ভাল লুকানো বিচ্যুতি সংকেত নির্ভুলতার জন্য RSI পরামিতিগুলি সূক্ষ্ম সুর করুন।

  3. ঝুঁকি নিয়ন্ত্রণে ATR বা শতাংশ স্টপ এর মতো স্টপ লস প্রক্রিয়া যুক্ত করুন।

  4. নিম্নমুখী ট্রেডিংয়ের জন্য শর্ট পজিশনের জন্য কৌশল তৈরি করা।

সিদ্ধান্ত

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


/*backtest
start: 2024-01-25 00:00:00
end: 2024-02-01 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4

strategy(title="EMA RSI ATR Hidden Div Strat", shorttitle="Hidden Div Strat", overlay = true, pyramiding = 0, max_bars_back=3000, calc_on_order_fills = false, commission_type =  strategy.commission.percent, commission_value = 0, default_qty_type = strategy.percent_of_equity, default_qty_value = 10, initial_capital=5000, currency=currency.USD)

// Time Range
FromMonth=input(defval=1,title="FromMonth",minval=1,maxval=12)
FromDay=input(defval=1,title="FromDay",minval=1,maxval=31)
FromYear=input(defval=2020,title="FromYear",minval=2016)
ToMonth=input(defval=1,title="ToMonth",minval=1,maxval=12)
ToDay=input(defval=1,title="ToDay",minval=1,maxval=31)
ToYear=input(defval=9999,title="ToYear",minval=2017)
start=timestamp(FromYear,FromMonth,FromDay,00,00)
finish=timestamp(ToYear,ToMonth,ToDay,23,59)
window()=>true

// Bar's time happened on/after start date?
afterStartDate = time >= start and time<=finish?true:false

//EMA'S
emasrc = close

len1 = input(50, minval=1, title="EMA1")
ema1 = ema(emasrc, len1)
col1 = color.white

len2 = input(250, minval=1, title="EMA2")
ema2 = ema(emasrc, len2)
col2 = color.yellow

//Plots
plot(ema1, title="EMA1", linewidth=1, color=col1)
plot(ema2, title="EMA2", linewidth=1, color=col2)

//Stoch
periodK = input(4, title="K", minval=1)
periodD = input(4, title="D", minval=1)
smoothK = input(3, title="Smooth", minval=1)
k = sma(stoch(close, high, low, periodK), smoothK)
d = sma(k, periodD)

//Hidden Divergence Indikator

len = input(title="RSI Period", minval=1, defval=14)
src = input(title="RSI Source", defval=close)
lbR = input(title="Pivot Lookback Right", defval=1)
lbL = input(title="Pivot Lookback Left", defval=19)
rangeUpper = input(title="Max of Lookback Range", defval=20)
rangeLower = input(title="Min of Lookback Range", defval=4)
hiddenBullColor = color.new(color.green, 80)
textColor = color.white
noneColor = color.new(color.white, 100)
osc = rsi(src, len)

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

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

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

// Price: Higher Low

priceHL = low[lbR] > valuewhen(plFound, low[lbR], 1)
hiddenBullCond = priceHL and oscLL and plFound

//buy Conditions
buyhiddenbull = hiddenBullCond[1] or hiddenBullCond[2] or hiddenBullCond[3] or hiddenBullCond[4] or hiddenBullCond[5] or hiddenBullCond[6] or hiddenBullCond[7] or hiddenBullCond[8] or hiddenBullCond[9] or hiddenBullCond[10]
emacondition = ema1 > ema2
upcondition = close[1] > ema1[1] and ema2[1] and close[2] > ema1[2] and ema2[2] and close[3] > ema1[3] and ema2[3]
crossup = k[0] >= d[0] and k[1] <= d[1]
longcondition = emacondition and upcondition and crossup and buyhiddenbull

if (afterStartDate)
    strategy.entry("Long", strategy.long, when = longcondition)

//TakeProfit, StopLoss lowest low
profitfactor = input(title="Profitfactor", type=input.float, step=0.1, defval=1.6)
loLen = input(title="Lowest Low Lookback", type=input.integer,
  defval=38, minval=2)
stop_level = lowest(low, loLen)[1]
bought = strategy.position_size[1] < strategy.position_size
barsbought = barssince(bought)

if strategy.position_size>0
    profit_level = strategy.position_avg_price + ((strategy.position_avg_price - stop_level[barsbought])*profitfactor)
    strategy.exit(id="TP/ SL", stop=stop_level[barsbought], limit=profit_level)

আরো