
इस लेख में मुख्य रूप से एक स्टॉक ट्रेडिंग द्वि-दिशात्मक पिरामिड रणनीति का परिचय दिया गया है जो अपेक्षाकृत मजबूत संकेतक ((आरएसआई)) के आधार पर डिज़ाइन की गई है। यह रणनीति आरएसआई संकेतक के माध्यम से स्टॉक ओवरबॉय ओवरसोल क्षेत्र का आकलन करती है, जो पिरामिड के अधिशेष सिद्धांत के साथ लाभप्रदता प्राप्त करती है।
इस रणनीति में आरएसआई सूचक और पिरामिड ओवरहोल्डिंग रणनीति को जोड़ा गया है, जो ओवरबॉट ओवरसोल्ड का न्याय करते हुए ओवरहोल्डिंग के माध्यम से अधिक लाभ प्राप्त कर सकता है। हालांकि आरएसआई निर्णय की सटीकता में सुधार करना बाकी है, लेकिन उचित पैरामीटर अनुकूलन के माध्यम से, अन्य संकेतकों के साथ संयोजन में प्रभाव स्थिर बनाने के लिए ट्रेडिंग रणनीति बनाई जा सकती है। इस रणनीति में कुछ सार्वभौमिकता है, जो एक अपेक्षाकृत सरल और प्रत्यक्ष मात्रात्मक व्यापार विधि है।
/*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)