
یہ ایک جامع تجارتی حکمت عملی ہے جو 7 مختلف ٹرانزیکشن اشارے پر مبنی ہے۔ یہ حکمت عملی OBV ، A / D لائن ، CMF ، MFI ، VWAP ، ٹرانزیکشن اوسپلر اور ٹرانزیکشن RSI جیسے متعدد ٹرانزیکشن اشارے کو مربوط کرکے ایک جامع تجارتی نظام تشکیل دیتی ہے۔ حکمت عملی کا بنیادی مقصد متعدد اشارے کے سگنل کی تصدیق کے ذریعہ تجارت کی درستگی کو بہتر بنانا ہے ، اور جب 4 سے زیادہ اشارے بیک وقت خریدنے یا بیچنے کے سگنل دیتے ہیں تو تجارت کی جاتی ہے۔
اس حکمت عملی میں متعدد میٹرکس کی توثیق کا طریقہ استعمال کیا گیا ہے، بشمول:
جب 4 سے زیادہ اشارے بیک وقت متفقہ سگنل دیتے ہیں تو حکمت عملی یہ سمجھتی ہے کہ مارکیٹ میں مضبوط رجحان کا موقع ہے ، جس سے تجارت ہوتی ہے۔
یہ ایک جامع تجارتی حکمت عملی ہے جو کثیر ٹرانزیکشن حجم کے اشارے پر مبنی ہے ، جس میں مارکیٹ کے کثیر جہتی تجزیہ کے ذریعہ تجارت کی درستگی کو بہتر بنایا گیا ہے۔ اس حکمت عملی کی مضبوط نظریاتی بنیاد اور عملی قدر ہے ، لیکن عملی اطلاق میں مارکیٹ کی صورتحال کے مطابق مناسب پیرامیٹرز کی اصلاح اور خطرے کے انتظام کی ضرورت ہے۔
/*backtest
start: 2024-01-01 00:00:00
end: 2024-11-11 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Combined Volume Indicators Strategy", overlay=true)
// تنظیمات
lengthRSI = 14
lengthMFI = 14
lengthCMF = 20
fastLength = 5
slowLength = 10
// محاسبه OBV
obv = ta.cum(close > close[1] ? volume : close < close[1] ? -volume : 0)
// محاسبه A/D بهصورت دستی
var float ad = na
ad := na(ad[1]) ? 0 : ad[1] + ((close - low) - (high - close)) / (high - low) * volume
// محاسبه CMF (Chaikin Money Flow)
moneyFlowMultiplier = ((close - low) - (high - close)) / (high - low)
moneyFlowVolume = moneyFlowMultiplier * volume
cmf = ta.sma(moneyFlowVolume, lengthCMF) / ta.sma(volume, lengthCMF)
// محاسبه MFI بهصورت دستی
typicalPrice = (high + low + close) / 3
moneyFlow = typicalPrice * volume
// محاسبه جریان پول مثبت و منفی
positiveFlow = 0.0
negativeFlow = 0.0
for i = 0 to lengthMFI - 1
positiveFlow := positiveFlow + (close[i] > close[i + 1] ? moneyFlow[i] : 0)
negativeFlow := negativeFlow + (close[i] < close[i + 1] ? moneyFlow[i] : 0)
mfi = 100 - (100 / (1 + (positiveFlow / negativeFlow)))
// محاسبه VWAP
vwap = ta.vwap(close)
// محاسبه Volume Oscillator
fastVolMA = ta.sma(volume, fastLength)
slowVolMA = ta.sma(volume, slowLength)
volumeOscillator = fastVolMA - slowVolMA
// محاسبه VRSI (Volume RSI)
vrsi = ta.rsi(volume, lengthRSI)
// شمارش اندیکاتورهای سیگنال خرید
buySignals = 0
buySignals := buySignals + (obv > obv[1] ? 1 : 0)
buySignals := buySignals + (ad > ad[1] ? 1 : 0)
buySignals := buySignals + (cmf > 0 ? 1 : 0)
buySignals := buySignals + (mfi < 40 ? 1 : 0)
buySignals := buySignals + (close < vwap ? 1 : 0)
buySignals := buySignals + (volumeOscillator > 0 ? 1 : 0)
buySignals := buySignals + (vrsi < 40 ? 1 : 0)
// شمارش اندیکاتورهای سیگنال فروش
sellSignals = 0
sellSignals := sellSignals + (obv < obv[1] ? 1 : 0)
sellSignals := sellSignals + (ad < ad[1] ? 1 : 0)
sellSignals := sellSignals + (cmf < 0 ? 1 : 0)
sellSignals := sellSignals + (mfi > 60 ? 1 : 0)
sellSignals := sellSignals + (close > vwap ? 1 : 0)
sellSignals := sellSignals + (volumeOscillator < 0 ? 1 : 0)
sellSignals := sellSignals + (vrsi > 60 ? 1 : 0)
// شرایط سیگنال خرید: اگر بیش از 4 اندیکاتور سیگنال خرید دهند
buyCondition = (buySignals > 4)
// شرایط سیگنال فروش: اگر بیش از 4 اندیکاتور سیگنال فروش دهند
sellCondition = (sellSignals > 4)
// ورود به معامله خرید
if (buyCondition)
strategy.entry("Buy", strategy.long)
// خروج از معامله فروش
if (sellCondition)
strategy.close("Buy")
// رسم سیگنالهای خرید و فروش بر روی چارت
plotshape(buyCondition, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY")
plotshape(sellCondition, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL")