وسائل لوڈ ہو رہے ہیں... لوڈنگ...

RSI، MACD اور حجم پر مبنی ملٹی انڈیکیٹر موافقت پذیر ٹریڈنگ حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2024-12-13 10:19:34
ٹیگز:آر ایس آئیایم اے سی ڈیVOLبی بیای ایم اےایس ایم اےوی ڈبلیو ایم اےڈبلیو ایم اےایس ایم ایم اے

img

جائزہ

یہ حکمت عملی ایک جامع تجارتی نظام ہے جس میں رشتہ دار طاقت انڈیکس (آر ایس آئی) ، حرکت پذیر اوسط کنورجنس تغیر (ایم اے سی ڈی) ، بولنگر بینڈ (بی بی) ، اور حجم تجزیہ شامل ہے۔ کثیر جہتی تکنیکی اشارے کے ہم آہنگی کے ذریعے ، حکمت عملی مارکیٹ کے رجحانات ، اتار چڑھاؤ اور حجم کا جامع تجزیہ کرتی ہے تاکہ بہترین تجارتی مواقع کی نشاندہی کی جاسکے۔

حکمت عملی کا اصول

حکمت عملی کا بنیادی منطق مندرجہ ذیل پہلوؤں پر مبنی ہے:

  1. RSI کا استعمال کرتا ہے ((14) مارکیٹ میں زیادہ خریدنے / زیادہ فروخت کی حالت کا فیصلہ کرنے کے لئے ، RSI 30 سے کم ہونے پر زیادہ فروخت سمجھا جاتا ہے
  2. رجحان کی سمت کا تعین کرنے کے لئے MACD کا استعمال کرتا ہے ، جس میں MACD گولڈن کراس طویل سگنل کے طور پر ہوتا ہے
  3. قیمتوں کے رجحان کی صداقت کی تصدیق کرتا ہے (ڈیلٹا حجم)
  4. انٹری ٹائمنگ کو بہتر بنانے کے لئے قیمت کی اتار چڑھاؤ کا اندازہ کرنے کے لئے بولنگر بینڈ شامل کرتا ہے
  5. نظام بہترین خرید سگنل پیدا کرتا ہے جب آر ایس آئی oversold ہے، MACD سنہری کراس دکھاتا ہے، اور ڈیلٹا حجم مثبت ہے
  6. خودکار طور پر پوزیشن بند کر دیتا ہے جب MACD موت کراس دکھاتا ہے یا RSI خطرے کے کنٹرول کے لئے 60 سے زیادہ ہے

حکمت عملی کے فوائد

  1. متعدد اشارے کی کراس ویلیڈیشن سے ٹریڈنگ سگنل کی وشوسنییتا میں اضافہ ہوتا ہے
  2. حجم تجزیہ قیمت کے رجحان کی صداقت کی تصدیق کرتا ہے
  3. اس میں انکولی چلتی اوسط قسم کا انتخاب شامل ہے ، جو حکمت عملی کی لچک کو بڑھا دیتا ہے
  4. اس میں اسٹاپ نقصان اور منافع لینے کی ترتیبات سمیت جامع رسک کنٹرول میکانزم شامل ہیں۔
  5. حکمت عملی کے پیرامیٹرز کو مختلف مارکیٹ کے حالات کے لئے بہتر بنایا جاسکتا ہے

حکمت عملی کے خطرات

  1. متعدد اشارے کا امتزاج سگنل لیگ کا باعث بن سکتا ہے
  2. مختلف مارکیٹوں میں غلط سگنل ہوسکتے ہیں
  3. پیرامیٹر کی اصلاح کے نتیجے میں overfitting ہو سکتا ہے
  4. ہائی فریکوئینسی ٹریڈنگ سے ٹرانزیکشن کی اہم لاگت آسکتی ہے
  5. مارکیٹ میں اتار چڑھاؤ کے نتیجے میں کافی کمی واقع ہوسکتی ہے

حکمت عملی کی اصلاح کی ہدایات

  1. مارکیٹ کے حالات کی بنیاد پر اشارے کے پیرامیٹرز کو متحرک طور پر ایڈجسٹ کرنے کے لئے موافقت پذیر پیرامیٹرز کے میکانزم متعارف کرانے
  2. مختلف مارکیٹوں میں جھوٹے سگنل کو کم کرنے کے لئے رجحان کی طاقت فلٹرز شامل کریں
  3. سرمایہ کاری کی کارکردگی کو بہتر بنانے کے لئے اسٹاپ نقصان اور منافع لینے کے طریقہ کار کو بہتر بنائیں
  4. اعلی اتار چڑھاؤ کے ماحول میں پوزیشنوں کو ایڈجسٹ کرنے کے لئے اتار چڑھاؤ فلٹرز کو شامل کریں
  5. متحرک پوزیشن کنٹرول کے لئے ذہین فنڈ مینجمنٹ سسٹم تیار کریں

خلاصہ

یہ ایک جامع تجارتی حکمت عملی ہے جو متعدد تکنیکی اشارے کو مربوط کرتی ہے ، جس میں آر ایس آئی ، ایم اے سی ڈی ، اور حجم سمیت کثیر جہتی تجزیہ کے ذریعے مارکیٹ کے مواقع حاصل ہوتے ہیں۔ یہ حکمت عملی جامع رسک کنٹرول میکانزم کے ساتھ ساتھ مضبوط موافقت اور توسیع پذیری کا مظاہرہ کرتی ہے۔ مسلسل اصلاح اور بہتری کے ذریعے ، اس حکمت عملی میں مختلف مارکیٹ کے ماحول میں مستحکم کارکردگی برقرار رکھنے کی صلاحیت ہے۔


/*backtest
start: 2024-11-12 00:00:00
end: 2024-12-11 08:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Liraz sh Strategy - RSI MACD Strategy with Bullish Engulfing and Net Volume", overlay=true, currency=currency.NONE, initial_capital=100000, commission_type=strategy.commission.percent, commission_value=0.1, slippage=3)

// Input parameters
rsiLengthInput = input.int(14, minval=1, title="RSI Length", group="RSI Settings")
rsiSourceInput = input.source(close, "RSI Source", group="RSI Settings")
maTypeInput = input.string("SMA", title="MA Type", options=["SMA", "Bollinger Bands", "EMA", "SMMA (RMA)", "WMA", "VWMA"], group="MA Settings")
maLengthInput = input.int(14, title="MA Length", group="MA Settings")
bbMultInput = input.float(2.0, minval=0.001, maxval=50, title="BB StdDev", group="MA Settings")

fastLength = input.int(12, minval=1, title="MACD Fast Length")
slowLength = input.int(26, minval=1, title="MACD Slow Length")
signalLength = input.int(9, minval=1, title="MACD Signal Length")

startDate = input(timestamp("2018-01-01"), title="Start Date")
endDate = input(timestamp("2069-12-31"), title="End Date")

// Custom Up and Down Volume Calculation
var float upVolume = 0.0
var float downVolume = 0.0

if close > open
    upVolume += volume
else if close < open
    downVolume += volume

delta = upVolume - downVolume

plot(upVolume, "Up Volume", style=plot.style_columns, color=color.new(color.green, 60))
plot(downVolume, "Down Volume", style=plot.style_columns, color=color.new(color.red, 60))
plotchar(delta, "Delta", "—", location.absolute, color=delta > 0 ? color.green : color.red)

// MA function
ma(source, length, type) =>
    switch type
        "SMA" => ta.sma(source, length)
        "Bollinger Bands" => ta.sma(source, length)
        "EMA" => ta.ema(source, length)
        "SMMA (RMA)" => ta.rma(source, length)
        "WMA" => ta.wma(source, length)
        "VWMA" => ta.vwma(source, length)

// RSI calculation
up = ta.rma(math.max(ta.change(rsiSourceInput), 0), rsiLengthInput)
down = ta.rma(-math.min(ta.change(rsiSourceInput), 0), rsiLengthInput)
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))
rsiMA = ma(rsi, maLengthInput, maTypeInput)
isBB = maTypeInput == "Bollinger Bands"

// MACD calculation
fastMA = ta.ema(close, fastLength)
slowMA = ta.ema(close, slowLength)
macd = fastMA - slowMA
signalLine = ta.sma(macd, signalLength)
hist = macd - signalLine

// Bullish Engulfing Pattern Detection
bullishEngulfingSignal = open[1] > close[1] and close > open and close >= open[1] and close[1] >= open and (close - open) > (open[1] - close[1])
barcolor(bullishEngulfingSignal ? color.yellow : na)

// Plotting RSI and MACD
plot(rsi, "RSI", color=#7E57C2)
plot(rsiMA, "RSI-based MA", color=color.yellow)
hline(70, "RSI Upper Band", color=#787B86)
hline(50, "RSI Middle Band", color=color.new(#787B86, 50))
hline(30, "RSI Lower Band", color=#787B86)

bbUpperBand = plot(isBB ? rsiMA + ta.stdev(rsi, maLengthInput) * bbMultInput : na, title="Upper Bollinger Band", color=color.green)
bbLowerBand = plot(isBB ? rsiMA - ta.stdev(rsi, maLengthInput) * bbMultInput : na, title="Lower Bollinger Band", color=color.green)

plot(macd, title="MACD", color=color.blue)
plot(signalLine, title="Signal Line", color=color.orange)
plot(hist, title="Histogram", style=plot.style_histogram, color=color.gray)

// Best time to buy condition
bestBuyCondition = rsi < 30 and ta.crossover(macd, signalLine) and delta > 0

// Plotting the best buy signal line
var line bestBuyLine = na
if (bestBuyCondition )
    bestBuyLine := line.new(bar_index[1], close[1], bar_index[0], close[0], color=color.white)

// Strategy logic
longCondition = (ta.crossover(macd, signalLine) or bullishEngulfingSignal) and rsi < 70 and delta > 0
if (longCondition )
    strategy.entry("Long", strategy.long)

// Reflexive exit condition: Exit if MACD crosses below its signal line or if RSI rises above 60
exitCondition = ta.crossunder(macd, signalLine) or (rsi > 60 and strategy.position_size > 0)
if (exitCondition )
    strategy.close("Long")

متعلقہ

مزید