এই কৌশলটি মূল্য এবং ট্রেডিং ভলিউম থেকে সংকেতগুলি একত্রিত করে, ফিবোনাচি রিট্র্যাকশন স্তরের সাথে, 15 মিনিট এবং 45 মিনিটের সময়সীমার মধ্যে কিনুন এবং বিক্রয় সংকেত তৈরি করে। কৌশলটি সহজ চলমান গড় (এসএমএ) এবং এক্সপোনেনশিয়াল চলমান গড় (ইএমএ) সহ প্রবণতা এবং গতির সূচক হিসাবে একাধিক চলমান গড় (এমএ) ব্যবহার করে। অতিরিক্তভাবে, ফিবোনাচি রিট্র্যাকশন স্তরগুলি সম্ভাব্য প্রবেশের পয়েন্ট হিসাবে ব্যবহৃত হয়। কৌশলটির প্রাথমিক লক্ষ্য হ'ল মূল্য এবং ট্রেডিং ভলিউমে উল্লেখযোগ্য পরিবর্তন হলে দ্রুত কেনার এবং বিক্রয়ের সুযোগগুলি ক্যাপচার করা।
এই কৌশলটি মূল্য, ট্রেডিং ভলিউম এবং ফিবোনাচি পুনরুদ্ধারের স্তরগুলি একত্রিত করে একাধিক সময়সীমার মধ্যে কিনুন এবং বিক্রয় সংকেত তৈরি করে। কৌশলটির সুবিধাটি একাধিক বাজারের উপাদানগুলির ব্যাপক বিবেচনা এবং একাধিক এমএ এবং ইএমএগুলি সহায়ক সূচক হিসাবে ব্যবহারে রয়েছে। তবে কৌশলটি অস্থির বাজারে অত্যধিক ট্রেডিং সংকেত তৈরি করতে পারে এবং historicalতিহাসিক তথ্য থেকে গণনা করা সূচকগুলির উপর নির্ভর করে। অতএব, এর অভিযোজনযোগ্যতা এবং নির্ভরযোগ্যতা উন্নত করতে আরও অপ্টিমাইজেশনের প্রয়োজন। অপ্টিমাইজেশনের দিকনির্দেশগুলিতে প্রবণতা শক্তি সূচকগুলি প্রবর্তন, প্যারামিটারগুলি অনুকূলিতকরণ, অন্যান্য প্রযুক্তিগত সূচকগুলি একত্রিত করা এবং ঝুঁকি পরিচালনার ব্যবস্থা প্রবর্তন অন্তর্ভুক্ত রয়েছে।
/*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)