इस रणनीति का नाम
रणनीति के पीछे मुख्य विचार यह हैः पहले आरएसआई मूल्य की गणना करें, फिर आरएसआई के आधार पर स्टोकैस्टिक आरएसआई संकेतक का निर्माण करें, अर्थात् के और डी मूल्य। जब के मूल्य डी मूल्य से ऊपर पार करता है, तो एक खरीद संकेत उत्पन्न होता है। जब के मूल्य डी मूल्य से नीचे पार करता है, तो एक बिक्री संकेत उत्पन्न होता है। झूठे संकेतों को फ़िल्टर करने के लिए, रणनीति पुष्टि के लिए दर परिवर्तन सूचकांक (आरवीआई) और इसकी चलती औसत रेखा को भी पेश करती है।
14-अवधि आरएसआई मूल्य की गणना करें।
आरएसआई के आधार पर 14 अवधि के स्टोकैस्टिक आरएसआई संकेतक का निर्माण करके के और डी मान प्राप्त करें (डी के 3-अवधि चलती औसत है) ।
5 अवधि के आरवीआई और उसके संकेत रेखा (आरवीआई का चलती औसत) की गणना की जाए।
जब K D से ऊपर जाता है, यदि RVI > सिग्नल लाइन और अंतिम अवधि
उत्पन्न संकेतों के आधार पर लंबी या छोटी स्थिति खोलें।
स्टोकैस्टिक आरएसआई और आरवीआई से दोहरी पुष्टि का संयोजन प्रभावी रूप से झूठे संकेतों को फ़िल्टर कर सकता है।
आरवीआई सूचक अल्पकालिक ओवरबॉट/ओवरसोल्ड स्थितियों को दर्शा सकता है और चरम बिंदुओं पर पदों को खोलने से बचता है।
स्टोकैस्टिक आरएसआई सूचक ओवरबॉट/ओवरसोल्ड ज़ोन की पहचान करता है। यह प्रवेश बिंदुओं को निर्धारित करने के लिए केडीजे सूचक के स्वर्ण/मृत क्रॉस का उपयोग करता है।
बैकटेस्ट परिणामों से पता चलता है कि इस रणनीति ने कुछ क्रिप्टोकरेंसी जोड़े (जैसे FCT/BTC) पर अच्छा प्रदर्शन हासिल किया है।
इसी तरह की ट्रेलिंग स्टॉप रणनीतियों का गलत स्टॉप लॉस प्लेसमेंट समय से पहले स्टॉप आउट होने का कारण बन सकता है।
उच्च सिग्नल आवृत्ति से अत्यधिक ट्रेडिंग शुल्क हो सकते हैं जिन्हें ध्यान में रखा जाना चाहिए।
केडीजे और आरवीआई दोनों संकेतक झूठे संकेत उत्पन्न कर सकते हैं, जिसके परिणामस्वरूप अनावश्यक नुकसान हो सकते हैं।
रणनीति मापदंडों को विभिन्न व्यापारिक जोड़े के लिए अनुकूलित करने की आवश्यकता है। सामान्य प्रयोज्यता का मूल्यांकन करने की आवश्यकता है।
लाभ में लॉक करने के लिए एक चलती स्टॉप लॉस जोड़ें। एटीआर को स्टॉप लॉस स्तर सेट करने के लिए संदर्भित किया जा सकता है।
स्वच्छ संकेतों के लिए आरवीआई पैरामीटर और स्टोकैस्टिक आरएसआई पैरामीटर का अनुकूलन करें।
अत्यधिक बड़े एकल आदेशों से बचने के लिए व्यापार आकार नियंत्रण जोड़ें।
अनुचित स्तरों पर पदों को खोलने से बचने के लिए फ़िल्टरिंग तंत्र जोड़ें। अस्थिरता संकेतक को यह निर्धारित करने के लिए पेश किया जा सकता है कि क्या बाजार वर्तमान में एक चंचल स्थिति में है।
सबसे अच्छा फिट खोजने के लिए विभिन्न क्रिप्टोक्यूरेंसी जोड़े पर परीक्षण करें।
यह रणनीति पहले आरएसआई संकेतक के आधार पर एक स्टोकैस्टिक आरएसआई का निर्माण करती है, फिर पुष्टि के लिए आरवीआई संकेतक का उपयोग करती है, ताकि कम अवधि की ओवरबॉट / ओवरसोल्ड स्थितियों और मोड़ बिंदुओं पर खुली स्थितियों का पता लगाया जा सके। लाभ यह है कि दोहरी पुष्टि झूठे संकेतों को फ़िल्टर कर सकती है। नुकसान पैरामीटर के ओवरफिटिंग के जोखिम है। कुल मिलाकर, इस रणनीति ने कुछ ट्रेडिंग जोड़े पर अच्छे परिणाम प्राप्त किए हैं। आगे के अनुकूलन अधिक सुसंगत लाभ प्राप्त कर सकते हैं।
/*backtest start: 2022-12-08 00:00:00 end: 2023-12-14 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy(title="Stochastic RSI", shorttitle="Stoch RSI", overlay = true) Per = input(5, title="Length", minval=1) smoothK = input(3, minval=1) smoothD = input(3, minval=1) lengthRSI = input(14, minval=1) lengthStoch = input(14, minval=1) src = input(close, title="RSI Source") rsi1 = rsi(src, lengthRSI) K = sma(stoch(rsi1, rsi1, rsi1, lengthStoch), smoothK) D = sma(K, smoothD) rvi = sum(swma(close-open), Per)/sum(swma(high-low),Per) sig = swma(rvi) //plot(rvi, color=green, title="RVI") //plot(sig, color=red, title="Signal") //plot(K, title="K") //plot(D, title="D") Dn = K <= D and K > 70 and rvi <= sig and rvi[1] >= sig[1] Up= K >= D and K < 30 and rvi >= sig and rvi[1] <= sig[1] ARROW = Up - Dn plotarrow(ARROW, title="Down Arrow", colordown=red, transp=0, maxheight=10, minheight=10) plotarrow(ARROW, title="Up Arrow", colorup=lime, transp=0, maxheight=10, minheight=10) long = crossover(Up, Dn) short = crossunder(Up, Dn) last_long = long ? time : nz(last_long[1]) last_short = short ? time : nz(last_short[1]) long_signal = crossover(last_long, last_short) short_signal = crossover(last_short, last_long) //plot(long_signal, "BUY", color=green) //plot(short_signal, "SELL", color=red) strategy.entry("BUY", strategy.long, when=long_signal) strategy.entry("SELL", strategy.short, when=short_signal)