یہ حکمت عملی ایک جامع تجارتی نظام ہے جو متعدد کلاسیکی تکنیکی اشارے کو یکجا کرتا ہے ، بشمول موونگ ایوریج (ایم اے) ، رشتہ دار طاقت انڈیکس (آر ایس آئی) ، موونگ ایوریج کنورجنس ڈائیورجنس (ایم اے سی ڈی) ، اور بولنگر بینڈ (بی بی) ۔ ان اشارے کے ہم آہنگی کے ذریعے ، یہ نظام تجارت کی کامیابی کی شرح کو بہتر بنانے کے لئے مارکیٹ میں زیادہ درست خرید / فروخت سگنل تلاش کرتا ہے۔
حکمت عملی میں ایک کثیر پرت سگنل کی توثیق کا طریقہ کار استعمال کیا گیا ہے ، جس میں شامل ہیں:
نظام مندرجہ ذیل شرائط کے تحت تجارتی سگنل تیار کرتا ہے:
یہ ایک اچھی طرح سے ڈیزائن کیا گیا کثیر جہتی تجارتی حکمت عملی کا نظام ہے جو متعدد تکنیکی اشارے کے ہم آہنگی کے ذریعے تجارتی سگنل فراہم کرتا ہے۔ اس حکمت عملی کے اہم فوائد اس کے جامع تجزیاتی فریم ورک اور سخت سگنل کی تصدیق کے طریقہ کار میں ہیں ، جبکہ پیرامیٹر کی اصلاح اور مارکیٹ کے ماحول میں موافقت پر توجہ دینے کی ضرورت ہے۔ تجویز کردہ اصلاح کی سمتوں کے ذریعے ، اس حکمت عملی میں بہتری کی کافی گنجائش ہے۔
/*backtest start: 2019-12-23 08:00:00 end: 2024-12-25 08:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Ultimate Buy/Sell Indicator", overlay=true) // Inputs for Moving Averages shortMaLength = input.int(9, title="Short MA Length", minval=1) longMaLength = input.int(21, title="Long MA Length", minval=1) // Inputs for RSI rsiLength = input.int(14, title="RSI Length", minval=1) rsiOverbought = input.int(70, title="RSI Overbought Level", minval=1, maxval=100) rsiOversold = input.int(30, title="RSI Oversold Level", minval=1, maxval=100) // Inputs for MACD macdShortLength = input.int(12, title="MACD Short EMA Length", minval=1) macdLongLength = input.int(26, title="MACD Long EMA Length", minval=1) macdSignalSmoothing = input.int(9, title="MACD Signal Smoothing", minval=1) // Inputs for Bollinger Bands bbLength = input.int(20, title="Bollinger Bands Length", minval=1) bbMultiplier = input.float(2.0, title="Bollinger Bands Multiplier", minval=0.1) // Calculate Moving Averages shortMa = ta.sma(close, shortMaLength) longMa = ta.sma(close, longMaLength) // Calculate RSI rsi = ta.rsi(close, rsiLength) // Calculate MACD [macdLine, signalLine, _] = ta.macd(close, macdShortLength, macdLongLength, macdSignalSmoothing) macdHist = macdLine - signalLine // Calculate Bollinger Bands [bbUpper, bbBasis, bbLower] = ta.bb(close, bbLength, bbMultiplier) // Define colors colorPrimary = color.new(color.green, 0) colorSecondary = color.new(color.red, 0) colorBackgroundBuy = color.new(color.green, 80) colorBackgroundSell = color.new(color.red, 80) colorTextBuy = color.new(color.green, 0) colorTextSell = color.new(color.red, 0) // Plot Moving Averages plot(shortMa, color=colorPrimary, linewidth=2, title="Short MA") plot(longMa, color=colorSecondary, linewidth=2, title="Long MA") // Plot Bollinger Bands bbUpperLine = plot(bbUpper, color=colorPrimary, linewidth=1, title="Bollinger Bands Upper") bbLowerLine = plot(bbLower, color=colorPrimary, linewidth=1, title="Bollinger Bands Lower") fill(bbUpperLine, bbLowerLine, color=color.new(colorPrimary, 90)) // Buy/Sell Conditions based on MA cross buySignal = ta.crossover(shortMa, longMa) sellSignal = ta.crossunder(shortMa, longMa) // Execute Buy/Sell Orders if buySignal strategy.entry("Buy", strategy.long, 1) strategy.close("Sell", qty_percent=1) // Close all positions when selling if sellSignal strategy.close("Sell", qty_percent=1) // Close all positions when selling strategy.close("Buy") // Close any remaining buy positions // Plot Buy/Sell Signals for MA crossovers plotshape(series=buySignal, location=location.belowbar, color=colorTextBuy, style=shape.triangleup, size=size.small, title="Buy Signal") plotshape(series=sellSignal, location=location.abovebar, color=colorTextSell, style=shape.triangledown, size=size.small, title="Sell Signal") // Background Color based on Buy/Sell Signal for MA crossovers bgcolor(buySignal ? colorBackgroundBuy : na, title="Buy Signal Background") bgcolor(sellSignal ? colorBackgroundSell : na, title="Sell Signal Background") // Plot RSI with Overbought/Oversold Levels hline(rsiOverbought, "Overbought", color=colorSecondary, linestyle=hline.style_dashed, linewidth=1) hline(rsiOversold, "Oversold", color=colorPrimary, linestyle=hline.style_dashed, linewidth=1) plot(rsi, color=colorPrimary, linewidth=2, title="RSI") // Plot MACD Histogram plot(macdHist, color=colorPrimary, style=plot.style_histogram, title="MACD Histogram", linewidth=2) hline(0, "Zero Line", color=color.new(color.gray, 80)) // Additional Buy/Sell Conditions based on RSI, MACD, and Bollinger Bands additionalBuySignal = rsi < rsiOversold and macdHist > 0 and close < bbLower additionalSellSignal = rsi > rsiOverbought and macdHist < 0 and close > bbUpper // Plot Additional Buy/Sell Signals plotshape(series=additionalBuySignal and not buySignal, location=location.belowbar, color=colorTextBuy, style=shape.triangleup, size=size.small, title="Additional Buy Signal") plotshape(series=additionalSellSignal and not sellSignal, location=location.abovebar, color=colorTextSell, style=shape.triangledown, size=size.small, title="Additional Sell Signal") // Background Color based on Additional Buy/Sell Signal bgcolor(additionalBuySignal and not buySignal ? colorBackgroundBuy : na, title="Additional Buy Signal Background") bgcolor(additionalSellSignal and not sellSignal ? colorBackgroundSell : na, title="Additional Sell Signal Background")