यह रणनीति 15 मिनट और 45 मिनट के टाइमफ्रेम के भीतर खरीद और बिक्री संकेत उत्पन्न करने के लिए फाइबोनैचि रिट्रेसमेंट स्तरों के साथ मूल्य और ट्रेडिंग वॉल्यूम के संकेतों को जोड़ती है। यह रणनीति ट्रेंड और गति के संकेतक के रूप में कई चलती औसत (एमए) का उपयोग करती है, जिसमें सरल चलती औसत (एसएमए) और घातीय चलती औसत (ईएमए) शामिल हैं। इसके अलावा, फाइबोनैचि रिट्रेसमेंट स्तरों का उपयोग संभावित प्रवेश बिंदुओं के रूप में किया जाता है। रणनीति का प्राथमिक उद्देश्य मूल्य और ट्रेडिंग वॉल्यूम में महत्वपूर्ण परिवर्तन होने पर खरीद और बिक्री के अवसरों को तुरंत कैप्चर करना है।
यह रणनीति मूल्य, व्यापारिक मात्रा और फाइबोनैचि रिट्रेसमेंट स्तरों को मिलाकर कई समय सीमाओं के भीतर खरीद और बिक्री संकेत उत्पन्न करती है। रणनीति का लाभ कई बाजार तत्वों के व्यापक विचार और सहायक संकेतकों के रूप में कई एमए और ईएमए के उपयोग में निहित है। हालांकि, रणनीति अस्थिर बाजारों में अत्यधिक व्यापार संकेत उत्पन्न कर सकती है और ऐतिहासिक डेटा से गणना किए गए संकेतकों पर निर्भर करती है। इसलिए, इसकी अनुकूलन क्षमता और विश्वसनीयता में सुधार के लिए आगे अनुकूलन की आवश्यकता है। अनुकूलन दिशाओं में प्रवृत्ति शक्ति संकेतकों की शुरूआत, मापदंडों का अनुकूलन, अन्य तकनीकी संकेतकों का संयोजन और जोखिम प्रबंधन उपायों की शुरूआत शामिल है।
/*backtest start: 2023-05-28 00:00:00 end: 2024-06-02 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy(title="Buy/Sell with Volume and Candlestick Signals", overlay=true) // Fibonacci Retracement Levels var float[] fibonacciLevels = array.new_float(5) array.set(fibonacciLevels, 2, 0.47) array.set(fibonacciLevels, 3, 0.658) array.set(fibonacciLevels, 4, 0.886) // Calculate Fibonacci Retracement Levels fibonacciRetrace(highLevel, lowLevel) => priceRange = highLevel - lowLevel retracementLevels = array.new_float(0) for i = 0 to array.size(fibonacciLevels) - 1 level = highLevel - array.get(fibonacciLevels, i) * priceRange array.push(retracementLevels, level) retracementLevels fibRetracementValues = fibonacciRetrace(high, low) fibRetracement = ta.sma(close, 21) plot(fibRetracement, color=color.purple, title="Fibonacci Retracement") // Define inputs fast_ma = input.int(title="Fast MA Period", defval=10) short_sma_10 = input.int(title="Short SMA 10 Period", defval=10) short_sma_60 = input.int(title="Short SMA 60 Period", defval=60) slow_ma = input.int(title="Slow MA Period", defval=30) ema1Length = input.int(title="EMA 1 Length", defval=3) fast_ma_9 = input.int(title="Fast MA 9", defval=9) // Define indicators fast_ma_val = ta.sma(close, fast_ma) short_sma_10_val = ta.sma(close, short_sma_10) short_sma_60_val = ta.sma(close, short_sma_60) slow_ma_val = ta.sma(close, slow_ma) up_trend = fast_ma_val > slow_ma_val down_trend = fast_ma_val < slow_ma_val volume_up = volume > ta.sma(volume, 20) volume_down = volume < ta.sma(volume, 20) // Calculate accuracy values fast_ema_val = ta.ema(close, fast_ma) slow_ema_val = ta.ema(close, slow_ma) ema1_val = ta.ema(close, ema1Length) fast_ma_9_val = ta.sma(close, fast_ma_9) ema7_val = ta.ema(close, 7) accuracy = ta.crossover(close, slow_ma_val) ? fast_ema_val : slow_ema_val // Define lines plot(up_trend ? fast_ma_val : na, color=color.green, linewidth=2, title="Up Trend") plot(down_trend ? fast_ma_val : na, color=color.red, linewidth=2, title="Down Trend") plot(volume_up ? fast_ma_val : na, color=color.green, linewidth=2, title="Volume Up") plot(volume_down ? fast_ma_val : na, color=color.red, linewidth=2, title="Volume Down") plot(accuracy, color=color.yellow, linewidth=1, title="Accuracy Line") plot(ema1_val, color=color.purple, linewidth=1, title="EMA 1") plot(fast_ma_9_val, color=color.orange, linewidth=1, title="Fast MA 9") plot(ema7_val, color=color.blue, linewidth=1, title="EMA 7") plot(short_sma_60_val, color=color.red, linewidth=1, title="Short SMA 60") hline(0, color=color.gray, linestyle=hline.style_dotted, title="Zero Line") // Buy/Sell Signals buySignal = ta.crossunder(short_sma_60_val, accuracy) sellSignal = ta.crossover(short_sma_60_val, accuracy) // Exit Signals exitLongSignal = ta.crossunder(fast_ma_9_val, ema7_val) exitShortSignal = ta.crossover(fast_ma_9_val, ema7_val) // Plot Buy/Sell Signals plotshape(buySignal, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="Buy") plotshape(sellSignal, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="Sell") if exitLongSignal strategy.close("Buy") if exitShortSignal strategy.close("Sell") if buySignal strategy.entry("Enter Long", strategy.long) else if sellSignal strategy.entry("Enter Short", strategy.short)