এই নিবন্ধটি মূলত রিলেটিভ স্ট্রেনথ ইন্ডেক্স (আরএসআই) সূচকের উপর ভিত্তি করে ডিজাইন করা একটি স্টক ট্রেডিং পিরামিডিং কৌশল প্রবর্তন করে। কৌশলটি স্টকগুলির অতিরিক্ত ক্রয় এবং অতিরিক্ত বিক্রয় অঞ্চলগুলি নির্ধারণের জন্য আরএসআই সূচক ব্যবহার করে এবং পিরামিডিং নীতিগুলির মাধ্যমে মুনাফা অর্জনের বাস্তবায়ন করে।
এই কৌশলটি পিরামিডিং কৌশলটির সাথে আরএসআই সূচককে একত্রিত করে। অতিরিক্ত ক্রয় এবং অতিরিক্ত বিক্রয় স্থিতিগুলি বিচার করার সময়, এটি অতিরিক্ত ক্রয়ের মাধ্যমে আরও বেশি রিটার্ন অর্জন করতে পারে। যদিও আরএসআই বিচারের নির্ভুলতা উন্নত করা দরকার, যুক্তিসঙ্গত পরামিতি অপ্টিমাইজেশান এবং অন্যান্য সূচকগুলির সাথে সংমিশ্রণের মাধ্যমে এটি একটি কার্যকর ট্রেডিং কৌশল গঠন করতে পারে। এই কৌশলটির কিছু সার্বজনীনতা রয়েছে এবং এটি একটি তুলনামূলকভাবে সহজ এবং সরল পরিমাণগত ট্রেডিং পদ্ধতি।
/*backtest start: 2023-12-30 00:00:00 end: 2024-01-29 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © RafaelZioni strategy(title='Simple RSI strategy', overlay=false) SWperiod = 1 look = 0 OverBought = input(80, minval=50) OverSold = input(25, maxval=50) bandmx = hline(100) bandmn = hline(0) band1 = hline(OverBought) band0 = hline(OverSold) //band50 = hline(50, color=black, linewidth=1) fill(band1, band0, color=color.purple, transp=98) src = close len = input(5, minval=1, title="RSI Length") up = rma(max(change(src), 0), len) down = rma(-min(change(src), 0), len) rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - 100 / (1 + up / down) p = 100 //scale hh = highest(high, p) ll = lowest(low, p) scale = hh - ll //dynamic OHLC dyno = (open - ll) / scale * 100 dynl = (low - ll) / scale * 100 dynh = (high - ll) / scale * 100 dync = (close - ll) / scale * 100 //candle color color_1 = close > open ? 1 : 0 //drawcandle hline(78.6) hline(61.8) hline(50) hline(38.2) hline(23.6) plotcandle(dyno, dynh, dynl, dync, title="Candle", color=color_1 == 1 ? color.green : color.red) plot(10, color=color.green) plot(55, color=color.black) plot(80, color=color.black) plot(90, color=color.red) long = rsi <= OverSold ? 5 : na //Strategy golong = rsi <= OverSold ? 5 : na longsignal = golong //based on https://www.tradingview.com/script/7NNJ0sXB-Pyramiding-Entries-On-Early-Trends-by-Coinrule/ //set take profit ProfitTarget_Percent = input(3) Profit_Ticks = close * (ProfitTarget_Percent / 100) / syminfo.mintick //set take profit LossTarget_Percent = input(10) Loss_Ticks = close * (LossTarget_Percent / 100) / syminfo.mintick //Order Placing strategy.entry("Entry 1", strategy.long, when=strategy.opentrades == 0 and longsignal) strategy.entry("Entry 2", strategy.long, when=strategy.opentrades == 1 and longsignal) strategy.entry("Entry 3", strategy.long, when=strategy.opentrades == 2 and longsignal) strategy.entry("Entry 4", strategy.long, when=strategy.opentrades == 3 and longsignal) strategy.entry("Entry 5", strategy.long, when=strategy.opentrades == 4 and longsignal) strategy.entry("Entry 6", strategy.long, when=strategy.opentrades == 5 and longsignal) strategy.entry("Entry 7", strategy.long, when=strategy.opentrades == 6 and longsignal) if strategy.position_size > 0 strategy.exit(id="Exit 1", from_entry="Entry 1", profit=Profit_Ticks, loss=Loss_Ticks) strategy.exit(id="Exit 2", from_entry="Entry 2", profit=Profit_Ticks, loss=Loss_Ticks) strategy.exit(id="Exit 3", from_entry="Entry 3", profit=Profit_Ticks, loss=Loss_Ticks) strategy.exit(id="Exit 4", from_entry="Entry 4", profit=Profit_Ticks, loss=Loss_Ticks) strategy.exit(id="Exit 5", from_entry="Entry 5", profit=Profit_Ticks, loss=Loss_Ticks) strategy.exit(id="Exit 6", from_entry="Entry 6", profit=Profit_Ticks, loss=Loss_Ticks) strategy.exit(id="Exit 7", from_entry="Entry 7", profit=Profit_Ticks, loss=Loss_Ticks)