এই ট্রেডিং কৌশলটি ট্রেডিং সিগন্যাল তৈরির জন্য আরএসআই, স্টোকাস্টিক, বোলিংজার ব্যান্ড এবং সুপারট্রেন্ড সহ একাধিক সূচককে একত্রিত করে।
বিশেষত, এটি 50 এর উপরে আরএসআই এবং ডি এর উপরে স্টোকাস্টিক কে মানকে উত্থান সংকেত হিসাবে বিবেচনা করে। সুপারট্রেন্ডের নীচে মূল্য একটি আপট্রেন্ডকে উপস্থাপন করে এবং বিবি মাঝারি ব্যান্ডের নীচে সুপারট্রেন্ড দীর্ঘ সংকেত গঠন করে।
বিপরীতভাবে, 50 এর নিচে আরএসআই এবং ডি এর নিচে স্টোকাস্টিক কে হ্রাস সংকেত দেয়। সুপারট্রেন্ডের উপরে দাম একটি হ্রাসের প্রবণতা দেখায় এবং বিবি মাঝারি ব্যান্ডের উপরে সুপারট্রেন্ড শর্ট সংকেত তৈরি করে।
মাল্টি-ইন্ডিকেটর কম্বো সিগন্যাল নির্ভরযোগ্যতা উন্নত করার জন্য একটি কার্যকর ফিল্টার হিসাবে কাজ করে। কৌশলটি ঝুঁকি নিয়ন্ত্রণের জন্য স্টপ লস এবং লাভের শর্তও সেট করে।
তবে, সূচকগুলি একত্রিত করাও বিলম্বের পরিচয় দেয়, সম্ভাব্য অনুকূল এন্ট্রিগুলি অনুপস্থিত। সামগ্রিক অর্থনৈতিক প্রভাবগুলির পর্যবেক্ষণের পাশাপাশি প্যারামিটারগুলির লাইভ টিউনিং এখনও প্রয়োজনীয়। দীর্ঘমেয়াদী স্থিতিশীল মুনাফার জন্য বিস্তৃত ঝুঁকি ব্যবস্থাপনা অত্যন্ত গুরুত্বপূর্ণ।
/*backtest start: 2023-01-01 00:00:00 end: 2023-03-10 00:00:00 period: 45m basePeriod: 5m 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/ // © rajm14 //@version=5 strategy(title = "Golden Swing Strategy - Souradeep Dey", shorttitle = "GSS", overlay = true, process_orders_on_close = true, default_qty_type = strategy.cash, default_qty_value=100000, currency = currency.USD) // Indicator - RSI - 20 rsiSrc = input(defval = close, title = "RSI Source") rsiLen = input.int(defval = 20, title = "RSI Length", minval = 0, maxval = 200, step = 1) rsi = ta.rsi(rsiSrc, rsiLen) //plot(rsi) // Indicator - Stochastic (55,34,21) kLength = input.int(defval = 55, title="Stoch %K Length", minval=1) kSmooth = input.int(defval = 34, title="Stoch %K Smoothing", minval=1) dLength = input.int(defval = 21, title="Stoch %D Smoothing", minval=1) kLine = ta.sma(ta.stoch(close, high, low, kLength), kSmooth) dLine = ta.sma(kLine, dLength) // plot(kLine, color=color.red) // plot(dLine, color=color.green) // Indicator - ATR(5) atrLength = input(5, "ATR Length") atr = ta.atr(5) // plot(atr) // Indicator - SuperTrend(10,2) atrPeriod = input(10, "SuperTrend ATR Length") stSrc = hl2 stfactor = input.float(2.0, "SuperTrend Multiplier", step = 0.1) stAtr = ta.atr(atrPeriod) [supertrend, direction] = ta.supertrend(stfactor, atrPeriod) bodyMiddle = (open + close) / 2 upTrend = direction < 0 ? supertrend : na downTrend = direction < 0? na : supertrend // plot(bodyMiddle, display=display.none) // plot(upTrend) // plot(downTrend) // Indicator - Bollinger Bands (20,2) bblength = input.int(defval = 20, title = "BB Length") bbsource = input(defval = close, title = "BB Source") bbStdDev = input.float(defval = 2.0, title = "BB Std Dev", step = 0.1) bbmultiplier = bbStdDev * ta.stdev(bbsource, bblength) bbMband = ta.sma(bbsource, bblength) bbUband = bbMband + bbmultiplier bbLband = bbMband - bbmultiplier // plot (bbUband, color = color.red, linewidth = 2) // plot (bbMband, color = color.black, linewidth = 2) // plot (bbLband, color = color.green, linewidth = 2) // Trade Entry LongEntry = rsi >= 50 and kLine > dLine and low < supertrend and direction < 0 and supertrend < bbMband ShortEntry = rsi <= 50 and kLine < dLine and high > supertrend and direction > 0 and supertrend > bbMband plotshape(LongEntry, style = shape.triangleup, text = "Long", location = location.belowbar, size = size.large, color = color.green) plotshape(ShortEntry, style = shape.triangledown, text = "Short", location = location.abovebar, size = size.large, color = color.red) //Trade execution if LongEntry strategy.entry(id = "Buy", direction = strategy.long, limit = close * .5 * atr) closelong = close >= strategy.position_avg_price * 2.2 * atr stoplong = close <= strategy.position_avg_price * 1.1 * atr if closelong strategy.close(id = "Buy") if stoplong strategy.close(id = "Buy") if ShortEntry strategy.entry(id = "Sell", direction = strategy.long, limit = close * .5 * atr) closeshort = close <= strategy.position_avg_price * 2.2 * atr stopshort = close >= strategy.position_avg_price * 1.1 * atr if closeshort strategy.close(id = "Sell") if stopshort strategy.close(id = "Sell")