यह रणनीति मुख्य रूप से पिन बार नामक एक विशिष्ट कैंडलस्टिक पैटर्न को पहचानकर संभावित बाजार उलट बिंदुओं की पहचान करने का लक्ष्य रखती है। एक पिन बार की विशेषता एक लंबी छाया और एक छोटे से शरीर से होती है, जो उस मूल्य स्तर पर महत्वपूर्ण बाजार अस्थिरता को इंगित करती है, लेकिन अंततः मूल्य पीछे हट जाता है, यह सुझाव देते हुए कि स्तर समर्थन या प्रतिरोध के रूप में कार्य कर सकता है। रणनीति वर्तमान प्रवृत्ति की दिशा निर्धारित करने के लिए 50-अवधि सरल चलती औसत (एसएमए) का उपयोग करती है और फ़िल्टर के रूप में वॉल्यूम का 20-अवधि एसएमए, जिसमें पिन बार सिग्नल को मान्य माना जाने के लिए वॉल्यूम को इस औसत से ऊपर होने की आवश्यकता होती है। इसके अलावा, सापेक्ष शक्ति सूचकांक (आरएसआई) की गणना की जाती है लेकिन सीधे प्रवेश / निकास स्थितियों में उपयोग नहीं किया जाता है, इसके बजाय एक वैकल्पिक आगे की स्थिति फ़िल्टरिंग के रूप में कार्य करता है।
यह पिन बार रिवर्स रणनीति एक सरल और प्रभावी दृष्टिकोण को नियोजित करती है, जिसमें संकेत पहचान सटीकता में सुधार के लिए ट्रेंड फिल्टरिंग और वॉल्यूम फिल्टरिंग का उपयोग किया जाता है। हालांकि सुधार के लिए जगह है, समग्र अवधारणा व्यवहार्य है और आगे अनुकूलन और परीक्षण के योग्य है। एक क्लासिक मूल्य पैटर्न के रूप में, पिन बार को अधिक मजबूत ट्रेडिंग प्रणाली प्राप्त करने के लिए अन्य संकेतकों या संकेतों के साथ भी जोड़ा जा सकता है।
/*backtest start: 2024-05-01 00:00:00 end: 2024-05-31 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Filtered Pin Bar Strategy with Relaxed Volume", overlay=true) // Define the size of the pin bar's wick and body wickSize = 0.6 bodySize = 0.3 // Calculate the size of the wicks and body upperWick = high - math.max(open, close) lowerWick = math.min(open, close) - low body = math.abs(close - open) // Define a simple moving average to determine the trend smaLength = 50 sma = ta.sma(close, smaLength) // Define a more relaxed volume threshold volumeThreshold = ta.sma(volume, 20) * 1.0 // Define RSI parameters rsiLength = 14 rsiOverbought = 70 rsiOversold = 30 rsi = ta.rsi(close, rsiLength) // Define the conditions for a bullish pin bar bullishPinBar = (lowerWick > (wickSize * (high - low))) and (body < (bodySize * (high - low))) and (close > open) and (close > sma) and (volume > volumeThreshold) // Define the conditions for a bearish pin bar bearishPinBar = (upperWick > (wickSize * (high - low))) and (body < (bodySize * (high - low))) and (close < open) and (close < sma) and (volume > volumeThreshold) // Plot the bullish and bearish pin bars on the chart plotshape(series=bullishPinBar, title="Bullish Pin Bar", location=location.belowbar, color=color.green, style=shape.labelup, text="PB") plotshape(series=bearishPinBar, title="Bearish Pin Bar", location=location.abovebar, color=color.red, style=shape.labeldown, text="PB") // Entry and exit rules if (bullishPinBar) strategy.entry("Bullish Pin Bar", strategy.long) if (bearishPinBar) strategy.entry("Bearish Pin Bar", strategy.short) // Optional: Set stop loss and take profit stopLoss = 2 * body takeProfit = 3 * body strategy.exit("Exit Long", from_entry="Bullish Pin Bar", stop=low - stopLoss, limit=high + takeProfit) strategy.exit("Exit Short", from_entry="Bearish Pin Bar", stop=high + stopLoss, limit=low - takeProfit)