स्टोकैस्टिक आरएसआई ट्रेडिंग रणनीति
यह रणनीति स्टोकैस्टिक आरएसआई सूचक के क्रॉसओवर संकेतों के आधार पर कारोबार करती है।
प्रवेश के विशिष्ट नियम इस प्रकार हैंः
स्टोकैस्टिक आरएसआई 30 से ऊपर के पार होने पर लंबा दर्ज करें
स्टोकैस्टिक आरएसआई 70 से नीचे जाने पर शॉर्ट करें
अतिरिक्त प्रवेश फ़िल्टर:
लॉन्ग्स के लिए 21-पीरियड SMA से ऊपर 9-पीरियड SMA की आवश्यकता होती है
शॉर्ट्स के लिए 21-पीरियड SMA से नीचे 9-पीरियड SMA की आवश्यकता होती है
केवल VWAP से नीचे के लॉन्ग, केवल VWAP से ऊपर के शॉर्ट
रणनीति जोखिम प्रबंधन के लिए स्टॉप लॉस और ले लाभ का उपयोग करती हैः
लॉन्ग और शॉर्ट दोनों के लिए 20 टिक पर स्टॉप लॉस सेट करें
दोनों लंबी और शॉर्ट्स के लिए 25 टिक पर लाभ सेट ले लो
मुख्य लाभ झूठे संकेतों को कम करने के लिए एसएमए और वीडब्ल्यूएपी फिल्टर के साथ संयुक्त ओवरबॉट / ओवरसोल्ड क्षेत्रों की पहचान करने के लिए स्टोकैस्टिक आरएसआई का उपयोग करना है। हालांकि, यह रणनीति रेंज-बाउंड बाजारों के बजाय प्रवृत्ति में बेहतर काम करती है।
/*backtest start: 2023-09-03 00:00:00 end: 2023-09-10 00:00:00 period: 1m basePeriod: 1m 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/ // © thedoggwalker //@version=4 strategy("Stochastic RSI Strategy", overlay=true) // Stochastic RSI length = input(14, title="Length") src = input(close, title="Source") smoothK = input(3, title="K") smoothD = input(3, title="D") rsiValue = rsi(src, length) highestRSI = highest(rsiValue, length) lowestRSI = lowest(rsiValue, length) k = (rsiValue - lowestRSI) / (highestRSI - lowestRSI) * 100 d = sma(k, smoothD) // Moving averages maShort = sma(close, 9) maLong = sma(close, 21) // Spread between moving averages spread = maShort - maLong // VWAP vwapValue = vwap(hlc3) // Entry conditions longCondition = crossover(k, 30) and spread > 0 and close < vwapValue shortCondition = crossunder(k, 70) and spread < 0 and close > vwapValue // Entry orders if (longCondition) strategy.entry("Long", strategy.long) if (shortCondition) strategy.entry("Short", strategy.short) // Exit orders // longStopLoss = close - 20 * syminfo.mintick // longTakeProfit = close + 25 * syminfo.mintick // strategy.exit("Exit Long", "Long", stop=longStopLoss, limit=longTakeProfit) // shortStopLoss = close + 20 * syminfo.mintick // shortTakeProfit = close - 25 * syminfo.mintick // strategy.exit("Exit Short", "Short", stop=shortStopLoss, limit=shortTakeProfit)