
आरएसआई औसत रेखा क्रॉसिंग रणनीति क्रिप्टोकरेंसी ट्रेडिंग के लिए एक रणनीति है। यह रणनीति आरएसआई संकेतक के लिए एक चलती औसत लागू करती है और आरएसआई और इसकी चलती औसत के क्रॉसिंग के आधार पर एक खरीद और बिक्री संकेत देती है।
इस रणनीति में आरएसआई को सबसे पहले गणना की जाती है। आरएसआई एक निश्चित समय अवधि में उतार-चढ़ाव के आधार पर मूल्य की ताकत और कमजोरी को दर्शाता है। आरएसआई 70 से अधिक के साथ ओवरबॉय क्षेत्र है, 30 से कम के साथ ओवरसोल्ड क्षेत्र है।
फिर, यह रणनीति आरएसआई संकेतक के आधार पर एक चलती औसत लागू करती है। चलती औसत यादृच्छिक उतार-चढ़ाव को फ़िल्टर करने और प्रवृत्ति की दिशा का आकलन करने में सक्षम है। यहां 10 चक्र आरएसआई चलती औसत सेट किया गया है।
जब आरएसआई अपने चलती औसत को पार करता है, तो इसे खरीदने का संकेत माना जाता है; जब आरएसआई अपने चलती औसत को पार करता है, तो इसे बेचने का संकेत माना जाता है। इन दोनों संकेतों के आधार पर व्यापार करें।
कोड में, पहले लंबाई चक्र के लिए आरएसआई सूचक की गणना की जाती है। और फिर 10 चक्र आरएसआई के लिए चलती औसत की गणना की जाती है। जब मा आरएसआई से गुजरता है, तो खरीदता है; जब मा आरएसआई से गुजरता है, तो बेचता है।
इसके अलावा, कोड rsi, ma के लिए एक रेखा आरेख और rsi-ma के लिए एक स्तंभ आरेख बनाता है। rsi = 70, rsi = 30 के लिए एक सीमा रेखा बनाई गई है। और खरीद और बिक्री के लिए, आरेख पर एक संबंधित संकेत तीर चिह्नित किया गया है।
जोखिम के लिए, पैरामीटर को सूचकांक के प्रभाव को अनुकूलित करने के लिए समायोजित किया जा सकता है, स्थिति को उचित रूप से छोटा किया जा सकता है, स्टॉप लॉस लाइन सेट की जा सकती है, और प्रवृत्ति विश्लेषण के साथ सिग्नल को फ़िल्टर किया जा सकता है।
आरएसआई समानांतर क्रॉसिंग रणनीति प्रवृत्ति सूचक और फ़िल्टर सूचक के फायदे को जोड़ती है, अपेक्षाकृत परिपक्व और विश्वसनीय है। रणनीति का तर्क सरल और समझने में आसान है, कोड कार्यान्वयन भी पूर्ण है, और कुल मिलाकर एक बेहतर क्रिप्टोकरेंसी ट्रेडिंग रणनीति है। लेकिन किसी भी रणनीति में अनुकूलन की आवश्यकता होती है, जिसे लगातार परीक्षण और समायोजन की आवश्यकता होती है, और बेहतर रणनीति प्रभाव प्राप्त करने के लिए प्रवृत्ति निर्णय के साथ-साथ।
/*backtest
start: 2022-10-31 00:00:00
end: 2023-11-06 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("RSI w MA Strategy", shorttitle="RSI w MA Strategy", overlay=false, initial_capital=10000, currency='USD',process_orders_on_close=true)
//TIME FRAME AND BACKGROUND CONTROL/////////////////////////////////////////////
testStartYear = input(2019, "Backtest Start Year")
testStartMonth = input(01, "Backtest Start Month")
testStartDay = input(01, "Backtest Start Day")
testPeriodStart = timestamp(testStartYear, testStartMonth, testStartDay, 0, 0)
testStopYear = input(2022, "Backtest Stop Year")
testStopMonth = input(1, "Backtest Stop Month")
testStopDay = input(1, "Backtest Stop Day")
testPeriodStop = timestamp(testStopYear, testStopMonth, testStopDay, 0, 0)
testPeriodBackground = input(title="Color Background?", type=input.bool, defval=true)
testPeriodBackgroundColor = testPeriodBackground and time >= testPeriodStart and time <= testPeriodStop ?
color.teal : na
//bgcolor(testPeriodBackgroundColor, transp=50)
testPeriod() => true
////////////////////////////////////////////////////////////////////////////////
src = close, len = input(27, minval=1, title="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))
window = input(10, "RSI MA Window")
ma = sma(rsi,window)
plot(rsi, color=color.orange)
colorr= ma > rsi ? color.red : color.green
plot(ma,color=colorr)
band1 = hline(70)
band0 = hline(30)
fill(band1, band0, color=color.purple, transp=90)
diff = rsi - ma
plot(diff,style= plot.style_columns,transp=50,color = colorr)
plotshape(crossunder(rsi,ma)?rsi:na,title="top",style=shape.triangledown,location=location.absolute,size=size.tiny,color=color.red,transp=0)
plotshape(crossover(rsi,ma)?rsi:na,title="bottom",style=shape.triangleup,location=location.absolute,size=size.tiny,color=color.lime,transp=0)
buySignal = crossover(rsi,ma)
sellSignal = crossunder(rsi,ma)
//TRADE CONTROL/////////////////////////////////////////////////////////////////
if testPeriod()
if buySignal
strategy.close("Short", qty_percent = 100, comment = "Close Short")
strategy.entry("Long", strategy.long, qty=.1)
if sellSignal
strategy.close("Long", qty_percent = 100, comment = "Close Long")
strategy.entry("Short", strategy.short, qty=.1)
////////////////////////////////////////////////////////////////////////////////