বলিঙ্গার ব্যান্ড RSI সূচক সহ CCI মুভিং এভারেজ ক্রসওভার কৌশল


সৃষ্টির তারিখ: 2023-12-20 16:24:49 অবশেষে সংশোধন করুন: 2023-12-20 16:24:49
অনুলিপি: 0 ক্লিকের সংখ্যা: 1107
1
ফোকাস
1621
অনুসারী

বলিঙ্গার ব্যান্ড RSI সূচক সহ CCI মুভিং এভারেজ ক্রসওভার কৌশল

ওভারভিউ

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

কৌশল নীতি

ব্রিন বন্ড

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

RSI সূচক

আরএসআই সূচকটি একটি সময়ের মধ্যে বন্ধের দামের উত্থান ও পতনের গতির পরিবর্তনকে প্রতিফলিত করে এবং এটি ক্রয় এবং বিক্রয়ের শক্তির তুলনা পরিমাপ করতে ব্যবহৃত হয়। RSI মান 0 থেকে 30 এর মধ্যে ওভারসোল্ড অঞ্চল এবং 70 থেকে 100 এর মধ্যে ওভারসোল্ড অঞ্চল। যখন আরএসআই ওভারসোল্ড অঞ্চল থেকে নেমে আসে তখন এটি বিক্রয় সংকেত হিসাবে কাজ করে এবং যখন আরএসআই ওভারসোল্ড অঞ্চল থেকে উঠে আসে তখন এটি কেনার সংকেত হিসাবে কাজ করে।

CCI সূচক

সিসিআই সূচকটি শেয়ারের দাম তার গড় মূল্য থেকে কতটা বিচ্যুত তা পরিমাপ করার জন্য ব্যবহৃত হয়। এর মধ্যে, +১০০ দামের চেয়ে অনেক বেশি দামের প্রতিনিধিত্ব করে, এটি একটি অতিরিক্ত ক্রয়; -১০০ দামের চেয়ে অনেক কম দামের প্রতিনিধিত্ব করে, এটি একটি অতিরিক্ত বিক্রয়। সিসিআই চরম পরিস্থিতিতে মূল্যের প্রতিফলন করতে পারে।

কৌশলগত ক্রস সংকেত

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

কৌশলগত সুবিধা

  1. একাধিক সূচক বিচার, মিথ্যা সংকেত হ্রাস, সংকেত নির্ভুলতা বৃদ্ধি
  2. বাজারের বিপর্যয় চিহ্নিত করুন, বিপর্যয়কে ধরার সুযোগ
  3. বিভিন্ন বাজারের অবস্থার সাথে সামঞ্জস্য রেখে প্যারামিটারগুলি কাস্টমাইজ করা যায়
  4. সিসিআই সূচকগুলিকে অভিন্নভাবে ফিল্টার করা, শব্দ হ্রাস করা, স্থিতিশীলতা বাড়ানো

ঝুঁকি ও সমাধান

  1. ব্রিনব্যান্ড, আরএসআই এবং সিসিআই সূচকগুলি ভুল সংকেত তৈরি করতে পারে, যার ফলে ব্যবসায়ের ক্ষতি হয়। প্রাসঙ্গিকভাবে প্যারামিটারগুলি শিথিল করা যেতে পারে, বা যাচাইয়ের জন্য অন্যান্য সূচক যুক্ত করা যেতে পারে।
  2. CCI সূচকটি বক্ররেখার জন্য খুব বেশি কার্যকর নয়, গড়রেখা বা অস্থিরতার হার সূচকটি ব্যবহার করা যেতে পারে।
  3. ট্রেডিং নির্দেশ শুধুমাত্র স্টপ লস, কোন স্টপ ক্যাপ নেই। মুনাফার অংশ লক করার জন্য একটি চলমান স্টপ ক্যাপ যোগ করা যেতে পারে।

অপ্টিমাইজেশান দিক

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

সারসংক্ষেপ

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

