
اس حکمت عملی میں برلن بینڈ ، آر ایس آئی ، ایک سے زیادہ چلتی اوسط اور ایم اے سی ڈی اشارے شامل ہیں ، جس سے ایک مکمل تجارتی نظام تشکیل دیا گیا ہے۔ سب سے پہلے ، قیمتوں میں اتار چڑھاؤ کا اندازہ لگانے کے لئے برلن کا استعمال کیا جاتا ہے ، اور قیمتوں کے سلسلے میں برلن بینڈ کے وسط میں اس کی پوزیشن کا استعمال کرتے ہوئے رجحان کا تعین کیا جاتا ہے۔ اس کے ساتھ ساتھ ، اووربائڈ اوور سیل کا اندازہ لگانے کے لئے آر ایس آئی اشارے کا استعمال کیا جاتا ہے ، اور ممکنہ رجحانات کی شناخت کے لئے آر ایس آئی کے انحراف کا استعمال کیا جاتا ہے۔ متعدد چلتی اوسط رجحانات کی نگرانی اور مزاحمت کی حمایت کرنے کے لئے استعمال کیا جاتا ہے۔ آخر کار ، ایم اے سی ڈی اشارے کا استعمال رجحانات اور ممکنہ الٹ کے فیصلے میں معاون ہے۔
اس حکمت عملی نے متعدد جہتوں سے ایک بہتر تجارتی نظام تیار کیا ہے ، جس میں رجحانات کا فیصلہ ، اوور بُو اوور سیل فیصلے ، کثیر وقتی پیمانے پر تجزیہ ، پوزیشن کنٹرول وغیرہ شامل ہیں۔ تاہم ، اس حکمت عملی کو ہنگامہ خیز حالات ، انتہائی حالات کے جواب میں بہتر بنانے کی ضرورت ہے ، اور اس میں زیادہ منظم پیرامیٹرز کی اصلاح اور خطرے کے کنٹرول کی کمی ہے۔ مستقبل میں ، اس میں مزید بہتر سگنل ، متحرک اختیارات کی بحالی ، اور انتہائی حالات کا مقابلہ کرنے کی طرف مزید بہتری لائی جاسکتی ہے۔ اس حکمت عملی کو مسلسل بیک اپ ، اصلاح اور ریئل اسٹیٹ ٹیسٹنگ کے ذریعہ ، ایک مستحکم اور پائیدار مقدار میں تجارت کی حکمت عملی بننے کا امکان ہے۔
/*backtest
start: 2023-05-21 00:00:00
end: 2024-05-26 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Bollinger Bands + RSI Strategy with MA", overlay=true)
// Bollinger Bands
length = input.int(20, title="BB Length")
mult = input.float(2.0, title="BB Mult")
basis = ta.sma(close, length)
dev = mult * ta.stdev(close, length)
upper_band = basis + dev
lower_band = basis - dev
// RSI
rsi_length = input.int(14, title="RSI Length")
rsi_oversold = input.int(30, title="RSI Oversold", minval=0, maxval=100)
rsi_overbought = input.int(70, title="RSI Overbought", minval=0, maxval=100)
rsi = ta.rsi(close, rsi_length)
// RSI Divergence
rsi_divergence_bottom = ta.crossunder(rsi, rsi_oversold)
rsi_divergence_peak = ta.crossunder(rsi_overbought, rsi)
// Moving Averages
ma34 = ta.sma(close, 34)
ma89 = ta.sma(close, 89)
ma144 = ta.sma(close, 144)
ma233 = ta.sma(close, 233)
ma377 = ta.sma(close, 377)
ma610 = ta.sma(close, 610)
// MACD Calculation
[macd_line, signal_line, _] = ta.macd(close, 12, 26, 9)
macd_histogram = macd_line - signal_line
// MACD Divergence
macd_divergence_bottom = ta.crossunder(macd_histogram, 0)
macd_divergence_peak = ta.crossover(macd_histogram, 0)
// Conditions for Buy and Sell
basis_gt_ma34 = basis > ma34
ma34_gt_ma89 = ma34 > ma89
// Entry condition
buy_condition = basis_gt_ma34 and ma34_gt_ma89
sell_condition = basis <ma34
// Calculate position size
position_size = 1.0 // 100% capital initially
// Update position size based on conditions
if (sell_condition)
position_size := 0.5 // Sell half of the position
if (not basis_gt_ma34)
position_size := 0.0 // Sell all if basis < ma34
// Entry and exit strategy
if (buy_condition)
strategy.entry("Buy", strategy.long, qty=position_size)
if (sell_condition)
strategy.close("Buy")
// Plot Bollinger Bands and Moving Averages
bb_fill_color = basis > basis[1] ? color.new(color.blue, 90) : color.new(color.blue, 10)
plot(basis, color=color.blue, title="Basis")
plot(upper_band, color=color.red, title="Upper Band")
plot(lower_band, color=color.green, title="Lower Band")
fill(plot1=plot(upper_band), plot2=plot(lower_band), color=bb_fill_color, title="BB Fill")
plot(ma34, color=color.orange, title="MA34")
plot(ma89, color=color.purple, title="MA89")
plot(ma144, color=color.gray, title="MA144")
plot(ma233, color=color.blue, title="MA233")
plot(ma377, color=color.red, title="MA377")
plot(ma610, color=color.green, title="MA610")
// Plot RSI Divergence
plotshape(series=rsi_divergence_bottom, style=shape.triangleup, location=location.abovebar, color=color.green, size=size.small)
plotshape(series=rsi_divergence_peak, style=shape.triangledown, location=location.belowbar, color=color.red, size=size.small)
// Plot MACD Histogram Divergence
plotshape(series=macd_divergence_bottom, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small)
plotshape(series=macd_divergence_peak, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small)