কৌশল সোর্স কোড
/*backtest
start: 2023-11-19 00:00:00
end: 2023-12-19 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy(shorttitle="BBRSIstr", title="Bollinger Bands", overlay=true)
length = input.int(20, minval=1)
maType = input.string("SMA", "Basis MA Type", options = ["SMA", "EMA", "SMMA (RMA)", "WMA", "VWMA"])
src = input(close, title="Source")
mult = input.float(2.0, minval=0.001, maxval=50, title="StdDev")

ma(source, length, _type) =>
    switch _type
        "SMA" => ta.sma(source, length)
        "EMA" => ta.ema(source, length)
        "SMMA (RMA)" => ta.rma(source, length)
        "WMA" => ta.wma(source, length)
        "VWMA" => ta.vwma(source, length)

basis = ma(src, length, maType)
dev = mult * ta.stdev(src, length)
upper = basis + dev
lower = basis - dev
offset = input.int(0, "Offset", minval = -500, maxval = 500)
plot(basis, "Basis", color=#FF6D00, offset = offset)
p1 = plot(upper, "Upper", color=#2962FF, offset = offset)
p2 = plot(lower, "Lower", color=#2962FF, offset = offset)
fill(p1, p2, title = "Background", color=color.rgb(33, 150, 243, 95))

//RSI
rsiLengthInput = input.int(14, minval=1, title="RSI Length", group="RSI Settings")
rsiSourceInput = input.source(close, "Source", group="RSI Settings")
maTypeInput = input.string("SMA", title="MA Type", options=["SMA", "Bollinger Bands", "EMA", "SMMA (RMA)", "WMA", "VWMA"], group="MA Settings")
maLengthInput = input.int(14, title="MA Length", group="MA Settings")
bbMultInput = input.float(2.0, minval=0.001, maxval=50, title="BB StdDev", group="MA Settings")
showDivergence = input.bool(false, title="Show Divergence", group="RSI Settings")

up = ta.rma(math.max(ta.change(rsiSourceInput), 0), rsiLengthInput)
down = ta.rma(-math.min(ta.change(rsiSourceInput), 0), rsiLengthInput)
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))
rsiMA = ma(rsi, maLengthInput, maTypeInput)
isBB = maTypeInput == "Bollinger Bands"

rsiPlot = plot(rsi, "RSI", color=#7E57C2)
plot(rsiMA, "RSI-based MA", color=color.yellow)
rsiUpperBand = hline(70, "RSI Upper Band", color=#787B86)
midline = hline(50, "RSI Middle Band", color=color.new(#787B86, 50))
rsiLowerBand = hline(30, "RSI Lower Band", color=#787B86)
fill(rsiUpperBand, rsiLowerBand, color=color.rgb(126, 87, 194, 90), title="RSI Background Fill")

//cci
ma = ta.sma(src, length)
cci = (src - ma) / (0.015 * ta.dev(src, length))
plot(cci, "CCI", color=#2962FF)
band1 = hline(100, "Upper Band", color=#787B86, linestyle=hline.style_dashed)
hline(0, "Middle Band", color=color.new(#787B86, 50))
band0 = hline(-100, "Lower Band", color=#787B86, linestyle=hline.style_dashed)
fill(band1, band0, color=color.rgb(33, 150, 243, 90), title="Background")

typeMA = input.string(title = "Method", defval = "SMA", options=["SMA", "EMA", "SMMA (RMA)", "WMA", "VWMA"], group="Smoothing")
smoothingLength = input.int(title = "Length", defval = 5, minval = 1, maxval = 100, group="Smoothing")

smoothingLine = ma(cci, smoothingLength, typeMA)
plot(smoothingLine, title="Smoothing Line", color=#f37f20, display=display.none)


longCBB= close < lower
shortCBB = close>upper
longBRSI = rsi < 33
shortBRSI = rsi > 70
longcci = cci < -215
shortcci = cci > 250

strategy.entry("LONG", strategy.long, when = longCBB and longBRSI and longcci)
strategy.exit("Exit ", profit = 600)
strategy.entry("SHORT", strategy.short, when = shortCBB and shortBRSI and shortcci)
strategy.exit("Exit ", profit = 600)